写这篇文章的时候,苹果官方网站证实了乔布斯去世的消息,虽然我并不是“果粉”(苹果迷的自称),但还是深为世界从此少了这位有如此创意的天才而惋惜。记得乔布斯曾表达过:如果人不能通过创造来改变世界,将是多大的一个遗憾。我想乔布斯在一点一点搭建他的苹果世界时应该了无遗憾吧。这个开头扯得有些远,因为想到松本行弘说他开发Ruby的初衷是希望得到快乐,我想乔布斯或许也这么想过。
好了,说回这次的主角,程序语言Ruby的开发者松本行弘带来了他的最新作品——《松本行弘的程序世界》。这本书准确来说是本文集,是将松本于2005年5月到2009年4月在《日经Linux》杂志连载的“松本编程模式讲坛”文章,进行编辑修改而成。文章的时间有些久了,所以松本删除和修改了不合时代的内容,同时增加了自己对编程问题的新思考和新看法。在这本提名为“程序世界”的书里,松本行弘以Ruby语言为蓝本,提出了许多对其他语言也适用的设计原则和开发思想。
Ruby这个名字源于7月诞生石红宝石(ruby),意为稀有、色彩强烈、热情、珍贵。在设计之初,松本希望人的位置在编程中得到更多重视,他说:“一个好的编程语言不仅可以执行程序任务,也应该帮助程序员形成更好的编程逻辑。”松本行弘曾经提到语言学里的一个Sapir-Whirf的假说,这个假说认为语言可以影响说话者的思想,也就是说,语言的不同会带来人们思维方式的不同。先不管这个假说在语言学里是不是正确的,松本认为至少计算机语言是符合这个假说的。他举了另外一个例子来说明这个观点:“圣经”级著作《人月神话》作者Frederick P.Brooks说过,不管一个程序员使用何种编程语言,他在一定时间内编写的程序行数是一定的。那意思就很明显了:编程语言的不同,会导致开发效率产生百倍甚至千倍的差别。而编写程序语言本身就是一件需要仔细斟酌考量的事情,如何集中多种特性而不成为简单的翻版,如何开创出自己的特性,如何让这种语言承载设计者的理念,都是需要开发者再三思考的问题。正是基于这种认识,松本行弘在Ruby的编写中大量吸取了各种编程语言的优劣之处,他始终没有忘记自己是为了得到快乐才进行开发,也正是在这种理念的推动下,当越来越多的程序员说出“用Ruby开发很快乐”时,松本得到的欣慰也越多。
Ruby自1993年开发、1995年在互联网公布以来,逐渐得到不同国家程序员的认可和喜爱,因为它给予程序员自由发挥的空间更大,更加“人性化”,这种“人性化”的风格放在程序员身上,逐渐成为了一种文化。松本行弘将这种文化概括为“对高生产力的追求”、“富有柔性的软件开发”、“对程序员人性的尊重”、“鼓起勇气挑战新技术”等四个原则。原则说起来很抽象,但只要看看使用Ruby的程序员就知道这种文化代表了什么。比如用Ruby语言开发出Web框架Ruby on Rails的创建者David Heinemeier Hansson,这位仁兄不仅自己兼任保时捷车队的职业赛车手,且他的公司每周只用上4天班。也正是经由这位DHH的努力,Ruby开始在全球流行,而他开发的Ruby on Rails被很多人视为“软件开发的银弹”。
2010年底,著名的SAAS厂商Salesforce以2.1亿美元的价格收购了PAAS厂商Heroku,并在今年7月聘请松本担任首席架构师。这不仅澄清了人们印象中Ruby只在非主流程序员社区中流行的误区,也标志着Ruby在云计算领域中的应用将更加广泛。
《松本行弘的程序世界》,[日]松本行弘著,柳德燕等译,人民邮电出版社 2011 年8月,75.00元


上一版



缩小
全文复制