稳定的要素

稳定的要素

泰岩网络工作室   吴旻

引言

    最近这一两年社会稳定工作不好做,经济发展的同时也积累了不稳定因素。大量的基层权力部门退化成某些行业、团体的代言人,甚至直接与民争利。官自说官话,民定不信其言。

    李鸿章说,其实他就是大清的一个裱糊匠。诚如所言,许多事情真的就是外表看着光鲜,其实经不得风雨!不糊不裱是不行的,光裱裱糊糊也是没有不出事的。

    那么,社会稳定需要的几个要素呢?网上的说法是:秩序、法治、透明度和咨讯公开等缺一不可。我在这里不是要谈政治,政治可以不谈,但不能不思考。政治是宏观问题,是微观问题的综合表现。

程序稳定需要几个要素呢?

    这个问题很郁闷。有人说架构很重要,显然木质结构的高楼不能与混凝土的高楼相比;有人说语言很重要,显然Java.Net等语言在程序的安全性与易用性上要大大优于C++等语言;有人说选择操作系统很重要,Windows下的程序就是没有Linux下的程序稳定;有人说程序员的责任心很重要,认真些,BUG就会少一些。

    接手过好几个别人留下的程序,基本情况都类似,先是领导和我说,程序的大部分功能已经实现了,只有几个比较小的BUG要修改,希望我尽快解决这几个问题,然后就可以让这个产品上线了。看代码,查思路,一般会用一周左右的时间,问题基本都一个模式。刚开始,设计人员只是想制造一辆自行车,一般这个问题不大,刚毕业的学生就能完成这个工作;接着领导说,把它改成摩托车,项目一般就会加入新人,大家在原来的基础上修修补补,裱裱糊糊,终于看起来像辆摩托车了,虽然是既不安全又不环保的那种,但它还是很像辆摩托车的,只要你小心驾驶,努力不让它出错,它还是能对付用的;领导觉得还不错,说现存做摩托车是没市场了,咱们把它改成家用轿车吧!一些人离职了,一些人留下了,又有一些人进来了,大家修呀裱呀什么的,经过无数的加班,轿车的样子还是出来了,但就是通不过国家相关标准,无法上市。然后我接手的,就是这样的轿车。结果一般都是我大刀阔斧的改架构,重构代码,其实那几个看似简单的BUG,都无法用简单的办法修改,要是能改,前面的人早就改了。再后来的结局,有成功上市的,也有因为预期的离实际情况太远而束之高搁的。

    还有一个项目是这样的,程序已经很像那么回事了,但是还有一些未实现的功能,包括包装与美化,当然还有BUG。前面的程序员借口有事,说什么也不往下做了,老板跟我说,这个项目的利润已经快没有了,就这么多钱了,你不光要做美化,还要解决他剩下的BUG。后来发现那个家伙乱用全局变量,乱用变量名,几乎到了想怎么用就怎么用的地步了,程序已经乱到看不懂的地步了。好在程序功能并不复杂,我在规定的时间内差不多重构了核心代码,才完成了任务。

    上面的两个例子都说明,裱糊程序是可以应付一下的,但几乎不能应付实际应用。

还遇到有些程序员,为了不让程序出错,就大量使用try{}catch{}这样机制,结果程序是不提示出错了,但到了某些地方,你预期的结果就是没有,程序死活就是没动静。try{}catch{}这种袜糊的办法应急是可以的,但全部代码都用这种方式应急,用王熙凤形容林黛玉的话说:美人灯一样,风吹吹就坏了。

    某公司的客户端是用.Net开发的,服务器端是用Java写的,但和同类公司的同类产品,其产品要么登录不上,要么时不时掉下来。最让人不懂的是,每台服务器连不到200个连接就不行了,客户端的某些图形处理速度也是奇慢,用了DirectX技术也不行。我相信这是算法的问题,服务器和客户端虽然不是理想中的最高效的语言开发的,但慢到这个程度,是超过我预期的!公司的解决办法是将Java慢慢移值到C++,并考虑引入云计算技术。我觉得公司的解决方案是没问题的,但问题的关键是写程序的人,如果人的执行能力不够,再好的架构也没用。换句话说,开发人员不能想着我的程序通了就行了,而要考虑压力测试情况下的反应。面对大量在线客户,将服务器的数量加倍是可行的,但远不如将程序的连接数提高一倍来得经济、高效。

程序员稳定需要几个要素呢?

    “二十一世纪最富贵的是什么?----人才呀!”

    越来越觉得,开发是一件和人的素质相关性太高的职业。这就像政府官员、教师、医生、军人、法官等一些行业一样,能力一般的人也可以做这些事情,没准也能做些事情出来。可是要想长足发展,要想面对风风雨雨的问题,靠这些平平常常的人,就不可能了。

    道理很简单,一个纸上谈兵的军官在和平时期肯定会升得很快,但在战争时期就会死得很快。

    能力强的程序员性格也强是很正常的事情。他们对公信力和正义感比其他人要敏感得多。他们大多相信,只要有公平的环境,他们的优秀就一定能让他们做出成绩来,就一定能赢得别人的尊重!非公平的环境让他们担心的不只是他们做不出优秀的程序来,更是担心他们会得不到机会,或者为他人做嫁衣裳。

    也遇到朋友和我讲,其实好多公司离开了那些能力很强的程序员,也没见得就如何如何。这话确实不假,对于一辆已经跑起来的自行车,想倒下也是没那么容易的。但是,如果公司想要发展,想要面对强大的生存压力,没有强人是不行的。反过来说,要想公司平稳发展,招一些很激进的员工也是不合适的。其实理想的社会也就是人尽其才,物尽其用。一个家庭请不请钟点工或者保姆,都不会饿死人,也不会因此而解散,但相应的生活质量,肯定会有所不同。

    换句话说,一个没有明星的足球队其实也能拿世界冠军,拥有众多明星的巴西队也不是每次都拿世界冠军。要不要顶级人才,要什么样级别的人才,是每家公司自己考虑的事情。公司当然希望员工性价比高些,人员稳定些为好些。但能吸引人才的,是无疑是那些有活力、处于上升期的公司。

    那么怎么才能留住人才呢?

合适的物质待遇。

物质待遇太低,人家只要有机会就会走,这个几乎没什么可说的。曾经有个程序员问我该不该离开他那家公司,我一打听,他干得是5000元的活,领的是2000元的工资。我没话说。技术人员挣的是辛苦钱,看着工资高些,但付出的都是实打实的努力,拉关系、走门路,实在用处不大。

    物质待遇太高,也会把人宠坏。前几天面试了一个程序员,他因为做的是美国公司的外包项目,所以工资相当高。但面试过程中,我除了发现他是个老油条外,实在看不出他有什么做技术的潜质。他工资高是得遇于他的工资比美国还是低很多,而不是别的什么。但这样的事情可一可二,很难再三再四。

高效的工作方式。

同样的待遇,如果一家公司的工作效率高于另一家,我相信很多优秀的人才还是愿意到前一家公司。明明一天干完的活,人家却偏要你陪他三天干完,这对能干的人来说就是谋财害命!他肯定觉得,我用剩下的时间休息一会儿不好吗?对于能干的人来说,如果基本生活已经满足,他想的就不再只是挣多少,而是多做了多少!在他的那个程度上,少做多挣已经是不可能的事了,他要想多挣,只有多做。

合理的用人管理制度。

合理的制度不是绝对公平的制度,而是一个让每个人都觉得,只要自己努力,就有可能成功的制度。制度一定是严肃的,制度也一定是灵活的;制度设计的初衷一定不是一点漏洞没有,而是充分利用漏洞得到的好处只有一个----大家一齐用脚为他送行。这是一个组织公信力的所在,不能让一些善于钻营的人占太多便宜,这样会使其他人觉得他怎么干也是白干。一个组织的公信力是组织安定的重要因素,也会造就一种实干的氛围:机会是有的,技巧也是有的,但光占别人便宜是不行的!

轻松团结的工作氛围。

人毕竟是社会性的动物,组织内的人员之间互不信任,会带来严重的内耗,就像互不信任的家庭解体是一件很正常的事一样。工作应该是严肃的,也可以是紧张的,因为工作不是每时每刻都严肃紧张的;但人际关系可以是!而紧张的人际关系就像腐败一样,会从内部瓦解组织!

结尾

    强调一下,我谈这些的目的只是说有些事情我们还可以做得更好一些。如果有人觉得其实他不需要我这些观点,他的组织也一样能运行,那也很正常。因为不同的组织结构是处于不同的发展时期的,就像欧美好多国家根本没有社会改革的内在动力,而在中国,这种呼声,无论民间,还是高层,都不绝于耳。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值