《高效能程序员的修炼》一磨刀不误砍柴工

本文通过一个寓言故事阐述了作为程序员不断学习和自我提升的重要性。文章建议程序员们应该在埋头写代码的同时,留出时间进行讨论、反思和学习,以此来提升自己的技能。文中还提到了一些具体的资源,比如HackerNews和programmingreddit,帮助程序员们找到有价值的信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本节书摘来异步社区《高效能程序员的修炼》一书中的第2章,作者: 【美】Jeff Atwood 译者: 陆其明 , 张健 责编: 陈冀康, 更多章节内容可以访问云栖社区“异步社区”公众号查看。

磨刀不误砍柴工

高效能程序员的修炼
作为一名软件开发人员,你该如何磨快你的锯子?


7

“磨锯子”实际上是一个代名词,泛指一切编程以外的活动(不必编写代码),而这些活动(从理论上来说)能使你成为一名更出色的程序员。这个词源自于Covey的一本书:《高效能人士的7个习惯》(《The 7 Habits of Highly Effective People》)。1

有个人在山间漫步,偶遇一位伐木工。他便停下来观察这位伐木工,看他热火朝天地锯一棵很大的树。他发现这位伐木工干得大汗淋漓,不停地锯来锯去,但是没有丝毫进展。这个过路人注意到伐木工所使用的锯子已经和黄油刀一样钝了。于是,他就对伐木工说:“不好意思,伐木工先生,我看着你已经很使劲地在锯那棵树了,但为什么进展不大呀?”伐木工回答道:“是呀……我也知道。不过,看起来这棵树不好对付啊!”此时,汗正从他的眉毛间滴落下来。过路人于是提醒道:“伐木工先生,这不是树的问题,是你的锯子太钝了。这么钝的锯子什么东西也锯不断的!”“我知道。”伐木工回答,“但是,我连锯树都忙不过来,哪有时间磨锯子啊!”

大家都知道,如果想要在某方面有所提高,最好的办法就是勤加练习。但是,如果你只顾着埋头写代码,连讨论、反思或者学习的时间都没有,将得不到真正的进步。你必须在磨炼工艺与思考如何提高工艺之间找到一个适当的平衡点。

我们应该鼓励开发团队里的每个成员都先去磨快他们的锯子。正所谓磨刀不误砍柴工。在这方面,Scott Hanselman有一些很不错的建议。其实还有个更简单的方法,就是你此刻正在做的事情:阅读编程相关的博客或书籍。如果你有一个开放的心态,你可以用这种方法来磨快你的锯子,正如Reginald Braithwaite所述:

我们通常是这样做的:每当读起一篇博文,我们会把我们认同的内容一点一点读下去,而只要有一个论点不符合我们自己的世界观,我们就会很较真。如果整篇文章的主题都跟我们的成见相左,我们就会大骂作者是个白痴。老实说,如果让我们去做销售,结果会一塌糊涂,因为我们一碰到不认同我们的人就会匆匆放弃。

我建议我们要向销售人员学习。当我们在读一篇帖子,或者一本书,或者学习一门新的语言时,我们应该假定它的某些部分(甚至绝大部分)并不新颖。让我们假设我们肯定会讨厌它的某些部分。与此同时,我们也要从自身利益出发去考虑:如果我们能从中找到哪怕只有一点对我们有用的东西(它能让我们变成更好的程序员),我们就已经赚了。

这就是我们对一篇博文应有的期待。明白这一点很重要!如果一篇帖子中能有一样有价值的东西,我们就赚大了。其实我们不该这么贪心—只要我们在读了100篇帖子后能学到一样有价值的新东西,我们就已经赚大了。

如果你正在寻找优秀的编程博客来磨快你的锯子(或者至少能激发你的潜力和兴趣),我可以向你推荐两个很棒的专门针对编程的链接聚合网站,相信它们一定可以帮助你。

一个是Hacker News(http://news.ycombinator.com)。我强烈推荐这个网站。


6

Hacker News是Paul Graham2想出来的,所以这个网站多多少少反映了他在Y Combinator的投资兴趣,以及他对诸如创业公司、企业事务之类的关注。Paul对网站内容的审阅是非常认真的,因此除了那个很有代表性的摇滚(Diggy-style)投票机制外,还有一个由他亲自挑选的编辑组成的秘密集团(我喜欢把他们想象成忍者黑帮3,“没有人会承认他们仍然存在!”)他们会删除标记过的帖子。更重要的是,这个网站上关于文章内容的讨论都非常理性,几乎没有任何嘈杂声和骂战。

另外一个是programming reddit(http://www.reddit.com/r/programming)。相比之下,那里的讨论更加杂乱,像狂野的西部,任何事情都变得很敏感,而且它仅靠社区里或顶或踩的投票机制来把关。不过,我们往往能从这个网站发掘出各种各样程序员特别感兴趣的链接。

当然,过多地磨锯子,或者随意地、没有目标地磨锯子,会变成另外一种形式的延误。然而,如果一个程序员对这些完全不感兴趣,那也是一个巨大的危险信号。就像Peter Bregman说的那样,“痴迷可以是一件好事”:

人们成功常常不是因为他们克服了自己的机能障碍,反而是这些障碍成就了他们。痴迷是通向成功的一个最明显的风向标。如果理解了一个人的痴迷,你就会理解他最自然的动机—他会为之坚持走到世界的尽头。

对磨锯子有些痴迷是没有问题的,但前提是,你的痴迷是类似Hackers News的网站上积极地提交和讨论与编程相关的文章。

作为一名程序员,你对如何磨快锯子有更好的建议吗?

内容概要:本文针对国内加密货币市场预测研究较少的现状,采用BP神经网络构建了CCi30指数预测模型。研究选取2018年3月1日至2019年3月26日共391天的数据作为样本,通过“试凑法”确定最优隐结点数目,建立三层BP神经网络模型对CCi30指数收盘价进行预测。论文详细介绍了数据预处理、模型构建、训练及评估过程,包括数据归化、特征工程、模型架构设计(如输入层、隐藏层、输出层)、模型编译与训练、模型评估(如RMSE、MAE计算)以及结果可视化。研究表明,该模型在短期内能较准确地预测指数变化趋势。此外,文章还讨论了隐层节点数的优化方法及其对预测性能的影响,并提出了若干改进建议,如引入更多技术指标、优化模型架构、尝试其他时序模型等。 适合人群:对加密货币市场预测感兴趣的研究人员、投资者及具备定编程基础的数据分析师。 使用场景及目标:①为加密货币市场投资者提供种新的预测工具和方法;②帮助研究人员理解BP神经网络在时间序列预测中的应用;③为后续研究提供改进方向,如数据增强、模型优化、特征工程等。 其他说明:尽管该模型在短期内表现出良好的预测性能,但仍存在定局限性,如样本量较小、未考虑外部因素影响等。因此,在实际应用中需谨慎对待模型预测结果,并结合其他分析工具共同决策。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值