为什么软件工程师像木工?

原文 :https://www.zainrizvi.io/blog/why-software-engineers-like-woodworking/

很多程序员喜欢木工,自己动手制作各种木制品。

这不是偶然的。木工有一些特点,会让程序员感到非常熟悉,与编程并没有太大的不同。

(1)两者都需要自己动手建造。

(2)两者都有大量的工具可以使用。木工需要电钻、起子、锯子、刨子、凿子、锉刀、锤子……你需要自己找到最合适的工具。

(3)两者都要受到很多外界限制,除了金钱方面。软件有资源限制(CPU、内存、带宽、延迟、工时等),木工则有物理空间的限制。

(4)两者都是先设计,后建造。不管是软件还是木工,都必须在建造之前,就想清楚你要制作什么,并弄清楚不同部分如何相互作用。

(5)两者都需要等待,软件需要等待编译,木工需要等待胶水、油漆这些事情。但是,等待也使得你可以同时处理多个项目。

(6)两者都有用户。无论软件还是木工,做出来都是有用户的。

总之,木工的许多方面都与软件高度相同,而且你可以更快速地得到反馈,与用户密切互动,同时又不像写代码那样乏味,所以它对程序员有很大的吸引力。

我父亲就是一个木工,从小看父亲做木工活,很好奇他的工具,最感兴趣的就是看着他把一块块木头拼成家具,我相信这也对我的工程建造能力有了锻炼。

所以我一看到这篇文章,我就决定转载到我的博客