我收到了不少新手的来信,他们都希望能成长为一名真正的程序员。我绝对不是第一个谈论这个话题的人,所以,我不知道应该做哪方面的补充。不管怎样,下面的是一些一直记在我心头的、有必要读一下的建议:
-
找其他开发人员合作开发。我们正处在科技历史上第一个绝好的时代,你几乎不用在意在哪工作、为谁工作。只要你有一个还过得去的网络,你就可以和另外一个在世界任何角落里的人一起来完成某段程序。我知道,越来越多的有经验的开发人员开始把他们的一部分时间投入到这种知识共享里。我的朋友Evan Light特地留出了时间来开发一个帮助Ruby爱好者合作行动的网站。我从事这样的事情也有一段时间了。你想开发一些FLOSS程序吗?发邮件给我,我们会帮你准备些东西。
-
阅读经典著作:《代码大全(第二版)》, 《程序员修炼之道》, 《程序设计实践》, 《设计模式》等。
-
阅读WikiWiki (有时也被称作WardsWiki)。这一条怎么强调也不为过。经常我会感觉到所有我学到的真正关于编程的知识都是在浏览这些网站的过程中慢慢的学到的。
-
学习别人的代码。 GitHub万岁!如果你会一点Ruby,想从别人整理好的现成经验入手,你可以读一下《Best of Ruby Quiz》。
- 参与开发者论坛。如果没有这样的网站,创建一个。讨论问题。我不在意你认为自己是一个多么菜的菜鸟。没有任何一种形式能比通过讨论一个问题来学习这个问题更有效的方法了。
- 写博客。不要在意是否是原创。互联网上很多非常有用的博客都是广泛的搜集程序员的经验和错误,以及如何克服这些问题的博客。反省是学习过程中最重要的一件事情,写博客能帮助你反省。会出乎你的意料,你不久就会收到你的读者的反馈。
- 我相信你之前听说过这一条:参与开源项目,修改其中的bug或捐献代码。
-
丢硬币。是头像就选择Vim,否则选择Emacs。学习使用这些编辑器。应该让这两种编辑器伴随你余下的编程生涯。强大灵活的编辑器会让好程序员更好。
-
多学习几种编程语言。但起初应该先学一种语言。你应学习一种重要的语言,它能让你对编程语言有个大致的认识,让你第一天就爱上编程,你需要花大量的时间去学习这种语言中的各种知识,否则你漏掉知识点或不久就会忘记。一旦你掌握了这种语言,你需要学习新的语言来验证在第一种语言中学到的知识。尽量选择风格迥异的语言。我曾看过Seven Languages in Seven Weeks这本书,它让我认识了各种各样的编程模式,很好的书。
- 订阅跟你使用的语言和平台相关的邮件新闻。人们有时会忘了,在各种博客,Hacker News,以及Twitter里,还有一个精彩的充满讨论的世界。邮件列表是一个很通用、很有用的来比较各种讨论观点的工具。
-
StackOverflow是你的朋友。
- 不要花太多的时间去研究所谓的“最好的“工具。我曾经愚蠢的花上数天或数周去为某个项目找出一种”最好“的框架来提高开发效率。不要落入这种陷阱。当你还是一个不太熟练的程序员时,选一种大家都在用的语言和框架。重要的是当你遇到瓶颈是你知道如何处理。之后你才可以去寻找一种完美的…
- 寻找实习机会。
-
以及最基本的:练习,练习,练习。在班上练,在家里练。锻炼编程基本功。编程跟其它技术一样:最终,一切归结于练习。
分享到:
相关推荐
老程序员给年轻人的建议和忠告 老程序员的共识 给程序员的20条建议
给年轻程序员的建议偶尔的,我会被人问道:如何成为一名优秀的程序员,更或者,如何成为一名程序员。每次人们问起,我都力图给出不同的答案。因此,我的答案是各种各样的。下面就是我认为的成为一名优秀的程序员需要...
标题“给程序员的话”强调了程序员应具备的基本素质和专业素养,旨在引导程序员的成长和发展。描述中的内容提到了许多中国年轻程序员在技术上有出色表现,但缺乏对系统和程序整体理解的能力,这提醒我们,技术技能...
给程序员提的9点建议.docx给程序员提的9点建议.docx给程序员提的9点建议.docx给程序员提的9点建议.docx给程序员提的9点建议.docx给程序员提的9点建议.docx给程序员提的9点建议.docx
”这句话生动地表达了程序员面对浩瀚的技术海洋时的心态——即使已经取得了一定成就,但仍感觉自己还有很多不足之处,需要不断学习进步。 七、技术分享:随着技术能力的提高和个人影响力的扩大,程序员开始尝试将...
《程序员入职锦囊妙计》是一本专门为年轻程序员量身打造的职场指南书籍。书中主要讲述了刚刚走出校园的年轻程序员在面对新工作岗位和人生角色时可能遇到的种种迷茫和挑战,并通过真实的案例分析,讲述了快速适应职场...
程序员必读的几本书.zip欢迎下载
程序员简历程序员简历.pdf
标题中的“程序员专用编程输入法”指的是专门为程序员设计的特殊输入法工具,旨在提升编码效率。这类输入法通常具有以下特点: 1. **快捷代码输入**:程序员输入法能够通过快捷键、组合键或者自定义短语来快速输入...
java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流...
在IT行业中,程序员不仅以他们的编程技能闻名,他们的文化与生活方式也形成了独特的群体特色。"程序员特色服饰"这个主题,正是这种文化的一种体现。这些服饰不仅仅是穿着,它们更是一种表达自我、彰显职业特点的方式...
程序员项目交接文档概要 IT 项目交接文档概要是程序员在项目交接过程中的重要文件,它对项目的开发、测试和维护起着至关重要的作用。本文档概要将对程序员项目交接文档的主要内容进行概要介绍。 人事模块是程序员...
展望未来,总结过去10年的程序员生涯,给程序员小弟弟小妹妹们的一些总结性忠告 走过的路,回忆起来是那么曲折,把自己的一些心得体会分享给程序员兄弟姐妹们,虽然时代在变化,但是很可能你也会走我已经做过的10年...
2000-2010历年程序员考试真题,对软考程序员的一些试题总结,包含答案;程序员考试上午科目和下午科目的考试形式与考核内容已经趋于稳定,考生应紧扣考试大纲和指南,有针对性地进行学习。
这个“程序员给女朋友做的精美3D相册”项目是一个典型的HTML5技术应用案例,展示了Web开发中的创新和个性化设计。让我们深入探讨一下其中涉及到的技术和知识点。 首先,HTML5是现代网页开发的基础,它提供了更丰富...
工作日志的格式可以根据个人或团队的需求进行调整,但一般来说,工作日志应包括以下几个部分: * 日期:记录工作的日期 * 任务:记录当天的工作任务 * 进度:记录工作的进度 * 问题:记录工作中的问题 * 解决方案:...