程序员的傲慢与无知

导读:
我前面还写过一篇《程序员不适合创业》,惹来了很多非议;
今天在这里我提前说一下:
我就是程序员,我也在管程序员,我有很多很好的朋友也是程序员,
前面写《程序员不适合创业》的时候,有一个园友问我有没有创过业(那篇文章我就只回答了这一个评论),
我创过!而且不止一次!
我写这类文章就是在骂我自己!
如果你觉得对你有些许提示作用,那我就很开心了!
如果你也能像我一样,开始反思指导自己行动的思维逻辑,从而提升元认知能力,那我真是善莫大焉了!

“老子有技术,老子天下无敌!”

A公司要做一个运营管理系统;
客户给的需求不是很明确,但项目已经签了,不明确也得做;
于是几个程序员尽可能考虑将来的变化,做出来的东西还是挺灵活的,
有什么出格的要求,改改配置,稍微加点业务代码,也能让客户满意;
可是,时间是把杀猪刀!
经历过数次合同续签,无数复杂的业务,被仓促的追加进来,系统已经不受控了;
这个时候来了个新程序员,
理了理代码,发现一团乱麻,根本就理不清;
于是跟老板说:必须大规模重构!
老板早就看原来的团队不爽了,于是“临危受命”这个新程序员来操刀重构;
在改东西的过程中,新程序员去问老程序员:“这个流程引擎怎么做的这么糟糕呀!”
善良的老程序员会跟他说:“糟糕毛线!这是一个星期做出来的!你一个星期给我搞个更好的出来看看?”;
心存芥蒂的老程序员会说:“确实做的不好,还好你能来改,改好就好了!”
后面的结果,可能是这个程序员根本就搞不定这个重构工作;
也有可能搞定了这个重构工作,但时间一长,也被老板“多、快、好、省”的要求带到恶性循环中去了;

程序员有个非常关键的状态,就是:“没有什么业务功能是我满足不了的!”
(你可能从没说过这句话,但你想想,是不是潜意识里经历过或正在经历这个阶段呢?)
处于这个阶段的程序员,觉得自己手里拿着技术的“锤子”,看见什么都是钉子!
相信技术能改造眼前的一切,乃至于改造世界;
  • 这段代码放在这里毫无意义,浪费CPU,也没查到引用,直接删掉,肯定没问题!
  • 什么市场运营,不就是到处乱花钱吗?!一点技术含量也没有!
  • 那个做产品的,又要瞎哔哔了,把这么关键的功能藏在这种地方,脑壳里都是屎!
注意:说到这里,必须澄清一下;
我并不是反对程序员改造世界的意愿,
相反,我特别敬佩这样的程序员,真的是他们在推动技术的进步,环境的改善;
是他们创造了这繁荣的技术生态!
碰到这样的程序员,我大多数时候还是持鼓励的态度,甚至细心跟他们探讨执行的细节;

但值得警醒的是:
一定要放下“老子有技术,老子天下无敌!”的傲慢心态;
扎到环境中去,仔细触摸环境中的每个细节,掌握足够的信息之后,再动手改造环境;
也别因为一两次失败,就放弃初心,混到社会的大染缸里去,破罐子破摔,爱咋地咋地了;

“这家公司已经不能再给我足够的舞台和成长空间了!”

再讲另外一个现象
程序员进入一家公司,一两年之后摸清了系统的技术和业务;
脑海里就会浮现一个问题:“这家公司已经不能再给我足够的舞台和成长空间了!”
在加上这段时间内工资增幅也不是特别明显,于是就换工作;
换一家公司,可能是同行业,也可能是不同的行业;
学习新的系统技术和业务,再加上跟团队磨合,一两年之后,又出现了同样的问题!
(人力碰到这样的人,总是忍不住要问,“你前面跳槽好频繁呀,是为什么呀?”)
又进入了如前一个故事所讲的同样的恶性循环中;
直到年纪大了,心灰意懒,找一个相对清闲的工作,打发自己剩下的职业生涯。

这里最关键的一个问题,就是你要怎样的舞台和成长空间?
大部分程序员是要技术上的成长空间和更多的资源调配权力
然而一两年的时间,
你真的把先进的技术应用到你所从事的行业上了吗?
真的通过技术给产品、给公司带来了质变吗?
一两年的时间,
你真的做到了让领导和团队充分信任你?
让你的领导毫无保留的跟你共享一些信息?(团队中信息不对等是权力产生的关键)
让公司可以不计后果的让你调配资源去做你想做的事吗?

我想这么短的时间,要做到这些事,还是很难的;
造成这个现象的最关键的因素还是内心的傲慢!
傲慢会束缚你的眼界和思想,最终造就无知。

同样的澄清:我不反对你对未来的追求,我只是想让你再冷静一些,仔细思考一下,自己想要什么色彩的未来

“新手会告诉你有一百种可能,老鸟会说只有两条路可走”

碰到一个系统性的技术问题,
有些程序员,想到一个解决方案,
认真思考过,该方案没有任何问题,
于是就沾沾自喜,舍我其谁,马上动手去做了;
另外一些程序员,他们会想到很多解决方案,
于是沾沾自喜,挑一种自认为最好的方案,也马上动手去做了;
只有达到一定境界的程序员
才会坚定的跟老板说,只有通过A或者B方案,才能真正、彻底的解决这个问题;
前面两类程序员,可能永远也不会认为自己傲慢无知,
然而在当时那个状况下,他们肯定认为自己有能力解决这个问题
而且用自己的方案解决这个问题肯定是正确无误的!
软件学科是一门经验性的学科,
说白了,能力是踩坑踩出来的,
经验在这个行业的顶尖人才比拼中所占的比重是非常大的,
永远不要轻视那些持续投入,历经无数大型系统软件开发工作的老鸟!
你可能看了很多书啦,四人帮写的设计模式也读了好几遍了,说的很在理呀,但是又怎样呢?!

同样的澄清:我不是鼓吹资历!我是强调多实践!放下傲慢的姿态,多多实践!


posted @ 2017-11-28 08:52  liulun  阅读(6525)  评论(44编辑  收藏  举报