这个阿里程序员,干了件很轴的事儿

简介:

我叫孤尽,是一名阿里程序员。

如果说,我身上有一点点和普通程序员不一样,也许是更轴一点。比如我觉得JAVA是世界上最好的语言,没有之一。

最近,我又干了一件比较轴的事情。

我因为这件事曾被大家群嘲。有人还好奇地发帖:孤尽是谁?怎么胆子这么大,敢给整个阿里集团写技术规范?

04998cd4a798245cbde12ad15e5651e03a31e7fc

插画师:赫柏

一个疯狂的主意

事儿得从两年前说起,有一次,我去参加一个跨部门的会议,开着开着,忽然掐起来了。

起因是两个团队使用的代码规范不一样,但都想让别人采用自己的。最后谁都说服不了谁,一个哥们气得嗷嗷叫,还有个哥们,恨不得要跳上桌子现场表演胸口碎大石。

长期以来,咱们程序猿虽然都靠武功行走江湖,但又各立山头。

大家的代码规范都不一样。我学降龙十八掌,你学蛤蟆功,还有人打还我漂漂拳,不按照一个“套路”出牌。单兵作战还好,遇到团体作战的时候,难免会因为要统一“出拳”的步调,牺牲掉一些效率。

想到这,一个大胆的念头冒了出来:为啥不做一个统一的规范出来呢,让大家达成共识呢!

这个疯狂的想法,我越想越激动,马上告诉了身边的小伙伴。

大家跟我想得一样,这个主意不但很疯狂,还很不靠谱。代码规范都是程序员们多年编码生的茧,岂能说改就改!

有人问我,谁给你的勇气,梁静茹全家吗?还有人说,规范又不是你的KPI!好好搬你的砖(黑话,指写代码)。

c4ebff0b5a5cc928158c063863708e7c39810b1d

摄影师:俱往

搬砖的故事

别说,我还真搬过砖!

初二的时候,我不好好上课,天天在学校打架,后来我爹把我揪回了家,一顿胖揍之后,让我去家里附近的窑厂搬砖。

搬了大半年,有个亲戚来家里做客,看了我一眼,说,这个娃脑瓜子好使,但当不了房梁,只能当房椽,不堪大用。

那句话激怒我了,后来,我就去找我爹,我要回学校。我爹平静的告诉我,晚了,认命吧。

我就不认,我打死都不认。

回了学校,别人一题做一遍,我做三遍。寝室都睡了,我打着手电筒还在看书,就这样,从年级倒数第一,到了期末,我爬到了年级倒数一百。

在我们的人生中,一定会有一个人告诉你,这事太难了,别干了。

这个时候,一定要对自己说一句话:对于别人来说,也许是很难,但我不是别人啊。

903105e21f14df4d166049f2cb67f344912b0b4e

摄影师:启一

失败99次之后

2016年3月,我在阿里ATA(技术同学华山论剑处)上发表了第一版《阿里巴巴集团JAVA技术规范》。

觉得好的人有之,觉得不好的也很多。还有人觉得我胆子太大了,去知乎发帖,问孤尽是谁,怎么敢给整个阿里集团写技术规范?

每次被群嘲,晚饭我就让食堂阿姨多给我打两个鸡腿,安慰一下自己。有批评,证明有关注,有关注,就有希望。

那个时候,一个部门一个部门的去游说,失败了一次,就试第二次。失败了99次,那也还要再试一次,没别的,凑个整数呗。

也许是精诚所至,也许是走了狗屎运,阿里技术大牛多隆给我的规范做了推荐,被一个技术大牛看到,还引发了业内的讨论。

阿里在Java后端领域支撑起全球访问量最大的服务器集群; Java代码构建的阿里双11系统订单处理能力达到17.5万笔/秒。如果能在这个基础上运营一套加强团队分工与合作、真正提升效率的规则,不就能撒豆成兵吗?

阿里巴巴CTO行癫说过一句话:“消防局最主要的工作不是灭火,而是为了不发生火灾建立很多规范。”

在这段时间,JAVA规范前后改了很多版,从我一个人,到越来越多的程序员加入。我们相信,当规范改到第七版,我们就能召唤神龙。

其实,我们每一个行动,都需要消耗勇气。开始前的犹豫,行动中的波折,被质疑时的动摇……记住,千万别去管天多高地多厚,反正管了你就赢不了。

fad22067c9918a5dd5a111f60f08d113b2a547db

第83行代码

今年年初,代码规范终于实现了。

现在阿里所有的BU都开始使用这个JAVA规范,所有人都开始奔着一个方向奔跑了。

今年,我和小伙伴又开始鼓励大家把写得好的晒代码晒出来,甚至被重新review。

这个过程,不是找茬,而是让大家看看好在哪里,不好在哪里,做得好的学习,不好的避免再次掉坑里。

连马老师都来回贴了,“感谢大家的智慧和努力,更感谢大家的分享和敬业精神。我可以骄傲的说,我可以一辈子不用懂代码,因为我有你们!!!”

现在这个晒代码的帖子,已经有5万多人围观,400多位技术极客们秀代码、亮肌肉。

通过算法,定期抓捕漂亮代码进行全员review,我们正在推动它成为现实。小伙伴们还给这个项目起了一个性感的名字——第83行代码

当然,最让我激动的,是食堂大妈终于记住我的花名了,有天我去打饭,她跟我说,还给我留了两个大鸡腿。

292a9fec5d39b9fac95490ebf301b6d61aec3947

阿里程序员们在做代码review

从阿里P5到P8

八年前,我笔试阿里失败,一气之下,我抱着自己的简历和一堆获奖证书跑到浙大准备安排面试的HR,准备霸王面。

我还记得当时说了一句:你们错过了我,就错过了一个时代。特别感激那个笑得好看的HR大哥,并没有因为我不知天高地厚而生气,相反,他破例给了我一次面试的机会。

在阿里的八年,从P5到P8,经历过很多挫折,也经历过晋升失败,虽然到现在,我还是没能改变一个时代,但我很开心,我给世界带来了一点点改变。

4e5c2f8cbac377e9606f2cb4c5ed8064fecdff8f

这是我的照片,怕掉粉现在才上

小时候,我们总被教育,别不知道天高地厚,要有自知之明。自知之明的潜台词,大概是遇到困难,记得认怂。

但有的时候,请保留一些“不管天高地厚”吧。

敢不切实际地妄想,才敢不顾一切地努力啊。


原文发布时间为:2018-06-21

本文作者:所长

本文来自云栖社区合作伙伴“阿里味儿”,了解相关信息可以关注“阿里味儿”。

相关文章
|
2月前
|
存储 人工智能 JavaScript
编织魔法与修电脑:码农征途的奇妙起点
编织魔法与修电脑:码农征途的奇妙起点
52 0
|
3月前
|
存储 C语言
工作中学到的一些小点
工作中学到的一些小点
|
8月前
|
SQL 消息中间件 搜索推荐
面试让人画正十七边形?面试官你长点心好不好?
面试让人画正十七边形?面试官你长点心好不好?
|
7月前
|
设计模式 网络协议 算法
|
7月前
|
设计模式 缓存 算法
花了30天才肝出来,史上最全面Java设计模式总结,看完再也不会忘
Design Patterns: Elements of Reusable Object-Oriented Software(以下简称《设计模式》),一书由Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides合著(Addison-Wesley,1995)。这四位作者常被称为“四人组(Gang of Four)”,而这本书也就被称为“四人组(或 GoF)”书。他们首次给我们总结出一套软件开发可以反复使用的经验,帮助我们提高代码的可重用性、系统的可维护性等,解决软件开发中的复杂问题。
101 0
|
SQL 设计模式 前端开发
面试官:深度不够,建议回去深挖。—— 你的回答,总绕来绕去?
从刚面试的问题回答中,能看得出你用了不少拙力背了不少题。直接拿这些技术点问,你可以回答。但同样是这些技术点,我换个场景来问用到了什么技术,你就像从没有听说过一样。当然不可否认你能通过背把这些内容记住也是一种能力,但作为招聘从事软件编程的码农来说,其实更希望是招聘那些通过实际场景积累下来技术经验研发人员,对各个技术点有张有弛,举一反三。
191 0
面试官:深度不够,建议回去深挖。—— 你的回答,总绕来绕去?
|
消息中间件 Kubernetes Cloud Native
记一次内部分享——瞎扯淡
记一次内部分享——瞎扯淡
记一次内部分享——瞎扯淡
【硬着头皮】 比较多个数的大小,麻烦也写得整洁点
【硬着头皮】 比较多个数的大小,麻烦也写得整洁点
【硬着头皮】 比较多个数的大小,麻烦也写得整洁点
|
存储 缓存 负载均衡
10大高性能开发宝石,我要消灭一半程序员!
10大高性能开发宝石,我要消灭一半程序员!
129 0
10大高性能开发宝石,我要消灭一半程序员!

相关实验场景

更多