(from http://yixincao.spaces.live.com)
又来培训任务了,而且这次是其他部门找我去帮忙,不是自己的兄弟,比较紧张。
上次培训第一次得到正面评价让我惶恐了很久,因为不知道原因。直到后来其他同事做了另外一个培训,完全失败的一个培训,我才猜到一点端倪。他拿了别人的讲义,可能改了几个字,但框架结构和主题内容都是别人的,就跑来讲,讲的人自己稀里糊涂,听的人云里雾里。
首先对培训来讲有两个元素,trainer和trainee,或者presenter和audience,听课者要准备自己的功课和复习请教, 这个比较简单,不讨论。对讲授者,编讲义前要搞清两个重要的东西,听课的人和自己:听课的人的水平如何;想知道什么?自己会什么,不会什么?只有做到这 个,才有可能成功。
知道听课的人水平很重要,给高手讲低级内容,或者解释的过于详细只会被他们鄙视(我就经常鄙视这样的授课者),给新手讲得不够细,新手一般不敢 问,相当于没讲。当然大部分时候是参差不齐,从newbie到senior都有,这时就要考虑取舍,是分成几次讲,或者照顾大多数,或者照顾最低者。
再细的课题都要考虑听众的需求,人家不关心的哪怕你讲得唾沫横飞,他也听不下去,譬如让罗素来讲哲学,我们公司就不会有人去听,虽然找不到人比 他讲得更好了。就算Ant这个小得不能再小的工具了,你也要考虑听众只限于用它编java程序(0.1%的功能),还是像我们现在用的那样什么都来,甚至 要不要在它上面写扩展。
有人说讲课不是要请大牛吗,大牛自然是什么都会的。理想情况自然是这样,但大牛不是满大街都有的,而且大牛一般都不喜欢讲课,于是很多时候就必 须小牛中牛上场,或者说best possible individual. 小牛中牛在成为大牛之前自然有薄弱环节,这时千万不能充大牛,要么在根据audience的需求,培训前抱佛脚,要么干脆坦白的说这方面我也不怎么懂,大 概提一下,大家课后一起讨论。我上次培训被问到的第一个问题就是这么回答的,“hostname和nodename的区别”,我回去man了一下才告诉大 家结果并没有人因此鄙视我。
刚才提到那个失败的培训就犯了所有的错误,拿别人的现成讲义来,省了很多功夫,但没考虑到讲义东西自己懂多少,讲课时自然进行不下去,磕磕绊 绊,恨不得把写讲义的人找来。没考虑听众水平,对基本没有数据库理论基础,甚至没怎么用过oracle的人上来就讲oracle内存结构,自然2分钟之后 人就走了一半。再就是听众的需求,大家感兴趣的是使用,从开发和数据维护角度的使用,而不是dba那一套活,因此讲这种纯理论的东西没人听下去是必然的。 不是说讲义不能借,大部分老师都不出书的,用的别人的教材,但要整理出自己的教案,而且要有针对性。