近日,腾讯开源线下沙龙分享会在广州举办。分享会邀请了多位腾讯开源项目作者,分享自己在开源方面的经验心得。
会上,腾讯知名前端开源项目WeFlow的开发ZedHuang系统地介绍了一个开源项目从立项、生长、曝光到社区维护等各方面积累的经验。
WeFlow是WeChat团队为web开发人员提供跨平台支持和环境准备的前端工作流开发工具,目前已支持微信游戏、微信·朋友圈广告、微信·城市服务等第三方合作团队的前端构建工作。WeFlow帮助合作商在微信快速部署业务和高效迭代,开发出的产品不仅布局优雅、界面精美,还具备易扩展、易接入、开发门槛低等优势。
作者
ZedHuang,黄自力,来自腾讯微信事业群,高级UI工程师,主要负责微信的UI界面相关工作,参与了开源项目WeFlow的开发,是腾讯开源社区里的活跃用户之一。
我在很早以前,就已经有做开源的想法。在互联网上,我一直以hzlzh的名称“混”在开源圈,运营属于自己的GitHub账号,发布了一些项目,也吸引了很多人一起参与。对我来说,接触开源圈最大的鼓励,是自己在WordPress写的文章被圈子内的开发者翻译成多个语言版本。这些,都成为我拥抱开源的原动力。
一个项目的开源历程应该分为3个阶段和1个结果。项目经过了生长,运营推广和社区维护三个阶段的努力之后,就能达到提升影响力的结果,最终把项目搞大、搞火。
衡量影响力应该从这三个指标入手:知名度、口碑好、逆背书。
对于新用户来说,当我们的项目知名度提高之后,他们面对技术选型或遇到开发问题时,会优先想到我们的开源项目作为其备选方案。同时,开源项目知名度提高之后,才能在社区里引起开发者的关注,给它做贡献,使其更加健壮。
对于已经使用我们开源项目的用户来说,口碑好显得尤为重要。因为项目的好口碑使这批用户不自觉地向身边的同事或其他项目组推荐,成为我们项目的“自来水”,达到良好的二次推荐效果。
这个词看着陌生,换句话说,一个明星团队会做出很多明星产品。能够产出明星产品的团队,同样也是优秀的团队。所以,运营出影响力大的开源项目,可以佐证这个团队出的是精品,是对团队与个人实力的认可。
我们必须为产品找到一个痛点,才能吸引开发者来使用。
我们的产品是给小白用户用的,还是给高级开发者用的?我们要做简单易用的东西,还是高端的模块?这些在项目开始时就应该定位好。
梦想还是要有的。我们的每一个小项目开源出去,都有可能开花结果。所以项目初期,我就对它的未来做畅想,说不定它就成为下一个像微信一样优秀的产品。
每进行一次迭代,都需要关注功能体验,尽力给用户“用起来很顺手”的感觉。这样我们的产品才能在同类竞品中闪闪发光,保持竞争力。
我们需要把自己要做的每个需求做简单地分类,哪些是要做的,哪些是用户真正用到的。把它们列起来,这样会显得非常直观。
细节决定成败。往往很多时候,产品的一个细节,一个闪光点就可以秒杀竞品。如果他在这一点上的体验不如你,用户马上就会向你倾斜。
假如我们已手握一个好产品,它的结果会是怎样呢?有句话说得好,“酒香也怕巷子深”。现在是卖家市场,越来越多的东西都需要推广出去,才能被用户接触到,否则很多好的产品都会被埋没。
简单来说就是拉新,拉拢新用户。我们要以量取胜,让更多人知道我们的开源项目。无论他是不是我的目标受众,他都会知道,有个产品叫WeFlow,是给前端使用的。这样,产品曝光的目的就达到了。
我们把整个软件的界面展示给用户看,把整个功能教程也放到readme里面。用户可以一条一条地去使用,不会有太多门槛。
在线下与开发者交流,跟主办方取得联系,同样可以起到推广的作用。
这个功能藏得非常深,需要admin账号登录到项目首页才能看到这些数据。数据呈现的是访问量,还有每一条链接来源于何处。这样你就可以看到,你在多个渠道发布的文章,哪些点击率更高,哪些渠道可获得更多的用户来源,利于后续开源项目的运营指导。
留存,留住旧用户。经过推广曝光之后,就会有一大批用户涌入进来。一旦用户使用了我们的产品,那他就是我们的目标受众,是产品的核心用户。我们必须想方设法留住他,解决他使用过程中遇到的问题。
对用户的反馈,即使不是你所能接受的,但不能表现出“爱理不理”的姿态。我们要把用户在GitHub提出的每条issue记录下来,解决之后进行回复。
开源不仅局限于代码。我们的定式思维是,只有代码才能开源。其实不是的,在前端项目中,我们完全可以把交互甚至产品阶段的草稿都对外开源。这样会有更多不同角色的人参与到你的项目中,为你添砖加瓦。就像WeUI整个设计稿都是开源的,对用户非常友好。平时在做一些交互稿的时候,我都会去参考,很方便,交互也很舒服。
当你的项目规模到一定程度的时候,就可以寻求跨界合作和产出周边产品。你可以基于开源项目生成一堆好玩的周边,发给项目的忠实贡献者,例如贴纸、文化衫。大家肯定也会非常的喜欢,感觉自己为开源事业做出了贡献。
考虑开源社区的国际化。我们的开源项目首页基本都用英语写,然后提供中文版的readme入口。这样全世界的开发者都能看得懂你的项目。
我们需要把用户反馈的需求都收集下来,并对需求的紧急程度做优先级排序,再考虑要不要做。
总的来说,要运营好自己的开源项目及整个开源社区,要“怀揣一个热情的心”,并保持一种激情,去迎接每一次改动。一个成功的开源项目,首先它必须是直击用户痛点的,其次也离不开好的运营方式,否则就没机会得到曝光了。这样,我们就能形成友好,有生命力的社区,产生该有的影响力。这就是我认为的,成功开源项目的必经之路。
点击可以直接访问WeFlow开源项目(https://github.com/Tencent/WeFlow)。 如果觉得ZedHuang的分享很不错,还可以关注他的GitHub账号(https://github.com/hzlzh), 向大神学习运营开源项目的技巧吧~
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。