致年轻开发人员的一封信.docx_第1页
致年轻开发人员的一封信.docx_第2页
致年轻开发人员的一封信.docx_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

致年轻开发人员的一封信摘要:Avdi Grimm将把自己认为重要的作为提升编程能力的几点和大家一起分享,希望对大家有所启发。我收到了很多年轻开发人员写给我的邮件,希望可以提升自己的编程能力。我肯定不是第一个讨论这个话题的人,所以我不确定还可以说出什么新意。然而,这里我认为还是非常值得列出我认为很重要的几点吧。 要跟其他开发者一起工作。我们正处在科技史上的黄金时期,这是第一次,身处何地,雇主是谁变得不那么重要。只要你的网络带宽足够,你就可以与身处地球任何位置的另一位开发者搭档共同编写代码。越来越多我认识的资深开发者都在贡献自己的时间分享这样的知识。我朋友Evan Light有开放办公时间,而且还在开发一个网站帮助 Rubyists 搭档。我也这样做了好一阵了。想要研究FLOSS代码?发邮件给我,我们会把事情安排好。编注:Rubyist 是指那些对Ruby的关心程度超过常人的人。编注:开放办公室时间是美国大学的传统,作法是学校每周开放办公室数小时,学生不需事先预约就能和老师面谈。编注:Free/Libre/Open Source Software 免费/自由/开源软件。 阅读经典的书籍。如代码大全、程序员修炼之道、程序设计实践、设计模式等。 要读 WikiWiki (有时又叫做 WardsWiki)。这一点非常重要。有时我觉得,在我的学习遇到瓶颈时,我就是通过浏览WikiWiki 而得以学到所有我真正需要的东西的。 要读一读别人编的代码。为GitHub 喝彩!如果你想以编撰得更好的作品为开始而你又对 Ruby、有所了解,那么就试一试解决Ruby Quiz上的问题。(关于这个话题,Alan Skorkin 写过一篇很全面的文章:阅读优秀代码是提高开发人员修为的一种捷径。) 加入本地用户组。如果没有这样的群,那就创建一个,然后开始交流。我不在意你是一个多么差劲的菜鸟。要想使你全面了解一个问题,再没有比这更好的方法了。 开一个博客。不要担心自己会成为异类。一些最有用的博客其实主要记录了一个程序员的经验和错误以及他们是如何克服困难。反思是学习的最重要的一部分,而写作则会帮助你反思。并且,在你思考之前,你又会从其他程序员那得到反馈。 我相信你已经听说过这一点了:为一个开源项目提交补丁。 用掷硬币的方式来作决定。正面朝上就选择 Vim,背面朝上就选Emacs。开始学习容易上手的编辑器。这两种中的任何一种都会在你剩余的编程生涯中一直与你同在。强大、灵活的工具能使优秀程序员更加优秀。(编注:看来国外很多程序员都在用Vim或Emacs,Akash Manohar 在写给即将入行的程序员的一封信这篇文章中,也是推荐这些工具。) 学习多种编程语言。但首先你得学好一种编程语言。你需要一种可以使你得到灵感并且快速掌握的在一天内迅速地写出第一个版本的编程语言,从而不用花费大量的时间去学习你会很容易忘记的语言细节。然而,一旦你已经掌握了这门语言,你就要去学习新的语言,来挑战所有你从之前所学习的语言中学到的假设。要选择风格完全不同的编程语言。我所看过的一本书七周掌握七门语言 中就对编程思维模型进行了全面、广泛的概括。 为你所使用的编程语言和平台建立邮件列表。人们有时会忘记在博客、Hacker News和推特以外还有很多讨论是非常有益的。跟其它场合比起来邮件列表通常是文明而有用的工具。 StackOverflow 是你的良师益友。 不要花费太多的时间去为某物找寻最好的工具。我过去常常会花费好几天或几个星期,去试着为我即将开始的项目寻找最好的框架,以致我的工作进度停滞不前。不要掉进这个陷阱里。当你已经是个相对有经验的开发人员时,选择那些有很多人在用的语言和框架。在你遇到困难时,知道如何继续下去比选择完美的工具要重

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论