Categories

Open Source Never Die

sproutOpen Source 应当算的上软件开发历史上最耀眼的运动之一吧。然而虽然有数不清的明文 Licence 以及各种社区,Open Source 这个词,对于不同的人大概也有不同的意义吧。例如微软最近在 GPL 下“捐献”大量代码,他对于 Open Source 的看法(或者说 Open Source 对于他的价值)大概又和其他许多人不太一样的。而我自己嘛,说起来,我并不是一个狂热的 Open Source 鼓吹者。也许在刚接触的时候还有些激动,不过很快就平静下来,当然我一直都很喜欢 Open Source 这样一种方式,不过那并不是因为它“叫做 Open Source”,而只是因为我觉得这样很好。一方面,我并不排斥别的形式的存在;另一方面,如果哪天发现有什么更好的方式,我肯定会转移过去。一直以来,我也都是这么认为的。

不过最近发生的一件事情让我似乎又激动了一次,大概 Open Source 这个词本身也还是有它的魅力的吧。 🙂 事情是关于 YASnippet 的,这是一个在 Emacs 里模仿 Textmate 的 snippet 功能的包,最初看到这样的演示是在萝卜的一次 Ruby 小课堂上的一个 Rails 的演示视频里,当你在输入的时候别的地方也跟着变化,看起来确实很 cool !后来我发现有人写了一个 snippet.el ,来实现类似的功能,我在那个基础上加了一些让它稍微“智能”一点的东西,于是就是 smart-snippet 。不过后来我对 smart-snippet 并不满意,于是就有了完全重写的 Yet Another Snippet 。重写之前想了许多,例如功能要强大,但是却让用户用起来简单,因此定义 snippet 的语法尽量和 Textmate 很接近,并且让默认配置就满足大多数人的需求,拿来就处于比较好用的状态。我对 Emacs 的很多 package (包括 Emacs 本身)都有一个印象就是:经过精心配置,可以变得很强大很好用,但是默认状态却一点都不人性化。

总之,第一个版本 0.1.1 发布于去年三月份,反馈很让人欣慰,当然也许还和我录制了一个简单的演示视频并把它上传到 YouTube 上有关系吧 😀 。后来做了很多改进,一直到今年二月的 0.5.10 版,我渐渐地将开发进度放慢下来。一方面是我没有精力去做这个吧,收件箱里一直维持着 20+ 封未读邮件,多半是 YASnippet 的 bug report 或者 feature request ;另一方面大概是我自己没有用了吧,不过这个理由多少还是有些牵强,也许最开始做这个东西的时候还是想自己会用到的,但是实际上后来我并没有经常用,YASnippet 一直安装着也是为了方便测试,用得最多的也就那么一两个 snippet ,比如 c-mode 的 once ,用于生成一个头文件的 GUARD 。再后面甚至连 Emacs 也用得不多的(现在真是对编辑器一点都不挑剔了,只要不是太怪异的都可以拿来用,挑剔实际上是跟自己过不去呀,世间本来就没啥完美的编辑器 -,-)。所以说自己是因为自己需要才开发和维护 YASnippet 的,连我自己都觉得怀疑,之前曾经疑惑了很久,写了篇 blog ,得出的结论也无非是 Just For Fun 。

不过现在 YASnippet 又有新版本发布了,João Távora 参与进来,做了许多改进,刚刚发布了 0.6.0 beta 版,在于他谈过之后决定逐渐将维护和后续开发工作转交给他。然后逐渐将收件箱里一些上百天的 issue 转交出去,一瞬间觉得轻松了许多,不过,令人更加兴奋的是那种突然活跃起来的感觉,就好像回到了一年前一样:有人下载,有人讨论,有人称赞,有人致谢,有人写 blog 推荐,有人报告 bug ,有人提交 patch ,有人贡献新的 snippet ……于是突然想到一句话:“Open Source Never Die”。不知道我在哪里见过这句话,亦或者是我自己胡乱想出来的,不过这样的切身体会让我也突然觉得 Open Source 这个词本身也是有重量的。

Open Source Never Die ,仅仅是一句口号而已,但是此时真的让我能感觉到更多的东西,突然还想起了那句“铁甲依然在”。说实话现在真的突然有种跃跃欲试的冲动。 :p

14 comments to Open Source Never Die