Tomorrow never dies

仿彿又回到了2006年,流言纷飞,人心思动。

我们组向来十分稳定,居然在今年上半年有2人离职,虽说各有各的原因,但是对其他人的震动还是不可忽视的。自从年初停了前一个产品,兵分两路开始两个新产品以来,工作中一直弥漫着一种不正常的气氛,就好像我在情绪低潮时的那种狂躁的感觉,这一次却是以一种集体的形式爆发出来。

俗话说“人比人得死,货比货得扔”。如今才知道,原来我们前一个产品的代码质量还是相当不错的,即使我们曾对它有这样那样的不满;原来我们前一个产品的客户是如此的专业,尽管他们也提过不少苛刻的需求。说句心里话,我们组接了一个烂摊子,想知道有多烂吗?一位刚刚离职的同事,在离职前花了近两个月时间看代码,居然发现了十多个bug。请注意,他只是坐在那里用眼睛盯着屏幕,甚至都没有编译、更没有测试,这在我们前一个产品上绝对是不可想象的。

更不可想象的是,我们居然被要求放弃在高质量的代码上做开发,转而去收拾一个烂摊子。当然了,不是每个人都觉得它烂,那可是从Intel买来的啊?!想必是个宝贝吧,毕竟是花了不少人力,开发了几年时光啊!

在硬件公司(无论是Intel还是Marvell)里开发软件真得很辛苦,在一个人人都用git的年代,我们还在用ClearCase。管中窥豹,可见一斑。外行指挥内行,拍脑袋做决定的现象屡见不鲜。想当年在Intel的时候不是也有过Zero Bug这样轰轰烈烈的、自上而下的运动嘛!

眼看在Marvell的两年时间就要到了,恐怕那时会有更多的变动吧。山雨欲来风满楼啊!

machine learning based research compiler

将机器学习引入编译领域是一个很令人兴奋的消息,然而更令人激动的是,你可以这样做,而无需自己写一个编译器。

Milepost是一个基于GCC的研究项目,它利用机器学习可以在短时间内将编译器的优化能力提升到一个新的层次。

Within one month, Milepost was able to improve the performance of a state-of-the-art complier by 10 percent — something that would normally take several years to accomplish.

如果该研究成果获得实际应用,那么像我这样的编译器程序员很可能将失业,不再是“机器吃人”,而是“程序吃人”。

越来越厌倦开发商业软件,继续下去,注定要被某种程序吃掉。很羡慕做这个项目的那些人,如果他们的研究成功了,那么他们的成果可以被千千万万的程序员利用,而做到这些,(相对来说)只需要很少的编译知识,更不用自己去实现一个编译器;即使他们的研究不能得到实际应用,他们也没有把时间浪费在一些不相关的、或者不感兴趣的事情上面。

要不怎么人常说:“要做大事,必须要学会借助他人的力量”。一个人的力量是非常有限的,七八条枪就想维护两三套SDK,还想做的好,让人家都来用,简直是痴人说梦。不拥抱开源,只有死路一条。

程序员的黄金时光,就像女人的青春,是浪费不起的,不要让他们做垃圾项目的殉葬品。