程序员,你的路好走吗?(三)

原创 2004年08月25日 09:01:00

准确地译解市场信号的先决条件是进行基本的竞争者分析。
——《竞争战略

程序员这条路该怎么走呢?只要钻研好技术,肯定前途无量吗?如果技术不算出类拔萃,就肯定没有出头之日吗?

如果你还认同我的假设——“个人发展和公司发展有共通之处”,那么不妨问问类似的问题。一个公司只要生产的产品好,肯定能成为百年老店吗?如果公司无法生成一流产品,难道就只能等着倒闭吗?波特在《竞争战略》第三章开篇就提出“竞争战略包括为企业定位,以使企业区别于其竞争对手的能力具有最大价值”。这句话背后的假设是没有任何企业可以在所有方面领先对手,所以,能否充分发挥相对优势决定了一个企业的前途。

对于个人来说,也应该是这样吧。

同事关系的本质是什么呢?朋友?对手?或者兼而有之?他们是以怎样的方式、在多大程度上影响着我们的发展呢?在读过《竞争战略》第三、四章之后,我发现自己竟然从来没有认真地观察、分析他们。

“对竞争者的分析有四种诊断要素:未来目标、现行战略 [2]、假设和能力。”首先分析同事的工作目标是什么,是专注于技术,还是会转向管理,是为了权力还是名利。然而,期望与能够达到的实际值之间会有一定的差距,家庭是制约事业发展的因素之一,因为每个人都不得不将有限的精力分摊到家庭与事业上,更极端的词如“祸起萧墙”、“后院起火”,从反面强调家庭的影响是多么巨大;当然,一个健康幸福的家庭对事业的帮助也同样不可小觑。然而,家庭并非是事业之外唯一需要花费精力的地方,每个人都有自己的爱好,愿意为获得某种享受或技能而付出额外的时间与精力。我就是这样一个人,有太强烈的个人爱好,可以说在很大程度上减缓了我在编译领域的发展。我感到自己对OO的理解比较肤浅,希望能有更深入地了解,前一段就一直在读这方面的书。还没读出个眉目,这两天又开始读The Art of Unix Programming,为Raymond涉猎如此之广而深深地震惊,希望在完成这一系列文章之后,去亲身体验书中提到的项目与技术。我坚信这些努力必将带来长期收益,但是不得不暂时面对由精力分散引起的巨大竞争压力。

每个人都对自己的情形有所假设,这种假设可能正确也可能不正确。比如说某些人能够摆正自己的位置,另一些人狂妄自大、自不量力,就是这个意思。我就经常假设自己是个相对比较好的程序员,而对形式化的理论则比较头大,说实话,读同等水准的代码和论文的感觉简直是一个天上一个地下,可我从事这样的行业不读论文又不行,唉,怎一个愁字了得啊。除了对自身之外,我们对环境也存在这样那样的假设,比如“IT行业是在上升还是衰退”、“IT的高薪相对于付出来说到底算不算高”,以及“中国做IT的人里面究竟是圈钱的人多还是做事的人多”。不同的假设往往引出不同的行动,多多了解同事心中的假设,就不会对他们采取的行动感到诧异。

一个人的能力往往有很多种,而且可能发展的很不均衡。通常来讲有以下几种:核心能力、成长能力、快速反应能力、适应变化的能力,以及持久力。不同的能力在不同的情形下可以发挥各自的作用,这里不再赘述。

“市场信号指一个竞争对手的任何行动。”我知道同事们在做着各自的事情,可那又意味着什么呢?让我们看看波特在第四章里教给我们什么。

第一种发出信号的形式是“行动的提前宣告”,即丑话说在前头,引起那些可能会受到影响的人的注意。“正确地辨别一项预先宣告是抢先行动还是安抚行为是非常重要的。”如果按照宣告采取行动对己方越有利,对对手越有害,则是抢先行动;如果对己方获利不明显,且可以减少对对手的影响,则是安抚行动。做项目计划应该算是安抚行动吧,大家坐在一起,把自己下个release期间想做的任务讲一下,然后看看相互之间有没有什么依赖关系或者影响,最后尽可能安排一个对所有人影响都最小的check in次序。这种做事的方法大概和我们的项目有一定的关系,做编译器嘛,总也没个头,就是一个版本一个版本地升级,做到后来就比较自由,对哪部分感兴趣就可以做哪里,分配任务的时候很少,一般只是对新加入的同事才分配任务,等他们熟悉了就可以自己找活干了。

第二种是“在既成事实之后宣告行动或结果”。这么做无非是为了达到生米做成熟饭的目的,或显示超强的能力,令大家对其刮目相看。其实我一直就是这么想的,咱偷偷做点东西,然后拿出来让你们看看咱是何许人也!不过刚进公司就被教育,不能让老板感到意外,所以一直不敢造次,老老实实地汇报吧。当然我也知道,这事后宣告总显得不那么光彩,不像提前宣告,有利于合作,减少资源浪费。

第三种最经典——“竞争对手对产业的公开讨论”,“这种讨论可能有意识或无意识地企图使其它企业在同样的假设条件下运作,以使错误动机或战争的机会减到最小”。就是他想让你按照他划出的道道来走,你开始可能不赞同,可架不住他老说,谬误重复一千遍就成了真理。想起什么了没有?脑白金?黄金搭档?对于咱程序员来说,最熟悉的词就是“软件工程”了吧,不知有多少人多少公司为了各自的目的鼓吹着各式各样的开发流程,可是等像咱这样的程序员拿来一用,发现不但不像趁手的兵器,倒像一副束手束脚的镣铐。

还有一种是“交叉规避”,这让我想起了围魏救赵。你说我这不好?我觉得你那也不怎么样,凭什么说我?!这种传递信号的方式没什么正面的用处,主要用于表达不满但又不想造成激烈的冲突。

看看吧,有这么多方法可以用来分析我们的同事,你愿意为此牺牲一些做技术的时间和精力吗?


[2]书中没有展开讲。

相关文章:
程序员,你的路好走吗?(二)
程序员,你的路好走吗?(四)

相关文章推荐

十年程序员生涯总结,技术道路不好走!

【黑客联盟2106年08月16日讯】和一个朋友去了北京郊区的一家杂志社,看到的情形让我震惊:在信息产业最发达的北京,这家杂志社还用人工查对杂志订单和款单,看着那按省来登记的几大本厚厚的客户登记本,工作...

黑马程序员,Java基础知识三:面向对象

面向对象的概念 请说说你认为什么是面向对象?相信很多人在面试时都会被问到这道题,所谓”有一千个读者,就会有一千个哈姆雷特“,大家的答案都不尽相同,而我会这么说: 面向对象是一种思想,它是相对于面向过程...

Linux内核--网络栈实现分析(三)--驱动程序层+链路层(上)

本文分析基于Linux Kernel 1.2.13原创作品,转载请标明http://blog.csdn.net/yming0221/article/details/7497260更多请看专栏,地址ht...

opencv学习之路【三】——opencv运行别人程序

前言 如果你还没有搭建环境请看我前一篇《辉哥opencv学习之路【2】--环境搭建》  走好不送! 不管学习什么,如果能先运行起一个例子或别人的程序,心中一定会更受鼓舞,更何况我们可以从别人的代码...
  • pwh0996
  • pwh0996
  • 2013年05月12日 16:01
  • 3320

作为程序员,你应该知道的职场晋升之路

编者按:职业规划非常重要的一点是要学会角色分析能力。大部分人在长期的工作中趋于麻木,对自己的角色并不清晰。但是,在职者必须让自己有一些过人之处,让自己的价值和成绩得以体现并受到认可。《职场晋升路线图》...

C#程序员,想想走过来的路啊

C# 程序员工作刚开始工作时,更多的是

作为程序员,你应该知道的职场晋升之路(收藏)

作为程序员,你应该知道的职场晋升之路 编者按:职业规划非常重要的一点是要学会角色分析能力。大部分人在长期的工作中趋于麻木,对自己的角色并不清晰。但是,在职者必须让自己有一些过人之处,让自己的价值和成...

程序员,闯天下----一个文科生的10年编程之旅和创业之路

我是超级表格的创始人,现在为这个产品设计架构,写代码。 我的本科专业是教育学,硕士专业是市场营销。 在大学时没有上过计算机课程。毕业后开始自学计算机,做程序员,直到现在创业。说说我的10年编程之路吧。...
  • kongki
  • kongki
  • 2014年03月04日 20:20
  • 2794

微信小程序填坑之路(三)--上传头像

上传头像, 使用wx.chooseImage({})后 在使用wx.uploadFile({})结合起来使用.

CSDN日报20170612 ——《程序员,感觉技术停滞了怎么办?》

为了习得一门技术或技能,我们需要不断地练习,但如果一直在练习,却感觉不到进步,那么再努力的人生,也是枉然。...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:程序员,你的路好走吗?(三)
举报原因:
原因补充:

(最多只允许输入30个字)