一个发展中的程序员心目中的阿里开源

想先简单说下国内程序员的开发历程,个人认为应该分成三代:

第一代是从零开始自己造轮子的远古程序员,比如WPS的求伯君,最初的程序员面临的就是什么都需要自己做,所能用的也都只有最基本的工具,甚至连高级语言都用不上。

第二代的程序员相比起第一代程序员幸福多了,最起码有了标准化的开发环境,但如果想学编程还是只能看看书,除了linux,kernel很少有机会能够读到值得学习的源码。

我们这一代程序员,则是生在最好的时代,但凡想的到的功能都已经有了开源的组件,自己需要做的,只是把不同的组件联系在一起,来实现理想的功能,大大提高了小公司或者个人开发的速度,降低了开发的门槛。

在开源的帮助下,技术的世界不再有知识的壁垒。

这最好的时代背后,汇聚着无数开源者的智慧结晶。例如国内知名互联网公司阿里——一家以电商闻名的技术公司,在开源世界却有着不一样的名声——开源大牛。阿里拥有着一大批具有开源精神,愿意分享技术和经验的技术人才,从阿里诞生至今,不断产出一个个非常具有影响力的开源软件,给整个开发社区带来了一股开放互助的氛围,这种开源的精神可以说是影响了整整一代程序员,也包括我本人。

 

阿里对于一整代程序员的影响

我本科就读于中山大学,在上人生第一节开发课程时,老师告诉我们:记得把nodejs源换成阿里的,因为阿里为了方便国内开发者,复制了一份nodejs源并保持每十五分钟与官方源同步,让更多的人更快速地安装想要的包。

在真正开始开发以后,也必定绕不开阿里在应用开发方面最有影响力的开源产品——ant-design。大家如果有细心关注过每个网站的设计,或多或少会发现随着时间的推移,如今的网站越来越趋同,交互方式也更加类似更加人性化。这一切的背后原因就是因为开源,准确的来说就是阿里的开源的影响。

几年前,大家的网站都是自己从头到尾负责搭建,从技术栈的选取到最后具体实现,每一步都很有个人风格,但工作量巨大的同时,无法避免的会引入很多错误,也没能从用户交互的角度去实现功能。这个时候,阿里站了出来,通过开源的方式推出一套标准的设计原则,改变了整个行业的前端编程习惯,降低了行业门槛的同时,也大大提高了技术的标准。

在此之前,国内都没有任何机构有能力去开源一个统一的风格,唯一接近的也只有google在安卓程序设计上的material design,但也只是提供了一种思路或设计限制,并且大多情况下和web设计的实际需求相差十万八千里。

而阿里的ant-design与此不同,它是工具化的开源,给所有有需要的前端编程人员,都提供了一套完整而统一的工具。

 

开源的本质是分享互助

开源,并不仅仅是开放代码的权限,本质的是其分享互助的精神。如果说开源只是节省了开发者的时间,那也太对不起开源者了。开源的最终目的不是提供一个方便的工具,而是知识的共享。

蚂蚁金服前端团队曾经翻译的一本本web开发的书,就构成了我们这一代程序员共同的回忆。这些无偿的翻译与分享,让web开发不再是一个高新科技,而是更多人都能更快上手的技能。

具体而言,一个程序员的技术累计学习路线中,能不能够熟悉语言相对应的开发范式,是能否开发好的应用的关键。但这一点,对于十年前的开发者来说是很奢侈的:他们往往没有途径去了解最新的技术趋势,也根本没有开源项目可以学习和参考,所以那个年代留下来的很多应用代码,到了现在都被戏称为“屎山”,根本没有结构和范式可言。而大范围开源以后,这样的情况很少再出现了。

以上,从我的亲身经历出发,阿里的技术人在开源领域做出了许多源远流长的贡献,也指引着我们这一代程序员,在享受开源的同时,也潜移默化地重视开源、成为开源的一份子。

我身边很多同学,在择业时拒绝了其他公司开出的更高薪酬,选择了阿里,很重要的一点就是内心中对于阿里的技术敬畏。这都是源自在我们技术稚嫩时,阿里的开源者给予我们指导,给我们种下了技术高要求的种子。

 

一些个人想法与总结

于我而言,能在学生时代就能享受阿里开源带来的技术成果,是非常幸运的。

因为开源,我在技术学习初期就树立起非常正确的对于技术的追求,并且以一种开放互相帮助的想法去分享自己的技术结晶和经验。

因为开源,我在校时就能直接体验到产业最前沿的生产技术,这也是难能可贵的无价之宝。

我,作为一个在校博士生,仍在摸索中的程序员,因为有阿里这样具有浓厚开源氛围的公司,而自觉幸运,也希望阿里能继续坚持,带动更多技术人与机构参与到开源中来。

 

                                                          

发布了6 篇原创文章 · 获赞 1 · 访问量 370

猜你喜欢

转载自blog.csdn.net/daxiang289757/article/details/103991327