开发心得分享:10年编程无师自通

文章作者 100test 发表时间 2007:09:06 13:31:57
来源 100Test.Com百考试题网


进任何一家书店,你会看见《teach yourself java in 7 days》(7天java无师自通)的旁边是一长排看不到尽头的类似书籍,它们要教会你visual basic、windows、internet等等,而只需要几天甚至几小时。我在amazon.com上进行了如下搜索:
    pubdate: after 1992 and title: days and (title: learn or title: teach yourself)
    (出版日期:1992年后 and 书名:天 and (书名:学会 or 书名:无师自通))
  我一共得到了248个搜索结果。前面的78个是计算机书籍(第79个是《learn bengali in 30 days》,30天学会孟加拉语)。我把关键词“days”换成“hours”,得到了非常相似的结果:这次有253本书,头77本是计算机书籍,第78本是《teach yourself grammar and style in 24 hours》(24小时学会文法和文体)。头200本书中,有96%是计算机书籍。
  结论是,要么是人们非常急于学会计算机,要么就是不知道为什么计算机惊人地简单,比任何东西都容易学会。没有一本书是要在几天里教会人们欣赏贝多芬或者量子物理学,甚至怎样给狗打扮。
  让我们来分析一下像《learn pascal in three days》(3天学会pascal)这样的题目到底是什么意思:
  ·学会:在3天时间里,你不够时间写一些有意义的程序,并从它们的失败与成功中学习。你不够时间跟一些有经验的程序员一起工作,你不会知道在那样的环境中是什么滋味。简而言之,没有足够的时间让你学到很多东西。所以这些书谈论的只是表面上的精通,而非深入的理解。如alexander pope(译注:英国诗人、作家,1688-1744)所言,一知半解是危险的(a little learning is a dangerous thing)。
  ·pascal:在3天时间里你可以学会pascal的语法(如果你已经会一门类似的语言),但你无法学到多少如何运用这些语法。简而言之,如果你是,比如说一个basic程序员,你可以学会用pascal语法写出basic风格的程序,但你学不到pascal真正的优点(和缺点)。那关键在哪里?alan perlis(译注:acm第一任主席,图灵奖得主,1922-1990)曾经说过:“如果一门语言不能影响你对编程的想法,那它就不值得去学”。另一种观点是,有时候你不得不学一点pascal(更可能是visual basic和javascript之类)的皮毛,因为你需要接触现有的工具,用来完成特定的任务。但此时你不是在学习如何编程,你是在学习如何完成任务。
  ·3天:不幸的是,这是不够的,正如下一节所言。

10年编程无师自通
  一些研究者(hayes、bloom)的研究表明,在许多领域,都需要大约10 年时间才能培养出专业技能,包括国际象棋、作曲、绘画、钢琴、游泳、网球,以及神经心理学和拓扑学的研究。似乎并不存在真正的捷径:即使是莫扎特,他4 岁就显露出音乐天才,在他写出世界级的音乐之前仍然用了超过13年时间。再看另一种音乐类型的代表--披头士,他们似乎是在1964年的ed sullivan节目中突然冒头的。但其实他们从1957年就开始表演了,即使他们很早就显示出了巨大的吸引力,他们第一次真正的成功之作《sgt. peppers》也要到1967年才发行。samuel johnson(译注:英国诗人)认为10 年还是不够的:“任何领域的卓越成就都只能通过一生的努力来获得;稍低一点的代价也换不来。”(excellence in any department can be attained only by the labor of a lifetime. it is not to be purchased at a lesser price.) 乔叟(译注:chaucer,英国诗人,1340-1400)也抱怨说:“生命如此短暂,掌握技艺却要如此长久。”(the lyf so short, the craft so long to lerne.)
下面是我在编程这个行当里获得成功的处方:
  ·对编程感兴趣,因为乐趣而去编程。确定始终都能保持足够的乐趣,以致你能够将10年时间投入其中。
  ·跟其他程序员交谈;阅读其他程序。这比任何书籍或训练课程都更重要。

相关文章


全国计算机等级考试四级经典词汇荟萃(三)
全国计算机等级考试四级经典词汇荟萃(二)
全国计算机等级考试四级经典词汇荟萃(一)
动动注册表享受W 新风格界面
开发心得分享:10年编程无师自通
信息处理技术员考试经验谈下午题精讲
报考指南:计算机等级考试说明书要点
必须掌握8个基本DOS命令
初级资格辅导:电子商务流程
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛