立志做编程艺匠的中国程序员需要学哪三方面知识?


至今已经投身编程职业43年并领导编程匠艺(Software Craftsmanship)的美国软件大师Bob大叔(Robert C. Martin,《Clean Code》的作者)的自己的Twitter上描述自己的职位为Software Craftsman。这个词组有人译为“软件工匠”,我认为译作“编程艺匠”更好一些:“编”字更加生动,“艺”字更能体现悟“道”的含义,而“工”字似乎仅有优“术”的意味。这样,Bob大叔所倡导的Software Craftsmanship可译作“编程匠艺”。

 

只要仔细读了Bob大叔的经典《Clean Code》(中译本《代码整洁之道》),就会明白编程艺匠除了要会技“术”,还得悟“道”。但是Bob大叔的书中的“道”都是西方带有奶油味的,中国人“吃”不惯。

 

由此我常常想,立志做编程艺匠的中国程序员们,除了学习像Bob大叔这样的西方大师的经典之外,还需要学习什么知识,才能在中国这片土地上成为编程艺匠呢?

 

我认为有三方面的知识需要学:国学、英语、编程。

 

国学,就是中国传统文化,代表作有儒家的《弟子规》《论语》《孟子》、释家的《心经》《金刚经》和道家的《老子》《庄子》,因为咱们祖先传下来的这些儒释道的丰富的思想在“道”的层面上至今令世界叹为观止。

 

英语,写代码中的变量名、方法名和类名需要良好的英语,看西方大师的原文经典需要良好的英语,听西方大师的演讲需要良好的英语,和西方程序员交流需要良好的英语。听说读写都要学好,才能迈入编程艺匠的门槛。

 

编程,坦率地说,编程中有关“术”的层面的经典非西方大师的英文经典莫属。这一点有点像1500年前唐朝的玄奘法师的年代,佛家经典非印度梵文经典莫属。所以有了上述英语的基础,就可以读《设计模式》《重构》等等一系列有关编程的英文经典。

 

学习了国学,能让你在“道”的层面把握正确的前进方向;学好了英语听说读写,就能大量阅读西方编程大师的英文编程经典,让你在“术”的层面更进一步。先明道,后优术,再假以时日,最终成就中国编程艺匠。

 立志做编程艺匠的中国程序员需要学哪三方面知识?_第1张图片

你可能感兴趣的:(编程匠艺)