最近读了内网上玉伯分享的一篇《开源有带给我什么》很有感触,这里记录下来。文章总结开源主要带来三点收获。
- 养成了高效工作的习惯,其中包括几个小点
- 文档优先。在文档优先这方面,老外比我们重视很多,有的项目可能还只是空壳,但里面已经讨论很多了,把很多想法思路,怎么做,可能遇到什么坑这些问题,通过文档和讨论,想的比较清楚了才动手写代码,这点和国内是很不一样的。以文档先行的方式去实践会有很大的收益。
- 异步协作。无论是Github上的issue,还是Google的Groups,都是异步协作的利器,异步协作比线下会议的效率高效很多。玉伯大佬也介绍到语雀的讨论区也借鉴了这些思路,“与其在钉钉上找我,不如发个issue给我,你可能会更快的得到反馈”。人们通常进行交流的手段就是听说读写,其中读和写是比听和说更高维度的手段,需要更多逻辑和抽象能力,更有助于问题的及早解决。
- 求同存异。GitHub上有些项目参与人数众多,大家参与讨论很激烈,如何在有分歧的情况下达成共识,以及不仅达成共识而是让社区往前走一步,这是需要一些领导力,以及一些意见领袖做出一些牺牲的。并且要意识到,在早期GitHub做社区的可能很多都是技术,比较纯粹,后来各种追求商业化以及个人影响力的都来了。所以我最后一点就是你要知人情世故,现在GitHub上很多开源类库你一看就知道是来蹭名利的,这种情况下笑一笑就好了,不需要去较真,否则会耗费很多无谓的时间,最少也影响心情。但同时你自己不要去人情世故,保持纯粹。开源社区也是个小社会,GitHub也没有大家想象中那么纯洁,有很多故事在里面。
- 学做产品
- 为什么要做?产品的客户是谁,差异化的价值在哪
- 为什么是我做?是我擅长的领域吗,为什么?
- 边界在哪?取舍定位 &生态 协同。之前接触过的一些开源项目越做越大,或者越做越复杂,这不一定是好的。我自己心目中理想的开源产品,是做到一定阶段,就不需要再做了。比如一些命令行小工具,很多年都没有更新了,但大家都在用,因为它们各种接口很完备,已经不需要更新了。做开源项目也一样,当你花一些时间设计好了,然后写完代码,就可以对整个世界说,我做好了,你用吧。当然,这是一种理想状态。
- 对事的热爱
之前自己有想深入投入到开源中去,但是坚持没多久就中断了,我觉得根因还是没有把他当成自己热爱的事情来做。
当把开源当做自己的事业的时候,感受会很不一样的,即使生活上很朴素,你也可以过的很开心。当你写代码的时候想着怎么写的更好,某个内存占用怎么降低一点点,某个性能怎么提高一点点,当你满脑子在想这些的时候,一些物欲得失也就没那么重要了,你突然就会变的很开心。
通过内源或者开源,去参与和主导项目,能够感受到这份热爱。持续去感受过几份热爱之后,整个人都会不一样的,面对许多事情,会活的更通透,更透彻。
很多人说工作要跟对人,但其实没什么关系,跟你工作的地方和公司也没关系,跟什么人不如跟随自己的内心。真正一个人在职场生涯往前走,应该找到的是你的mission和calling,还有找到对你有意义和热爱的一些事情。
最后自己再总结一下,开源这件事,应该当成自己热爱的事情来做,不要当成太名利的事情,从解决一个一个问题中获得成就感。并且需要持之以恒的去参与,当然这一切的前提是热爱。