除了写代码之后,我们做了这么一些事情,使得这个项目可以好好的运转下去:
我写了一篇宣传方案。扩散到相关的微信群里,发布在公号、知乎和其它写作平台上。
我通过社交平台微博、Twitter、Bilibili 等扩散了项目的信息。
我写了两篇技术实现原理。发布在 InfoQ、CSDN 等专业平台上。
我和我的小伙伴们,建了个微信群,以实现快速反馈。
我们鼓励开发人员为开源项目做贡献。
我们联系了不同的 DevOps 厂商,来共同发展这个项目。
我们以透明的方式不断公布、上线新的特性。
……
它的运作模式和我早期在 GitHub 开源的学习应用 Growth 几乎是一模一样的。大抵是因为我对开源的运作模式相当的熟悉。不过,从某种意义上来说,它还是一场关于影响力的游戏。
从我的观察来看,大部分的开发人员连 README 也写不了。因为工作或是业余开发的需要,我经常在 GitHub 上搜索到相关的项目,而这些项目,它可能:
只是把代码扔在了 GitHub 上
缺乏一个可读的 README
没有截图(对于 UI 项目)
除了看代码,不需要从哪下手
找不到任务的相关资料
对 issue 没有任何响应
……
tips: 这些技巧基本上都可以在《GitHub 漫游指南》上找到,这里就不详细展开了。而事实上 GitHub 官方也有一份非常不错的开源指南。读一读这些指南,再开展你的开源项目,你会发现开源真的很容易。
tips: 参与一个知名的开源项目,你就知道开源项目可能是怎么运作的。
在这个过程中,我承担了多个角色的责任:
开发人员。没啥说的
布道师。我要持续地写写文章,宣传宣传项目。
项目领导者。嗯,就是打杂的那个人。
市场人员。总之就是尝试去对接一些公司,以获得一些相关的案例,成为合作伙伴。
程序员鼓励师。是的,作为一个开源项目,大家都是拿业余时间来练手的,需要不断地鼓励他们。
代码评审者。大部分人是出于提升自己水平的目的参与开源项目,所以给他们一些建议,能帮助他们更好地成长。
……
tips: 所以,如果你缺乏这样的能力,你可以找找感兴趣的小伙伴来一起搞搞。
从某种意义上来说,开源是一种信仰。而信仰这种东西本身又是一种玄学。所以,多数时候,开心就好。
一谈及收益的时候,我们可能也就有了点结果导向的意思。当你开了一个坑,你会期望得到什么?
额外的收入
简历上新的一笔
一份新的工作
让别人觉得你很优秀
……
事实上,多数时候,你刚开坑的时候,你也就只能交个朋友了。除非,你做的项目特别优秀,并且绝无仅有,否则你只能通过长期的投入来获取收益。
tips: 如果你做的是应用,那么不妨以练习技术作为目的。
tips: 优先不要考虑那些悲伤的问题,比如 IE。谁要用 IE,谁自己来支持 [狗头]
tips: 开源最重要的是让自己开心
我是一个开源的狂热粉,而使用代码来创造事物又是我的乐趣,所以我会把时间投入于此。既然是如此,也需要划分一些时间来做专门的事:
平时修修小 bug
周末写写新功能
偶尔换个项目,换个心情
放松一下,什么也不做
不过呢,对于国内 996 的现状来说,大部分的开发人员是没有多余的意愿投入在这个领域。周末陪男朋友玩玩文明不好吗?周末陪女朋友逛街不好吗?
在信息同质化 + 越来越垃圾的今天,绝大部分的同类的项目都会迅速地走向死亡。只要别人在宣传上做得比你好,就有可能获得后发优势。一个典型的例子,就是前端框架 Avalon,框架本身非常好,但是却没有铺展开来。
当你觉得你做了一件非常了不起的开源项目,不要畏惧,你可以尝试:
到相关的技术论坛上发个简单的介绍。
写写文章,发布到一些写作平台上
寻找相关领域的专家,看看他们的意见。
……
关键时候,你的软能力往往比你的代码硬能力来得更重要。
开源最怕的一点是,你发现你辛辛苦苦做的东西可能没人用。所以,诸如 GitHub 这样的平台,提供了大量的度量数据,以帮助开发人员了解项目的情况。像 GitHub 的 stars、traffic 都是一些非常好的功能。
所以,不妨通过一些工具,诸如 Google Analytics 建立流量的度量等。
大部分项目,可能还没有到这一步就放弃了。
开源是一个目标明确,过程松散的运作模式。大部分项目都会有一个明确的目标,基于此,大家才能一起朝这个方向前进。
所以,你可能需要花点时间:
制定你的发布计划
更新你的 Todo
勾勒一个美好的未来
坚持你觉得对的事,你就会能得你要的东西。
如果你过于期待收益的话,那么你可能就不会开心。
THE ONLY FAIR IS NOT FAIR,ENJOY CREATE & SHARE!
欢迎加入 Ledge 的开发,你要你感兴趣就可以加入开发: https://github.com/phodal/ledge。除了正常的开发开发(Angular 框架),你还可以:
帮助我们国际化 ledge
完善首页的周期表
提交 DevOps 案例
帮助完善相关的内容,如智库、检查清单等等
……
除此,我们正在提取 ledge 框架用于构建其他的知识库,你也可以加入主开发中。