IT外企那点儿事(20): 程序员的大侠情结

在接下来的两节中,我想谈一谈的是情商问题。

什么?情商?情商和程序员有关系么?我们是搞技术的,干嘛不深入的搞自己的技术,整天弄什么情商,中国软件业的技术氛围就是让你这种人弄坏的,没有愿意一门心思搞技术,导致中国软件业搞不出像样的东西。你要搞情商什么的,干嘛来做程序员啊,你去搞销售啊,去做业务啊,去做市场啊。

在很多场合下,只要一提有关情商,沟通,社交等人事方面的技巧,总有上述的观点出现。

然而在丹尼尔戈尔曼的《情商》一书中提到,研究者选择了贝尔实验室的一个部门对明星员工进行研究,他们发现,明星工程师与其他工程师之间的关键差异在于,明星工程师为了完成任务所运用的内在策略和人际策略。明星工程师工作顺利的原因在于,他们花时间与关键人物发展良好的人际关系,而关键人物在临时性特设团队中能为解决问题或处理危机提供关键的服务。

所以情商不但对于销售,市场类工作有作用,对于程序员的职业生涯,也是非常重要的。

从笔者的观察来看,我们身边的程序员,在情商方面都或多或少的存在一些问题,在他们身上,多能看到一只古代侠客的情节,如乔峰,杨过,令狐冲,或是水浒中的武松,多有以下的一些特点:

技术至上。也如侠客般的武功至上,期望能够练就独步天下的武功,从而可以不受任何羁绊。于是程序员们各处探讨,晚上钻研各种武功秘籍(各种砖头大的技术宝典),希望读完后能够功力大增,不但写起代码来如行云流水,而且说不定在某个关键的时刻,在大家对某个问题一筹莫展的时候,发现是自己秘籍中说到过的问题,于是上前三下五除二搞定,在众人崇拜的目光中走开,收到领导和同事们的一致爱戴,从而得到提拔(多像武侠小说中比武胜利,大家齐声欢呼,荣登掌门的情节啊)。无论是做哪个技术方向,他们总期望修炼成自己的独孤九剑或降龙十八掌。当因为沟通的问题,没有达到理想的结果的时候,比如其他模块没有很好的配合,比如和领导有分歧,他们首先想到的不是反思自己在沟通方面是否问题,如何解决这些问题,而是想到还是技术不够牛,如果同事有啥问题都要来请教我,他们还敢不配合我么?如果自己的技术牛到整个团队都靠我的核心技术来吃饭,领导还会不待见我么?如果我的技术如爱因斯坦,正如剑如令狐,拳如乔峰,相信遇到的这些问题都不是问题。于是他们又一头扎进武林秘籍中去了,殊不知这个世上有几个人能够成为爱因斯坦呢?

特立独行。也即不愿依附于任何人,任何公司。这是技术至上的必然结果。不像公务员要依附于组织,依附于领导,销售要依附于客户,而我们是本事在身,不依赖于任何东西。就像乔峰,杨过,令狐冲不属于任何门派,一切跟着自己的真性情来做,而不用顾及江湖的规矩,世人的眼光,就算大家都与我为敌,凭着我的本事,照样可以血洗聚贤庄。这些性格在程序员的日常工作中多有所体现。一旦和同事有矛盾,和领导有矛盾,便此处不留爷,自有留爷处,跳到哪里不是干活,有技术害怕找不到工作?这种想法在职业生涯的初期尚可,因为接触到的人相对较少,年轻气盛也多可以理解。随着从业时间越来越长,你会发现,江湖上的门派实在是少的可怜,像样的公司就这么几家,而且还有技术方向,遇到原来的同事和领导的概率相当的大,如果当年没有处理好相互之间的关系,后来再化解要难的多。如果想要从事管理工作,还是要依附于人,哪个领导不愿意提拔一个和自己关系良好,知根知底的人来做下属呢?而且还要依附于公司,管理不但要管人,对公司的产品也必须深入的了解,虽然对这个公司的产品如此深入的了解,放到其他公司就少有用处了,但是不了解,你又如何想到你的员工前面?当你的领导问及的时候,你又如何提出改进意见呢?

孤傲。通俗的说法就是,总是看高自己,看低他人。当有了一定的技术水平后,随着而来的便是自我欣赏。这一点在鲍鹏山老师新说水浒中,对武松的性格进行的惟妙惟肖的点评。武松凭着自己的一身本事,可谓极度自负,处处逞强。因为自负,上景阳冈前不听劝告;因为自负,初入牢营时辱骂差拨;因为自负,醉酒时尚可打败蒋门神。作为有了一定经验的程序员,你是否也曾经不听他人建议,鄙视同事的技术,甚至无视领导的决策呢?当你review别人的代码的时候,总是指指点点,要求完美甚至洁癖,然而当别人review你的代码的时候,你是否是不断狡辩,听不进半点建议呢?当你接手别人的代码,是不是怎么看怎么觉得差,甚至要重写,但是真正自己实现起来,却发现由于各种各样的现实的限制,有些地方确实是不得已而为之呢?当领导或者美国那面的架构师做完架构或者选型的时候,你是否觉得也就一般般,没什么了不起呢?这样你会被同事和领导孤立,造成严重的后果。要知道,武松不听酒家劝告,是应该被老虎吃掉的;武松骂完差拨后,是应该被杀威棒打死的;武松打完蒋门神后,是应该在飞云浦被杀掉的。这一切,都是拜托他的那对拳头,打死了老虎,被施恩看上躲过杀威棒,在飞云浦杀掉来杀他的人,若不是这对拳头,武松死了八回也有了。可是你的拳头有武松硬么?

正是因为程序员的这些大侠情节,使得程序员在自我认知和认知他人方面存在着偏差,一个普遍的现象时,同样的绩效的情况下,每个人都觉得自己做的更好些,别人做的更差些。正如一个人需要一面镜子才能看清自己,其实无论是自我认知和认知他人,都需要通过不断沟通来实现,只有认识到了别人到底是怎么想的,以及别人如何来看待自己,才能得到合理的认知。然而很不幸,很多程序员都比较封闭,这不是说他们不和别人交流,但是交流并不代表着沟通。在交流过程中,很多人往往以自我为中心,对于对方表达的观点或者对自己的评价,不但不能站到别人的角度去看(同理心),而且会根据自己的既有观点进行解读,甚至没有听完就进行反驳。从而交流变成了争论,最后的结果根本达不到沟通的目的,就像一个笑话中说的:如果你有一个苹果,我有一个苹果,我们两个交换后还是每人一个苹果,而如果你有一个思想,我有一个思想,我们两个交换后就只剩一个思想——我是对的,对方傻瓜。

所以,很多人认为,一个技术人员,除了单纯的技术交流(比武),对于其他方面的问题较难沟通。好在这种现象往往是无意识的,一旦让当事人有意识的察觉到自己在自我封闭,现象就会变得好转。一方面在平时的培训中,除了技术方面,让程序员对情商有所理解,一方面在出现为了争论而争论的情况下,管理人员需要介入,让双方的情绪有所平复,这样双方都会意识到自己犯了情商课中描述过的问题,然后各自平静详细的叙述观点,一旦对方能够心平气和的听得进去,方能实现了真正的沟通。
下载方式:https://pan.quark.cn/s/a4b39357ea24 布线问题(分支限界算法)是计算机科学和电子工程领域中一个广为人知的议题,它主要探讨如何在印刷电路板上定位两个节点间最短的连接路径。 在这一议题中,电路板被构建为一个包含 n×m 个方格的矩阵,每个方格能够被界定为可通行或不可通行,其核心任务是定位从初始点到最终点的最短路径。 分支限界算法是处理布线问题的一种常用策略。 该算法与回溯法有相似之处,但存在差异,分支限界法仅需获取满足约束条件的一个最优路径,并按照广度优先或最小成本优先的原则来探索解空间树。 树 T 被构建为子集树或排列树,在探索过程中,每个节点仅被赋予一次成为扩展节点的机会,且会一次性生成其全部子节点。 针对布线问题的解决,队列式分支限界法可以被采用。 从起始位置 a 出发,将其设定为首个扩展节点,并将与该扩展节点相邻且可通行的方格加入至活跃节点队列中,将这些方格标记为 1,即从起始方格 a 到这些方格的距离为 1。 随后,从活跃节点队列中提取队首节点作为下一个扩展节点,并将与当前扩展节点相邻且未标记的方格标记为 2,随后将这些方格存入活跃节点队列。 这一过程将持续进行,直至算法探测到目标方格 b 或活跃节点队列为空。 在实现上述算法时,必须定义一个类 Position 来表征电路板上方格的位置,其成员 row 和 col 分别指示方格所在的行和列。 在方格位置上,布线能够沿右、下、左、上四个方向展开。 这四个方向的移动分别被记为 0、1、2、3。 下述表格中,offset[i].row 和 offset[i].col(i=0,1,2,3)分别提供了沿这四个方向前进 1 步相对于当前方格的相对位移。 在 Java 编程语言中,可以使用二维数组...
源码来自:https://pan.quark.cn/s/a4b39357ea24 在VC++开发过程中,对话框(CDialog)作为典型的用户界面组件,承担着与用户进行信息交互的重要角色。 在VS2008SP1的开发环境中,常常需要满足为对话框配置个性化背景图片的需求,以此来优化用户的操作体验。 本案例将系统性地阐述在CDialog框架下如何达成这一功能。 首先,需要在资源设计工具中构建一个新的对话框资源。 具体操作是在Visual Studio平台中,进入资源视图(Resource View)界面,定位到对话框(Dialog)分支,通过右键选择“插入对话框”(Insert Dialog)选项。 完成对话框内控件的布局设计后,对对话框资源进行保存。 随后,将着手进行背景图片的载入工作。 通常有两种主要的技术路径:1. **运用位图控件(CStatic)**:在对话框界面中嵌入一个CStatic控件,并将其属性设置为BST_OWNERDRAW,从而具备自主控制绘制过程的权限。 在对话框的类定义中,需要重写OnPaint()函数,负责调用图片资源并借助CDC对象将其渲染到对话框表面。 此外,必须合理处理WM_CTLCOLORSTATIC消息,确保背景图片的展示不会受到其他界面元素的干扰。 ```cppvoid CMyDialog::OnPaint(){ CPaintDC dc(this); // 生成设备上下文对象 CBitmap bitmap; bitmap.LoadBitmap(IDC_BITMAP_BACKGROUND); // 获取背景图片资源 CDC memDC; memDC.CreateCompatibleDC(&dc); CBitmap* pOldBitmap = m...
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值