回答关于”我们的开源项目“的采访

http://sbbs.me/post/502329a80c3b4a312a00000d

 

尝试在SBBS里写作,先将CSDN&ITEye的问题贴过来,然后一一回答。
1. 先来个自我介绍吧!
庄表伟,盛大创新院高级研究员,1997年毕业至今,始终战斗在编程的“第一线”,2009年加入盛大创新院。一直致力于推广并服务开源,热爱社区,热衷参与各种社区的交流活动。对于开源的事业贡献度很低,目前稍微能够拿得出手的项目,是一个正在进行中的写作计划:《借助开源项目,学习软件开发》。
2. 为什么要发起“我们的开源项目”活动?
这个活动,最初是因为即将召开的QCon,那天我在网上浏览QCon的演讲主题列表,就发现绝大多数的演讲主题,都是在讨论人家的、热门的、主流的技术,而没有一个讲坛,可以让大家聊聊自己的开源项目。在4月19日的QCon的演讲中,我也说了这样的言论:大家来参加技术聚会,都怕听到水货,希望听到干货,但是,我今天带来的,不是水货,也不是干货,而是一些“鲜货”,一些设想,一些思考,一些正在进行的工作,不仅仅来传播些什么,更希望能够有所交流,能够找到一些同道。

所以,在2月24日我就在新浪微博上的喊道:”有没有可能组织一个技术聚会,大家各自聊聊自己做过的,正在做的,打算做的开源项目啊?“  这条微博引起了远远超出我预期的反响,很多朋友都因此而积极的投入进来,比如@程开源,比如@ben_杜玉杰,比如车库开源小组的@赵乐天。还有很多很多我不认识的志愿者,愿意加入,愿意帮忙,愿意报名,愿意讲讲自己的开源项目。

这个活动,一下子就“火”起来了。

3. 该活动目前的举办情况?
从微博上的一句话,到现在差不多半年过去了,我们一共举办了6场“我们的开源项目”活动,分别为:

  • 2012年5月20日——上海
  • 2012年5月26日——北京
  • 2012年6月15日——成都
  • 2012年6月30日——深圳
  • 2012年7月14日——北京
  • 2012年7月21日——上海

参与活动的总人次超过500人,其中志愿者约有40多人。20多个有分量的主题演讲,以及超过30个的5分钟闪电演讲。

不过,这些数据其实并不是特别重要,因为我这不是在写某个工作汇报,而是在聊聊感想,这些活动,吸引到了很多朋友,这些朋友原本都在各自为战,孤军奋斗。现在大家终于发现,原来有那么多人,都热爱开源,都在为之默默的努力着。从这一点来说,我们发起这个活动的初衷已经实现了。

4. 在活动举办过程中,有哪些让您印象深刻的开源项目?
印象深刻的项目,有很多,但首先是因为开发者令人印象深刻,连带着项目也变得有趣起来。

  • @游戏开发极客GEEK:这个项目吸引我的,首先是演讲标题《开源屌丝养成计》,在第一次活动中,这位“屌丝”闪亮登场,以活力十足的方式介绍着自己的项目,赢得了满堂彩。现在他正在做一个HTML5的类似于马里奥的游戏,大家可以先去玩玩看。
  • @OpenERP_JeffOpenERP中文社区:OpenERP中文社区也有很多“苦逼”的数据。一个Wiki,非常非常多的内容,只有4个人撰写,而且其中90%的内容,还是Jeff一个人写的。为了养活社区,Jeff在外面接活,一年赚了3万多,还分了2万多给社区的会员。但是,他演讲中的一页,引起了很多人的共鸣:
    • 通过开源服务赚钱,证明开源服务赚钱是可能的
    • 通过实现理想,证明实现理想是可能的
    • 通过改变世界,证明改变世界是可能的
    • 即使是在中国
  • @李大维@何琪辰爱上大ArduBlock:这是一个开源硬件的配套开源软件项目,通过拖拽的方式为Arduino编程,何琪辰当场演示,当那块Arduino板子,开始闪亮起来的时候,全场响起了热烈的掌声。值得一提是,何琪辰目前还在上海大学读研,真是很棒!
  • @zozohnutz:zozoh是我在所有活动中,发现的最擅长演讲的家伙。风趣冷幽默,简直可以去讲单口相声。因为他对nutz的生动介绍,我才去看了那个项目,发现已经相当完整,文档清晰丰富,足够可以用于生产开发了。
  • @老赵Jscex:Jscex是一个Javascipt的异步编程类库,现在改名为(Wind.js),本身的代码质量与完成度,都非常高,但是更加值得一提的,是老赵的一记狠招:他自2012年起,每月1号将为Jscex拨款1024元人民币,用于鼓励个人对Jscex的研究及使用,包括但不限于推广建议,研究,案例,或是在开源项目中使用Jscex。真是很令人佩服!
  • @開源哥ADB GUI 4 Linux:这个项目,还没有在“我们的开源项目”中讲过,但是那次在北京活动后吃饭的时候,我遇到了这个项目的作者:開源哥,一个刚刚满17岁的高二学生,目前在加拿大读书,暑假的时候回来参加咱们的开源活动。作为一个新鲜的95后开源人,我感到很有必要介绍给大家!
5. 活动目的之一是“想看看国内到底有多少开源开发者和项目”,举办到现在,有没有一个大概的认识?
国内开源项目的数量,是一个很难定义的概念。从最广的定义来说:某个开发者,把自己的代码放在一个公开的网络上,就算开源。现在更加简单:在Github上fork了一个项目,也得算一个。按照这个计数规则,超过10万的项目,甚至更多,都有可能。
稍微窄一点的定义:由国内开发者发起的开源项目,从历史上算起,无论现在的死活情况,相信应该能够上万吧。
再稍微严格一点的定义:到目前还在持续开发、维护的项目,最多能够上千。
这真的非常不容乐观!至于开源开发者,实在没法统计,也许类似于人口普查的工作,可以由谁牵头来做一下。

6. 您怎么看待国内的开源环境?
我的看法是这样的。一个好的开源生态,应该有以下几个部分组成:

  • 热情的、爱好开源的开发者
  • 能够源源不断培育优秀开发者与发起优秀开源项目的高校
  • 能够资助开源项目的基金会
  • 愿意捐助开源基金或开源项目的企业
在目前国内的状况是:四个方面都相当缺乏,但是最为缺乏的是一批开源基金会;其他的国内或多或少还有,基金会目前就是空白。其次是高校,国内愿意或者已经发起开源项目的高校,可以说凤毛麟角,而对于在校大学生的计算机教育,也不重视开源这一方面。愿意支持开源的企业,近年来略有上升,但是的确还远远不够。目前的现状就是如此。
7. 就您所知,这些开源开发者的动力来自哪里?
之前我写过一篇文章,叫做《当我谈开源时,我谈些什么?》其中谈到了一些观点:

  • 改变世界:程序员的梦想,是希望能够创造一些改变世界的东西。而开源程序员的梦想,则是希望汇聚所有可能的力量,一起来改变世界。
  • 好奇心:开源的动力,其实是来源于探究事物本来面目的好奇心,对于那些有好奇心的程序员来说,不能了解一个软件的内部是如何工作,简直是令人无法忍受的事情。
  • 乐于分享:另外还有一个没有谈到的观点,是知乎的创始人周源提到过的一本书《认知盈余》,那些有着足够积淀,又有足够的业余时间的人,是非常乐意分享的。这种分享在社会化问答出现之前,也许只有开源程序员,做到了这一点。
8. 哪些开源项目可以参与到该活动中?
我们欢迎所有的朋友参与进来。

有自己的开源项目,当然非常欢迎。仅仅是对开源感兴趣,想来了解一下,感受一下氛围的朋友,也非常欢迎。
有一次来参加活动的,是一个学专利法的律师,他说想来了解一下国内开源的情况,我认为也很有助益(无论是对于他,还是对于我们这个活动都是)。

也不仅仅是欢迎国产的开源项目,那些参与了国际上著名的开源项目的开发者,例如@Freeman小屋;@姜宁willem,就是Apache Member。通过他们的介绍,我们也对Apache、对国际上通行的开源项目组织、对全职的开源生涯,有了更多的了解。
9. 对于一些想进入开源领域的开发者,您有什么建议?
慎入。

这个圈子看起来很有意思,但是进来以后你又会发现没有自己设想的那么好。做开源的人其实很孤独。它不象发微博,有两个人转发,五个人评论,你会收到一些反馈。写一个开源软件,三五个月没人理你是很正常的事,因为(如果)你写得不够好,别人可能没兴趣来看你的东西。所以需要熬得住,熬不住的人就会退出去。熬得住的人坚持做下去一定会有回报,但是这个回报一定不是很快的。如果说你想进来玩玩儿,你很有可能觉得没劲很快就退出去了,出去的时候还会说:开源没什么意思,都没人理我。很多人都是开源一个项目,扔在那没人管,也没人理,时间长了他也就不管了。这种事情是再平常不过了的。他们可能就是长江后浪推前浪里的前浪吧。
10. 对于开源许可协议的选择,您有什么建议?
我没有这方面的太多想法,但是我觉得开源和商业应该是不矛盾的,所以如果要我选择许可证的话肯定不能和商业矛盾。但是同时我也很敬佩GPL背后的理想精神,它的背后是有着崇高理想的。也许在有些人看来它显得有些莫名其妙,甚至和商业有一些冲突,但是我个人很尊重GPL。有一些项目我觉得会很适合用GPL来开源,但是如果是偏应用型的项目我会选择类似于Apache这样的许可证,这需要依具体情况而定。
11. “我们的开源项目”今后的计划?
我希望,这个活动能够变成一个在国内多个城市,都同时存在的常态聚会。很多IT较为发达的城市,都有一群热爱开源,从事开源的朋友,大家能够因为“我们的开源项目”这样的活动而结识,进而成为越来越熟悉的朋友,那么朋友之间定期聚会,就会是一件顺理成章的事情。

每个月,大家碰碰头,聊聊最近自己那个项目的进展,各自抱着自己的笔记本,show一下自己的代码和界面,大家在互相品评一番,也许有些新的点子,新的创意,就会在其间诞生。
我前面也说过,做开源的人其实很孤独,能够有一个定期的聚会,大家互相打打气,鼓鼓劲,将会起到一种抱团取暖的作用。
另外,还有一个大的设想,当然目前还仅仅停留在设想的阶段,就是搞一个国内开源爱好者的年度大会,把大家都聚到一起来,畅所欲言,深度交流。如果能够将这样一个大聚会办成,我将会非常的兴奋!

聊聊语言之争

http://www.cnblogs.com/winter-cn/archive/2012/08/05/2623897.html

寒冬也凑热闹写了一篇,之前还有@左耳朵耗子@tinyfool@老赵@Laruence等人,看起来挺热闹的,我也说说我的想法吧。

1. 以前看到一篇文章,是外国大牛吐槽各种语言的,我印象最深的一条是:如果一种语言没有人吐槽,那就说明他没有人用。换言之,值得被喷的语言,通常都是较为流行的语言。
2. 程序员这个群体,看起来既有高智商,又很讲逻辑,其实很多时候,都是凭着一股子冲动在说话做事,事后再去头头是道的讲理由的,在语言优劣之争方面,也往往如此,我们并非先做了各种优劣判断比较,再去选择某一种语言,而是因为种种奇妙原因接触了那些语言,事后再来找各种理由,证明自己的“选择”是何等的正确。
3. 那么,我是一个语言本无优劣论者吗?当然不是。我当然有自己喜欢的语言,如果有谁说我热爱的Ruby的坏话,我总是要站出来说两句的。但是,我真的是因为Ruby多么多么好,才喜欢他的吗?其实不是,一开始我接触Ruby,只是因为他上手简单,安装完ruby,gem install rails,就装好了Rails,在15分钟内就可以搭一个Blog,这种体验彻底征服了我。至于后来的使用过程中,我难道没有被Ruby坑过吗?当然被坑过,但是我抱怨了吗?当然不会抱怨。当你爱上一门语言,爱你所选,选你所爱。越用越顺,越顺越爱用。不是一个很简单的道理吗?
4. 我向来不掩饰自己对Python的观点,当然,那是我个人的问题。有很多脑子非常好使的家伙,与我正好相反,他们热爱Python。难道Ruby VS Python两方,就注定有一方是脑残吗?就不能大家都是做了理性的,聪明的决定,但是决定不一样吗?
5. 以前我看到过一个C++的Fans,以某种优越的口吻,劝告那些不喜欢C++的程序员,他所:“我理解那些徘徊在C++门外的同学们的困惑,没有三年的功底,最好不要说懂C++。幸运的是这门东西的回报,会告诉你所付出的是完全值得的。”问题在于,很多人并不愿意开始那样的三年,从一开始,他就不打算学。然后,他自然可以找到各种理由,证明用C++,会严重的浪费生命,因此,珍爱生命、远离C++,是唯一理性的选择。
6. 总结我的观点:语言之争,大多数时候是无意义的。而程序员们之所以会有语言之争,往往是出于某种自我强化与自我认同的心态。
7. 附言:语言之争虽然不必有,但是语言的好坏差别,还是存在的。也许C++需要3年的时间,才能让你体会到他的妙处,但是Ruby的确只要一周,就能够让你体会到了。。。