在软件泥潭中打滚——一个老程序员的感慨

休闲e站

当我回头看来时的路,突然发现,自己一不小心已经在软件行业干了8年多。这8年来写过不少程序,但是好像也没什么值得欣慰的作品。

我学的是机械专业,但是在自学计算机的时候,并没觉得写程序比修柴油机更难。一路走来,虽然也有很多快乐,但也经过了很多挫折和迷茫。当初对软件行业充满激情、神秘感,也有很强的自信心,可是做得越多,学得越多,就越觉得痛苦。这个世界有天才和白痴,也有很多平凡的程序员;有汇编、C++,也有Java、.net;有UML、CMMI,也有XP;有人说软件工程,也有人说软件工艺;有几个人的小作坊,也有上万人的集团。模式、架构、概念层出不穷,可大家仍在挣扎。

现在的程序员比我们以前有更多的工具,更好的设备,更便利的沟通方式。但是,大家仍在重复着走一条路——一条从菜鸟进入高级程序员的路。学习各种编程语言,各种语法规范,各种系统机制,学习前任留下的或多或少或好或坏的文档资料。不断重复地写着有bug的算法,不断写出杂乱但实现了需求,同时又极难维护的代码。

可不论怎样努力,程序员的世界在大多数时候仍是混乱的。需求没法明确、系统方案带有艺术性的抽象、设计无法真的实现、代码爬满bug、测试不知道如何开展、项目经理不知道系统到底啥时算完……oh,my god!但不论怎样,项目还是一个个被交付使用,而程序员们,依然在泥潭中与软件怪兽进行一场几乎无望胜出的搏斗。

有时想,如果有高手教,是不是就能少走很多弯路,能很快地从菜鸟成长为专业的程序员呢?可是,首先高手很少;然后高手也很少有空去教菜鸟;再然后高手也未必是好的老师;最大的可能是高手直接说出一个道理,菜鸟却听不懂。所以,似乎还是得慢慢来,第九个包子才吃饱,但前面八个也少不了。程序员的成长,也像打游戏练级一样,得一步一个脚印地往上爬。不过,如果能有高手指点,想必还是能事半功倍吧。而作为有志向的学习者,最大的要点是不断地思考,不断地问“为什么”,敢于挑战和怀疑,站得高,才能看得远。