“如果没有从事研发,学习自动化的我可能在装水表”( 四 )


不过 , 这并不代表个人就不能做开源产品 。 好的开源项目应该不需要在乎背景 。 以Vue为例 , 彼时靠着尤雨溪一个人支撑起来的Vue , 现在和Facebook的React、Google的Angular三足鼎立 。 只是相对而言 , 如果开源项目能够有大厂的背景 , 确实能在运营层面带来一些支持和影响力 , 但这不是决定性因素 , 产品质量才是最重要的 。
立足开源 , 最难的是解决客户核心痛点和持续维护 。 在Vue组件领域 , 梁灏表示 , 同类产品数不胜数 , 各家也都大同小异 , 所以谁提供的组件丰富 , 谁的功能多、Bug少 , 甚至谁更好看 , 就更受客户青睐 。
作为独立开发者做开源 , 最难的还是权衡技术的付出和收益 , 毕竟资金是一个开源项目能持久发展的动力 。
对开源开发者的建议
因此 , 如果想要进入开源领域的开发者 , 梁灏立足自身的经验 , 分享了几点建议:
首先需要明确好自身做开源的目的 。 如果是抱着兴趣做开源 , 不在意别人是否使用 , 自己用就好 , 那么自身投入的整个过程必然是最有意思和放松的 。 如果是以当下主流的兼职方式参与开源 , 由于也需要工资养家糊口 , 单靠开源来盈利 , 太困难了 , 成功的案例也相当少 。 在梁灏看来 , 除去那些KPI的开源项目 , 大多开源作者对自己开源项目还是很有感情的 , 所以牺牲自己工作外的时间做开源 , 并不会是一种负担 , 反而是一种享受 。 有的人喜欢逛街 , 有的人喜欢打游戏 , 有的人就是喜欢做开源 。
其次 , 面对日新月异的新技术 , 开源开发者也应该放平心态 。 回顾过往 , 在Vue和Webpack诞生前 , 开发网页都是jQuery一把梭 , 现如今 , 恐怕很多前端工程师连怎么操作DOM都已不会 。 梁灏表示 , Vue早晚也会成为下一个jQuery , 到那时 , ViewDesign自然也会被淘汰 。 永远都会有新的技术和框架出现 , 作为程序员 , 如果不想被市场淘汰 , 除了不断学习新知识 , 还应该深刻理解编程的本质和业务 。 技术永远是为业务服务的 , 单纯的为了改变技术而改变 , 是没有意义的 。
继而 , 梁灏也引用自己曾在《如何做好一个开源项目》文章中的片段以此分享给更多的开发者们:
1.不要盲目造轮子 。
每一个做开源项目的开发者 , 都是有目的的 , 如果你做一个开源项目没有任何目的 , 那你的目的多半是要造个轮子来提升下技术 。 一般来说 , 在决定做一个开源项目前 , 都要做市场调研 , 自身要很清楚地知道所做的项目弥补了同类产品的哪些不足 , 或者有哪些新的特性 , 因为它们是用户选择你的开源项目的主要依据 , 否则内容都一样 , 为什么不选一个成熟的呢 。
2.做了东西要用
如果你足够重视你的开源项目 , 应该亲自使用并且安利别人使用来收集反馈 。 你虽然是开源项目的作者 , 也熟悉项目的每一行代码 , 但你的使用经验不一定比用户强 , 只有用了才会发现问题 。
3.第一批用户
开源项目做好后 , 要获得第一批使用者 。 现在的环境 , 大多是公司或团队主导做开源 , 个人的很少 , 所以你的公司或团队自然就是第一批用户 , 做开源的主要目的 , 也是服务他们 。
4.生态
生态不是与生俱来的 , 当你的开源项目有了一定的规模后 , 可以考虑发展生态体系 。 完善的生态体系对于新用户来说 , 可以最快速搭建产品 , 减少学习和开发成本;对于观望者(正在决定是否使用的人)来说 , 更愿意选择生态完善的开源项目 。 所以 , 你的开源项目生态越完善 , 使用者也会越多 。