编程初学者入门之我见

如今大学计算机教育为人们诟病所不少,自己在高校也有若干年份了,所谓一流高校,二流高校也都泡过,带了不少课程,也知道不少学生总觉得在学校里面学不到什么东西,总想参加IT培训之类。自己也带过不少有潜质的学生,在一些交流中,有不少学生参加了不止一次的培训,有一些人觉得有收获,也有一些觉得自己学的只是一些皮毛。想掌握扎实技能的学生总觉得在学校里面差一些什么,最近有外系的同学找来想和我交流如何学习。自己在学校里面见了不少想学好技术的同学,回顾自己的学习过程总觉得可以给大家有些帮助,特此记录一二。
        在我学习的过程中,我强调过操作系统,数据库,数据结构,编译原理的重要性,实事求是的说,我们学校虽然和一流高校有比较大的差距,但是我们的专业课的讲授知识点并不亏欠学生。在我求学过的高校中,我们的本科课程的艰难度并没有降低对学生的要求,为什么我们的学生总觉得自己没有学到东西呢? 问题出在哪里呢?
        个人认为,关键的差异不在于知识点,而在于“环境”上。这里的环境不是所谓的学习氛围啦,学生素质之类的看不见摸不着的东西。工程上的东西,只要有人愿意教,就能学得会。我们的学生最大的问题在于没有人带着入门!技术学习在西方尤其是欧美、日本这些发达国家,从来都是严格的师徒性质。没有师傅领进门,外人自学是很困难的。打一个比方,都是C语言,我们的教学和名校本科的一年级教学几乎没有差别,但是在C语言的后续教学中我们就被它们越拉越大。讲语法,这是C语言的教学。如何用C语言写程序却没有人教学生!我们学生参加工作,不是要求学生只知道指针,函数,而是要求学生用指针,函数编出有价值的程序来。这种程序的编写就必须再有人教学生在特定的环境下使用。比如,我们要在windows下写一个文件管理器,我们就必须教会学生,C语言是如何与windows操作系统交互实现这个功能的。为了达到这种教学目的,我们的教师不是仅仅知道一个C语言语法就可以了,我们还得知道windows操作系统,还的知道C语言如何调用windows操作系统提供给程序员的接口,这些东西,如果你让一个初学编程的本科生自己去摸索是不合适的。他们在这个起步阶段是要人引导的。
          而这个衔接工作在大学里面是没有人愿意做的,这种企业要的技术就有培训机构来填补了,这就是为什么学生说在培训机构学到了东西,而在学校里面没有学到东西的根本原因之一。然而在企业中,真正的技术高手出来培训新手是很困难,因为高手一般不愿意讲一些基础的问题,参与培训的学生基本属于小白水平,所以技术层面不在一个水平上是很难沟通的。打个比方,你是国家队的乒乓水平,你是愿意和邓亚萍打球呢,还是和我这个啥都不懂的玩呢?因此,往往培训机构的讲师水平参差不齐,有一部分人在工作中积累的经验能够完成任务,这些经验被学生掌握以后学生就能很快学会,一旦学生稍稍有些提升以后,就会感觉吃不饱,这个时候就容易造成学生学了个半吊子水平,如果这个时候讲师能够负责任的将学生的学习推进下去,那么学生找到一份正经工作难度不大,否则学生很难找到自己满意的工作。因此,如果学生要找一份工作,在初学阶段最好能找到一个比较靠谱的、愿意把你教会的师傅可能对你的成长能减少弯路。

猜你喜欢

转载自dingst.iteye.com/blog/1823050