zoukankan      html  css  js  c++  java
  • 程序员的傲慢与无知

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

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

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

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

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

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

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

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

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

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

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

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

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


  • 相关阅读:
    面试总结
    java高级开发
    idea的快捷键
    微服务面试题目
    windows下jenkins的安装与配置
    微服务面试集合
    springlcoud中使用consul作为注册中心
    乐观锁和悲观锁
    volatile与synchronized的区别
    Java CAS 和ABA问题
  • 原文地址:https://www.cnblogs.com/liulun/p/7898913.html
Copyright © 2011-2022 走看看