为什么要学Ruby

最早是在09年知道Ruby的,大概是知道Python的同时。当然这里的知道是仅限于名字上的。那是上大学,偏机械的专业,某些同学到今天可都是不会装系统的。而和这些不懂电脑的同学大谈各种计算机知识、编程语言的特点,是我一大爱好:脚本语言是一种易学的语言,要不然为何叫”脚本“,是因为用脚都可以学会;脚本语言里面有三P:Python,Php, Perl,都是极好的,当然还有一个Ruby,不过是日本人发明的,你如果不爱国的话,倒可以学一学…

最早的关于Ruby的记忆,就是和同学的这些对话了。毕业后,狂补C++的知识,不惜一切的想要提高C++的技术水平,听闻C++程序员必须要辅修一门脚本语言,于是Perl,Python,Ruby三门语言在我脑中角逐,最后Python胜出,于是啃了两三本Python的书籍,断断续续写了一些脚本,逢人就推荐Python,”life is short, use Python!“, Python是个极佳的工具语言,Python的学习反向促进了对C++的领悟,Lambda的概念是从Python中学到的,当然后来自己又追逐Lambda的源头Haskell,就不多说了。

而自己为什么又要开始学Ruby了呢?不爱国了吗?当然开玩笑了,互联网的世界那里有国别之分,而且我们谋生用的技术那些是国产呢?

从Ruby很火可以推断Ruby应该是个不错的语言,除却这个原因和学习本身就是一个快乐的过程外,以下是自己主观上想要学习Ruby的原因:

C++学习之痒

当然C++现在处于并且将长期处于自己技术方向的中心。都说C++语法都让人着迷,然自己好像陷入C++的汪洋大海中了,看到这些大牛的博文,始觉自己对C++了解的太少了。短暂的休息是为了下一次冲锋,C++的深入,先放一放。

美丽新世界

Andrew Hunt的经典名著程序员修炼之道中提到,程序员每年要学习一门语言。一些教授所言的“语言不重要,所有语言都是相通的“这种观点经不起推敲。人为什么要学习外语,无外乎两种原因:了解语言背后的思维习惯和掌握语言背后的信息价值。编程语言和自然语言一样的,学习一门新的编程语言,可以接触到新的思维习惯和语言先天的优势(语法糖、框架、库、社区等)。

劳动是必需品

中学时,记得关于共产主义的描述有一条是:劳动已不仅是谋生的手段,而且成了生活的第一需要,设想一下,到那时休5做2,想要加班都会被领导批评,要层层审批才能通过。那时的劳动定是快乐的,可这种乌托邦的社会,你我未必可以赶的上,我们如何爱上我们的工作?

Ruby, 让你爱上你的工作。这是某些人打出的Ruby的口号,我特别想证明这个口号是对的,或是错的。

现实的考量

Ruby在国内算是小众的语言,但如果要转Ruby的话,能否找到工作,刚才在Indeed上搜索Ruby:948条,Python:4,474条;Haskell:7条;机会确实不太多,再看Ruby的趋势,左侧全球的Ruby热度减退,但右侧国内Ruby热度13年井喷,所以不久以后Ruby还是可以学以致工作的。

为了自由

当然并没有人强暴我的心理或肉体,我指的自由是,可以做一个自由职业者。这当然这是3、5年后的目标,而靠C++实现这个目标貌似不容易,如今是Web与APP的天下了,ROR,貌似是一个适宜自由职业者开发web产品的框架。