程序员自白:在学习编程中犯的两个最大错误

2012 年 9 月 12 日6480

Suneel Chakravorty


  Suneel Chakravorty


  一年前,我刚从大学毕业并且决定踏入社会。我有很多初始的想法并想将它们实现,但我不懂编程。


  听从 Yipit 联合创始人Vin Vacant 的建议之后,我开始自学编程。


  现在我终于学了足够多的知识来自己实现产品原型,一路走来,非常坎坷。如果你在跟我同样的路上,我希望你能避免犯跟我同样的错误。


  错误0:我花了太多时间学习那些我不是特别需要的东西上


  有如此多的技术,又有那么多的相互矛盾的观点以至于你很难判断什么是重要的,我根本就不知道如何开始。在Hacker News、 Quora、 Stack OverFlow上看了一大堆最流行的文章之后,我简直要疯了。下面是大杂烩清单:


  HTML、CSS、 AJAX、 PHP、 Javascript、 Heroku、 Celery、 SQL、jQuery、 Django、POSTGRES、 nodeJS、 BackboneJS、Ruby、 Rails、 MongoDB、 Python


  在这些技术中,我不知道哪些我需要学哪些不需要学,所以我试着把它们全部学习一遍。


  我当时本应该做的:我本应该缩小这个清单,只挑出我构建原型所需要的技术。


  最终,我搞清楚了这些技术就是干什么的,然后把这个清单缩减为如下:


  0. HTML:构造一个网页的内容(如链接,标题等元素的选择)


  1. CSS: 内容的样式(如鼠标移至链接上时改变它的颜色)


  2. Javascript:使内容变成动态的(比如用户点击链接的时候弹出一个菜单)


  3. jQuery: 一个包含容易使用插件的javascript库(如幻灯片效果显示图片)


  4. Python: 处理数据(如从数据库中读取用户购买记录或推荐用户可能喜欢的产品)


  5. Django: 一个用Python编写的web框架可以将以上的技术串联起来。并且提供了很多内建的、非常必要的功能。(如用户登录,以及用python容易地任何数据库)用框架能让你的工作大大简化。


  错误1:我没有立马开始写代码


  我花了太多时间阅读编程书。我不确定我读的那些东西是对我的项目有直接帮助的。更糟糕的是,我没有将书中的东西应用起来,最后发现没什么效果。


  我本应该做的:在一开始我就应该通过一些小的项目来进行学习。我之后发现了一个非常有效的学习方法:


  0. 在看了一些教程(比如 Yipit 的开发人员 David Sinsky 分享的文章)之后积极地编写例程。


  1. 挑选一些简单的项目,然后编码实现它。例如一个简单的博客,或者一个投票的应用。


  2. 多次重复第二步。


  3. 构建你的初始项目原型。


  这样做有很多好处,你可以很快地克服关于编程的任何恐惧。你将会看到你的劳动成果。最重要的是,你能够很快培养构建产品所需的技术。


  英文原文:Suneel Chakravorty


  译文原文:http://blog.jobbole.com/26552/

0 0