【社区专栏】王春生:开源软件应当如何打造支持社区
转贴:
最后编辑:晏瑞宇 于 2021-10-18 09:19:32
7774次查看
这个问题的答案取决于做开源软件的目的。如果纯粹是个人爱好,就另当别论了。但如果确实想把这个软件做好,让更多的人使用,技术支持是必不可少的。这就带来了一个问题:开源软件应当如何打造支持社区呢?
我们在开发 禅道项目管理软件 的时候,也曾经尝试使用一些“CMS系统+论坛+问答程序”来搭建支持社区网站。但后来发现这些系统整合的成本非常高昂,用户的体验也比较差。后我们还是自己动手写我们的社区支持网站程序,这一写就是四年多。通过这个社区支持网站,我们为成千上万的禅道用户提供了及时有力的技术支持,也解决了自身盈利的问题,摸索出了一条开源软件持续发展的路子。
那我们都开发了哪些功能模块呢?下面和大家分享下。
首先,会员体系。 因为涉及到发贴、提问、积分等逻辑,会员体系是必须的。在常规的登录注册这些功能基础上,我们集成了微博和QQ的开放登录功能。后来的数据也显示,开放登录功能是很有必要的。很多用户有了问题,到网站提问,肯定希望是快速登录的。这时候还需要让用户注册、登录,是很不友好的。微博和微信的开放登录可以很好的解决这个问题。
其次,文章发布。 有很多开源软件的网站都是用静态页面写的,发布一个软件,写一个动态新闻需要手工编辑很多页面,比较繁琐。有一个内容管理功能模块可以节省很多的时间。除了基本的文章发布之外,我们还针对搜索引擎做了很多优化,比如静态路径、关键词信息等。通过这些点滴的努力,禅道软件也获得了比较好的排名。
第三,完善我们的文档和手册。 也许有的朋友会说,可以用Wiki,大家一起来写。其实国内开源软件的用户参与度比较低,靠大家来完善文档这件事情不大靠谱。Wiki也不是特别友好的一种信息组织方式。因为手册是有先后顺序、章节层级的。我们专门开发了一个手册的功能模块,可以像写书一样来写手册,用户浏览的时候也像阅读一本书一样,非常系统、方便。
文章发布、手册这些都是静态的资源。一个支持网站还需要和用户进行互动,获得用户的反馈、建议等问题。 在这方面,我们提供了三种方式和用户进行互动。 首先我们提供了QQ群。虽然QQ群的讨论记录无法共享,但就一对一问题解决来讲,QQ还是方便的。可以截图、远程,可以快速的定位问题。然后我们给用户文档的链接。除了QQ群,我们还提供了技术问答模块,这个类似于百度的问答,用户可以发贴提问,别人可以来回答。别人回答之后还可以获得积分。后我们还提供了论坛模块,用户可以通过论坛来提出建议、反馈Bug。
我们还开发了捐助、积分、用户案例等模块。 吸引用户来撰写案例,参与社区反馈,提出自己的建议,增强社区的参与度和活跃度。我们还开发了开放平台功能,第三方的开发者可以把自己开发的功能做成插件发布上来和大家进行分享。
去年的时候我们把这几年开发的这些功能重新做了梳理,重新写了UI结构,进一步增强了操作的方便性和前台的美观,发布了 蝉知企业门户系统 ,这就是蝉知门户系统的来龙去脉。我们的禅道官网近也都正式迁移到了新的蝉知系统,原来我们自己开发的那套代码终于可以退休了。
软件完善无止境,社区支持也无止境。 我们会持续的完善我们的软件,也会持续的为我们的用户提供有力的技术支持。也建议做开源软件的朋友们,可以考虑下使用蝉知系统来搭建软件的社区官网,会帮您节省大量的时间和精力。
本系列文章 :
媒体报道