国内的开源社区环境不咋地,朦朦胧胧的问题困扰着各个开源项目,而这个绝不是因为怀着开放理想的开源人做不出好的东西。
尴尬的状态在持续着,脾气再好的人时间长了也会忍不住发发牢骚。
我也很费解,到底是为什么,我们到底应该怎么做?
有人说就算不参与提交代码,写些文字分享一下总可以的吧?有人就说没什么好分享的。
类似的争论总有发生的时候。这里不具体讨论这些观点,就从分享文档的角度来看看事情。
相信有许多人都有这样的经历,在使用某开源项目时遇到困难就 google,搜索结果中排名靠前的并不一定是官方的,特别是各种细致的问题,从摘要都可以看出来那个 post 所描述的问题正好就是自己遇到的,心中一乐,点开链接之后数秒,问题解决。
假设没有搜索引擎(天哪!),但是你只是知道有官方文档,然后你去查,发现写这个项目的文档写得非常特别,可能项目比较新,或者开发者就是这么特别,你只好开始刨那些文档。运气好的,能从 FAQ 里面找到你想要的,运气不好的,不太会觉得是自己运气不好,会认为这个项目开始不靠谱了,但是问题,还是得解决,于是想着既然开源的,就看看代码吧,正好自己也会哪门语言,强大的你下载了源码,不管 3721,连上调试尝试快速寻找突破口,经过 N ( >=1 ) 个循环之后,终于找到了问题,原来只是自己理解的问题,修改一下自己的代码即可轻松绕过。为了掩饰自己的“无知”,你可能选择了什么事情都没有发生。
另一个“强大的你”在地球的另外一个角度重温了一下刚才那一幕,也许太忙了,就忘了~~
还有另一个“强大的你”也遇到了,但是你也很特别,不会码字,然后就忘了~~
……
第 M 个人同样遇到个类似的问题,就会有 M 种理由当什么事情都没有发生过,就会有 M 个人开始对这个项目产生坏印象。使用的人开始减少,项目维护的热情在消减。
但情况非常之容易改善,只要中间有一个人为此记录下来,发布到网上,就会产生 P ( < M ) 个开心秒杀的情况。当中微妙的差别可以影响很多。这 M + 1 ( 1 是开发者 )个人是不是就可以形成开源社区,只要每个问题循环中有一人提交解决结果,其它人都可以直接读取这个缓存,看上去是不是非常简单而美妙。 现实中,情况可能复杂得多,只是可能,因为相对于每一个使用开源项目的个体,所要付出的和最大收益是不成比例的。整理成文字发表出去的成本非常低,网上有大量的免费服务可供选择。 开源社区可能不是以这种方式建立起来的。 只是开源社区对于开源项目是非常重要的,缺乏社区的支持,项目很难得到全面发展。 开源社区并不意味这固定的组织,任何人都可以作出贡献,比如只是一篇简单的分享,任何人都可以分享当中的喜悦。 非常简单的自然法则。