首页 > 推荐阅读

写开源项目有什么好处?

工作过的小伙伴都知道,程序员的大部分时间都是在增删改查,或者调用组件,真正需要研发和创新的项目实在是太少了。尤其是入职外包公司,那简直和流水线没有什么区别。

说白了,程序员也是一颗螺丝钉。

简单的工作重复做,可能会让你变成工匠,但是绝不会让你变成专家。如果你的编程功力不能持续提升,那么早晚都会遭遇职业生涯的天花板,甚至连 35 岁中年危机都无法避免。

正是由于日常工作的重复性,所以大部分程序员不得不利用业余时间来提升自己,比如看书看博客看视频,或者手撕开源代码,或者手撸开源项目。

如果你觉得前面两种方式比较无聊,实在缺乏耐心,那么可以试试开源项目,这是一个非常不错的选择。

在写开源项目的过程中,你会遇到很多问题,把这些问题通通解决掉,就能获得很大提升。

你的开源项目也不用很大,只要切中一个很小的需求就行,比如:
刚开始你可能一脸懵逼,不知道从何下手。没关系,尽管查资料,问同事,或者分析别人代码,慢慢地,你就会找到切入点,并掌握不同方案的优缺点。

几个月以后,你可能就会完成第一个版本,并在自己的 Demo 中测试通过。虽然这个版本比较粗糙,健壮性和兼容性都不好,但是那又怎么样,至少你已经起步了,在路上了。

不要嫌弃自己代码丑陋,把它开源到 Github 上,接受网友们的评价和建议,慢慢积累人气吧。

接下来,就是漫长的迭代时间了,你需要修复各种 Bug,完善每个细节,同时书写 API 文档,让网友们开始使用。

在这个过程中,网友们会不断给你反馈建议,甚至帮助你补充代码,慢慢地你就会积累一些人气,认识一些大佬,提升一些逼格。

如此坚持几年以后,你的项目就会比较健壮和优雅,在某个细分领域成为响当当的存在,甚至会有一些公司会在生产环境中使用。

开源项目是一种基础组件,它的目标是被众多程序员应用到生产环境中,所以每个细节都应该追求极致,既要减少资源消耗,还要保证运行效率,同时又不能失去易用性。

求追极致是一种很高的要求,你需要学习很多基础理论和底层知识,并把它们应用到你的代码中,这对编程功力的提升是非常巨大的。

等你的开源项目成功了,你也就封神了,至少在你所研究的领域是无出其右了。

这种成就和光环,是多少程序员梦寐以求的,它闪闪发光,终生受益!

如果你的面试官恰好听说或者用过你的开源项目,那基本就是闭着眼过了,而且待遇还非常丰厚。此时再谈学历和经验,那都是吹毛求疵了,你的实力说明了一切。

总之,写开源项目有很多好处,包括但不限于:

推荐阅读