最近在学编程。我基本上是在python和ruby之间挣扎,还不知道到底选哪个好,毕竟时间精力都有限。但今天下午看了两个演讲之后,我基本上可以说是眼前豁然开朗了。

第一个是github联合创办人 Tom Preston-Werner 的演讲。Tom 讲的是他如何从一位java程序员进而了解php,进而是ruby,进而参与ruby社区,进而在线下的聚会上碰到他的co-founder的故事。是一个相当平实但非常具有启发意义的故事。

这个故事最让我觉得神奇的一点,就是 Tom 在刚开始学习 ruby 才一两个月就写了一个gem,并且在线下ruby聚会上跟其他开发者分享。他说,这是最好的学习过程。因为这样你可以获得用户的反馈,进而改进自己的设计,如此演进,直至你写的gem成为一个很棒的大家都喜欢用的软件。

这才是 learning by doing 啊!

传统的教育更多讲的是理论,甚少实践,最多就是一些practice,很少能发挥实际用处。但 Tom 的观点是,假如你有遇到什么你觉得不爽的问题,那就先记录在自己的笔记本上,并且尝试自己去写个程序来解决这些问题。因为你自己对这些问题通常会有切肤之痛,所以你更清楚什么才是更佳的解决方案。

到后来 Tom 也是因为要解决自己遇到的一个问题:怎么通过网络以及git来协作开发软件。当时还没有比较让他满意的解决方案,于是他就想到自己做一个。后来github上线的第一年,网站的tagline说的就是“git hosting that is not pain in the ass”。实在太神了。

另外一个演进是 ruby on rails 的创作者dhh 的演进。dhh 的演进 也相当精彩。很显然dhh是ruby党,他认为ruby不仅仅比其他的编程语言在语法上更为漂亮,而且写ruby的程序还能让程序员感到快乐(准确的说这句话是matz说的)。确实,看看世界各地的各种稀奇古怪的ruby/rails会议(例如 Railsberry,欧洲的一个相当欢乐的rails大会,还有最近兴起的 rails girls,一个专门鼓励女性参与rails开发的公益活动),你就能感觉得到整个ruby/rails社区强大的活力。我想也正是这样的活力催生了像github以及37signals这样的公司。



Published

28 November 2012