享受工具带来的乐趣 -管理资料

管理资料 时间:2019-01-01 我要投稿
【www.unjs.com - 管理资料】

    我最近正在思考来自唐纳德·克努斯的一段话:

    The enjoyment of one’s tools is an essential ingredient of successful work.

    享受工具,是成功工作的重要组成部分,

享受工具带来的乐趣

   

    这段话很有意义。我的博客上几个星期前也记录了来自乔·阿姆斯特朗(Erlang 编程语言的设计者)的一段话:

    Forget about the tools … buy a decent book and type in the programs by hand. One at a time thinking as you go. After 30 years you will get the hang of this and be a good programmer.

    忘记工具。买一本好书,手工敲程序。每次都好好想想。30年后,你将掌握其中窍门,并成为一个优秀的程序员,

管理资料

享受工具带来的乐趣》(https://www.unjs.com)。

    我不认为唐纳德和阿姆斯特朗的观点完全矛盾。我来说明每段话的背景,以及如何将它们放在一起。

    唐纳德的话背景是浮点运算的讨论。它是《半数值运算》中的章节4.2.2A的最后一句话。他说,尽管浮点运算本身就不精确,但重要的是,它依然具有某些不错的数学性质。我相信他有意让这段引文传播得更加广泛,一部分是因为他用斜体标出。总之,他关于“工具”的直观想法很低级( low-level)。

    阿姆斯特朗的那段话的背景是他建议远离毫无必要的软件工具,特别是当你第一次学习编程语言的时候。他说,IDEs和构建工具是开始编程的最大障碍。他接着说他的基本编程配置是shell、makefiles 和Emacs。这些是工具,我认为阿姆斯特朗喜欢使用它们。相对于浮点运算而言,它们是高级工具,不过对于IDEs和构建工具来说,它们算是低级工具。(顺便提一句,唐纳德也使用Emacs。)

    所以,综合唐纳德和阿姆斯特朗的建议,以及我个人的观点,有这样一个方法:

    选择几个你喜欢使用的工具,好好学习。

    或许是这个:

    选择几个好的工具并好好学习,直到你喜欢上使用它们。

最新文章
推荐文章