内容提要
作者向新手程序员提出十三条建议:不要盲信建议,因为作者多靠写作而非编程成名;对所谓“客观真理”保持怀疑,感兴趣就去实践;读《Debugging》学习调试;警惕沉迷某种“正确方法”,要理解最佳实践背后的恐怖故事与路径依赖;多散步;深入工具细节;跨部门交流;早期尝试多种编程方向;技术传播快且易失真,对新潮技术保持保守;接受无法预测未来,按价值观尽力而为。
延伸解读
建议的可信度:先看作者背景
作者开篇就提醒,许多给新手的建议来自擅长写作而非编程的人,他自己也是如此。这并非全盘否定,而是建议读者对“客观真理”保持怀疑,因为软件领域少有经过科学验证的结论。读者应把建议当作参考,结合自身情况判断,而不是盲目照搬。
警惕“正确方法”的吸引力
作者描述了一种常见现象:发现某种编程“正确方法”后,容易认为所有人都该采用。他建议不必抗拒这种着迷,但要意识到自己正在被吸引,避免成为单一方法的代言人。随着经验增长,你会遇到更多“正确方法”,并学会根据具体问题灵活选用。
理解最佳实践背后的故事
每个最佳实践背后往往有一个“恐怖故事”,而且很多惯例是路径依赖的产物,源于历史和文化因素。如果不理解某个实践,可以试着追溯它的起源,这能帮你判断它是否适用于当前场景。如果发现它与自己无关,就可以放心尝试其他做法。
技术传播快, adoption 需谨慎
软件领域信息传播障碍低,一个只有少数用户的项目也可能被广泛知晓,让人误以为它很流行。作者建议保持保守:如果兴奋,可以成为早期采用者;否则等几年,看看技术是否真有实用价值。这能帮你避免被炒作误导,把精力放在更可靠的学习上。
Q&A
新手程序员应该如何看待网上那些给程序员的建议?
不要盲信。很多建议者(包括本文作者)出名是因为写作而非编程水平高。你需要仔细思考建议是否对你有帮助,对所谓“客观真理”保持怀疑,因为软件领域很少有经过科学验证的内容。如果对某个观点感兴趣,不妨亲自实践一下。
为什么说每个最佳实践背后都有一个恐怖故事?
这是 Julia Evans 的说法。如果你不理解某个最佳实践,试着找出激发它的那个恐怖故事,这能让你更深入理解它,也可能发现它和你无关,从而放心尝试其他做法。很多最佳实践还是路径依赖的,由历史和文化因素造成,可能为了解决现在已经不重要的问题。
新手程序员应该读哪本关于调试的书?
推荐《Debugging: The 9 Rules》。这本书读起来很轻松,教授了很重要的调试技能,而其他初学者编程书籍几乎没怎么涉及。可以从图书馆借或让公司买一份。
为什么软件领域的新技术传播快但可能不实用?
软件领域信息传播速度极快,因为互联网、开源项目、会议等分享想法的障碍低。即使只有一个人使用某个项目,也很容易让很多人了解到它。所以你听说的许多技术用户基础很小,可能永远不会广泛流行,但传播方式让你感觉它们很流行。因此保持保守态度是明智的:可以成为早期采用者,否则等几年看看是否有实用价值。
新手程序员如何通过日常习惯提升自己?
多散步。花 5-10 分钟深入了解你使用的每个工具的深层次功能(如编程语言、git、JIRA)。尝试和公司其他部门的人交流,比如客户支持、业务领域、销售等,向他们学习。在职业生涯早期尝试几种不同类型的编程(如前端、后端、运维、数据库),提高找到真正喜欢的工作类型的机会。
对某种“正确方法”(如测试驱动开发)着迷时该怎么办?
意识到自己正在被这种方法吸引,尽量不要成为“一切皆正确方法”的代言人。随着时间的推移,你会发现无论采用哪种“正确方法”,编程总会让人感到挫败和混乱,而且你也可以不按照那种方法依然开发出优秀软件。你会逐渐了解其他“正确方法”,并学会根据具体问题灵活运用。