孤独的程序员,你本应更幸福

上周,一位学生在英国《卫报》网络平台上大胆发文提问:“Facebook主页欺骗你了吗?”该文章出自伦敦时尚学院大一新生学生Libby Page之手。文中,她提到了作为大学新生之孤独;而在其孤独至深时,看到Facebook上朋友不断分享着各自的开心事的时候,此种孤独更是被无限放 大。“当你感到孤单时,”Page说:“本以为有一种方式可以减轻孤单感的,但事实这种方式却招致了恰恰相反的效果——它就是社交网络。”

时尚圈和程序员的圈子似乎八竿子也打不到一起,但是此种数码依存及孤独的问题,在后者中不但同样存在,而且更为严重——足足有10倍之多。

选择了程序员作为职业,也就意味着“娶了/嫁给了”自己的手提电脑。社交活动会远远地排在第二、第三位;而设计、安装以及一些让外行无法理解的任务会永远至上。对此,诸如“是不是在电脑上花的时间越多,我们就会越感到生活的不充实呢?”的话题又再次进入了我们的视野。

其实,在此类定义着程序员幸福与否的问题中,博主兼软件设计师J. Timothy King在三年前就有发表过看法。

他是这样阐释自己的基本原理的:

1. 压力会引起抑郁。

2. 完美主义者更容易患上抑郁症。

3. 孤独感会加强抑郁的程度。

作为软件设计师,上述这些东西,是暗含在工作职责里面的。

这 里,探讨了几个问题:程序员的工作性质会滋生孤单感吗?这种由电脑所加强的孤独感,是仅存在程序员群体里头吗?或者说,对于用毫无生气的屏幕交流去取代亲 密接触,程序员应该对此感到内疚吗?或者,最重要的是,程序员单打独斗的工作性质,会引致抑郁吗?如果是,又该怎样解决啊?

缺乏面对面交流的工作会影响幸福感?

一般认为,金钱的逐渐增长并不会带来幸福。有报告指出,在工作幸福度指标中,其实最重要的是员工与部门经理之间的关系。友好的团队关系,有助于成员相互传播“高兴”,也利于倡导公平。另外,以下的因素还会大大增强幸福感:个人目标明确,并可为团队“大”目标做出贡献;员工自主掌握完成任务的方式;以及部门经理不但既能与员工建立良好个人关系,自身又懂得技术管理。

既然如此,如果员工的工作环境通常是不怎么需要“面对面交流”的话,幸福还会存在吗?如后文所述,程序员就是处于此种环境中。

“按理,如果程序员本身带有点内向性格的话,相对于其他同职业者,我们肯定有理由相信前者更容易感到孤单,”英国伦敦政治经济学院社会政策系Paul Dolan教授的助理Elizabeth Plank解释说:“但是,(我们的研究还发现)有两种人群——孤单的人以及经受着社会焦虑的人,他们更容易在互联网上表达真我;因而相对现实社会,他们在网上论坛上更容易与他人建立满足自身要求的关系。”

“程序员容易得抑郁症”事出有因?

我们必须承认:程序员不算是最出色的社交代表;程序员也因其在前胸口袋装着笔夹子而被取笑;同时“要对书呆子友善,你以后很有可能就与其共事哦”的讽语也确实在大学联谊会堂中传播。但是,这些固有死板的形象就真的会导致他们心理不健康吗?

“我认为(程序员容易得抑郁症的说法)是被过分放大的,”数字咨询公司5 Star Lives成员员Tiago Braun反驳说。“我们都知道那些‘极客(geek)’的固有形象,而且交际确实是有点困难,但就仅此而已。我们的工作都是独立完成的,所以我们可以连续好几个小时都不用跟同事交流。但对我个人而说,我觉得这点是最不爽的。”

“程序员之所以被认为是不爱交际的原因,还有一点,就是他们需要用大量的个人时间用于学习新技术,专攻自己的项目,”在伦敦工作的合同程序员Samuel Molinari解释说。“相对于那些不懂‘互联网文化’而瞎指挥的‘善交际’的项目经理(他们不但搞到网页开发人员相当郁闷,而且他们有时的决策真是不敢恭维),还不如让一个内向的来领队呢?”

对于程序员创业者而言,上述如斯问题更是会成倍增加。5 Star Lives总经理Phil Peters说,尽管“程序员容易的抑郁症”是被过分夸大的,“但此说法的来源根据还是可以轻而易见的”:

1. 客户不能理解程序员所会碰到的问题,所以导致期望过高(有些期望根本无法实现);

2. 在社会经济条件不足的情况下,不断对团队和个人施加要求,以图能与外包团队的水平相比;

3. 不断依赖第三方内容(开发架构、函数库、模块等等),保持令人满意的创新步伐——这是一种无尽的挑战。

程序员深陷不断“自我否定”的模式?

如果正向强化能够加强工作幸福感的话,程序员要想更幸福,还需要跨过如下的门槛:

“要想成为一名出色的程序员,我必须采用如下的一种思维模式。但是这种思维模式却慢慢使我变得不开心。我知道在其他程序员那里——尽管不是所有人——大多数都是这样的。

那么,是何种思维模式呢?

关注消极否定的东西远远多于积极肯定的。

一名好的程序员,为何会有这种心态倾向呢?

我的工作流程就像下面那样。

1. 写代码;

2. 运行代码;

3. 得到错误提示;

4. 找出错误,然后返回第1步。

日复一日,年复一年,我都是这样做。对于自己创作的东西,老是去寻找毛病,从没思考过这样做的好处。这是一种加强消极否定的反馈回路。”

Molinari同意上述说法,同样他还提到老板与员工之间的交流时间太少是使员工沮丧的主要因素。

“无论是何种应用程序,每个搞开发的,都可以在不到一周的时间内搞定;但是,给到客户的将会是一件垃圾废物。在这行业,此情况经常发生。公司为了取悦客户,低估了开发应用程序所需的时间,导致程序员压力超级大,不断加班,周末也都得赶工。程序员处于如此匆忙的状态中,他们根本无法创作出优质程序。所以产品会有很多的错误和漏洞,客户自然不高兴了,然后又施以程序员更多的工作。”

“知道我想说什么吧?——也就是这样,程序员最终陷入了恶性循环。”

认知有“偏见”,抑郁症非程序员专属?

很多程序员提到,在工作中,能够不断“解决问题”是促使他们前进的动力之一。但如此的一个“充满问题”的职业,会不会真的把人的心理健康给损坏,并导致他们有抑郁症吗?

英国心理治疗学会Aaron Balick博士说,这其实是一把双刃剑。尽管程序员可能会在独立工作中得到满足,“但在他们人性的某方面(称作‘最下位功能’(inferior function)),还是希望与人交流接触的。如果“最下位功能”受到的刺激持续不渐弱的话,这就很有可能产生压抑感和焦虑感。”

“患有抑郁症的人都倾向于将人生看得灰暗,进而导致他们过滤身边的积极信息,只吸收消极的反馈,这同样也会导致恶性循环。而且,要爬出这个深渊不是那么容易的。”

但是,“如果硬要说程序员比其他人更容易患抑郁症的话,这肯定是夸大其辞的,”高级网页工程师Les Cochrane辩驳道。“任何人在任何时候都可有可能患上抑郁症;据我在开发领域工作超过10年之多的经历来看,程序员都是跟大家一个样的。”

“(同时),程序员的工作更适合那些‘能够进行逻辑思考,能把复杂的想法分解成小问题逐个击破,有时还得高强度地全神贯注于某一问题’的人。我想,这其实才是程序员的真正特性。”

程序员,你有你的快乐时光

“程序员是经常孑身一人,但是并不代表他们就感到孤单寂寞,”Plank助理解释说。“他们可以离开座位,可以主动营造身边的环境,这样就可以多与别人相处一起了。这都是由程序员自己选择的。”

对 此,Next PLC的系统分析程序员Thomas Mortimer表示赞同。“因为我性格老外向了,所以我是不相信(程序员都是内向或有抑郁症)的,”Mortimer说。“我会去跟设计师、书写产品说 明的人见面,找出他们真正想要的东西。我通常都表现得很友好亲切,而且我不会使用太多的行话。这何乐而不为呢?他们要是能弄懂里面的细节,不就更有助于交 流吗?”

尽管程序员身上的诸如完美主义、经常找碴和社交孤立等因素会容易致使他们患上抑郁症,但“程序员都有抑郁症”的说法肯定是某些所谓 的专家强加给他们的(写手们,有你的份么?)。犹记得上个夏天在跨媒体平台交流上,笔者和同事就在老板的三令五申下(通常我们都是“吃不离电脑桌,嚼只看 Facebook”的),与程序员共进了午餐。在平常随时可见的“饭不离手机”的就餐环境,那次,程序员几乎都没怎么掏出过他们的手机。看来,将程序员描述成不爱交际还真是有违公平呢。

其实,社交生活都是由我们主导的,时尚专业的学生如此,程序员也如此,其他圈子的也都如此。工作的时候需要单打独斗,并不会阻碍会议之后的畅饮鸡尾酒和周末的大快朵颐,甚至在午餐之后也都可以和朋友同事碰头闲聊下的。Balick博士说,每天只要交流上20分钟,整天的心情就会变得很好。其同事Sadegh Nashat则建议,(程序员)可以多参加同行、同职业的聚会;这样,在不要解释每个术语的前提下,交际就更加自由轻松了。

同 时,正如在程序员口中经常提到的“创意”一词,不但要将它用在工作上,而且也可用在交际上。Steve Jobs在整个Pixar的楼层只装一个洗手间(为了能看到所以员工)的做法也许会让人有非议,但是谈到内容创作的质量这点上,这家动画巨头里面的每个独 立工作的员工都啧啧称赞的。

“要是身边都是自己喜欢的人,连内向的人都会倍感开心的,”Dolan教授在其书作中写道。“我愿意下赌注说, 常与人相处大有裨益,因为事实就是这样。朋友就像是上等的葡萄酒,时间越久,越香醇。所以,为了培养与朋友的情谊,多花点我们宝贵的时间,都是物有所值 的。”

时间: 2024-10-26 15:02:17

孤独的程序员,你本应更幸福的相关文章

程序员必读书单(转)

  原文链接:http://lucida.me/blog/developer-reading-list/ 关于 本文把程序员所需掌握的关键知识总结为三大类19个关键概念,然后给出了掌握每个关键概念所需的入门书籍,必读书籍,以及延伸阅读.旨在成为最好最全面的程序员必读书单. 前言 Reading makes a full man; conference a ready man; and writing an exact man. Francis Bacon 优秀的程序员应该具备两方面能力: 良好的

程序员必读书单

关于 本文把程序员所需掌握的关键知识总结为三大类19个关键概念,然后给出了掌握每个关键概念所需的入门书籍,必读书籍,以及延伸阅读.旨在成为最好最全面的程序员必读书单. 前言 Reading makes a full man; conference a ready man; and writing an exact man. Francis Bacon 优秀的程序员应该具备两方面能力: 良好的程序设计能力: 掌握常用的数据结构和算法(例如链表,栈,堆,队列,排序和散列): 理解计算机科学的核心概念

最让程序员沮丧的 10 件事,你中了几枪?

软件开发是一个挺不错的工作,不过同时也像任何其他工作一样有着不好的一面.这里列出了大部分程序员对于写代码无法忍受的 10 件事. 对于非程序员来说,他们的工作看起来非常幸福.需求很高.待遇很好,公司提供各种各样的补贴福利等等.然而实话实说,虽然以上所说都不为虚,这份工作就像其他任何工作一样充满了让程序员们抓狂地扯下仅存的几根头发的烦恼.一天当中可以有好几件事能把一个普通程序员逼迫到处于崩溃的边缘. 基于来自在线论坛里真实程序员们的评论和投票,请这 10 个程序员最感到沮丧的事.如果看过之后,你还

大龄程序员没有年轻程序员脑瓜灵活

最近我过了40岁生日. 一个朋友开玩笑的对我说:"嘿,我想这个意味着你已经老的不适合再去编程了吧!",我表面上哈哈一笑,但心里却触动不少. 年龄歧视在我们这行里并不可笑. 就像今天用Java的兄弟沦落到这个地步一样,几年前,使用COBOL家伙被我们从心底里嘲笑其老旧的编码方式和缺乏新技术中的灵活性. 如今轮到我被他们嘲笑了. 也许你也是这样. 如果目前没有,我估计这一天也会很快到来. 你还会笑的出来吗? 是的,我想会跟我一样的. 我们这一行受年龄歧视体现在好几个方面. 大家都热衷于热门

C++程序员和Java程序员的差异

首先说明,这几年接触的最多的程序员就是C++程序员和Java程序员,这只是我自己的一点体会而已,一个人的眼光难免是浅薄的.不过,欢迎拍砖,也欢迎对号入座.   从对基础知识掌握的程度来说,例如数据结构和算法,C++程序员要比Java程序员牢靠得多.究其原因,大概是因为C++程序员需要经常自己实现那些项目基础设施,但是Java程序员大多拿来即用.公平地说,C++不是一门适合程序员初学者的语言,但是Java是.C++程序看起来确实要比Java 程序稍难懂一些,C++程序员往往思维更加严密.另一方面,

那些优秀程序员身上的共同特质

你是否发现,在我们身边的那些优秀程序员身上总是能找到一些共同的特质,这些特质并非与生俱来,但却逐渐在他们身上留下深深的烙印,这也使得他们变得与众不同,更成为我们心目中的佼佼者. 至少深入理解一门编程语言 学习编程和学驾驶很像,你很容易就能学会驾驶,比如,经过一个月的驾校培训,你就能获得驾照,但要真正成为一名优秀的司机,却必须经过长时间的驾驶实践才行,这将帮助你在头脑中形成一套完整意识体系以应对驾驶中所遇到的不同情况.编程也是一样,当程序员们作出那些优秀的程序设计时,看似自然,但它的背后却是程序设

程序员的十层楼

自西方文艺复兴以来,中国在自然科学方面落后西方很多,软件领域也不例外.当然现在中国的许多程序员们对此可能有许多不同的意见,有些人认为中国的程序员水平远落后于西方,有些则认为中国的程序员个人能力并不比西方的程序员差,只是整个软件产业落后而已.     那么,到底中国的程序员水平比西方程序员水平差,还是中国有许多优秀的程序员达到或超过了西方程序员同等水平呢?要解决这个问题,必须先知道程序员有多少种技术层级,每个层级需要什么样的技术水平,然后再比较中国和西方在各个技术层级的人数,就可以知道到底有没有差

再次写给我们这些浮躁的程序员

2010年初写过一篇博客(我们是一群和平年代充满浮躁与抱怨的程序员),一年过去了,社会好像更浮躁,也有网友问我这方面的问题,于是有了下面这篇文章,再次写给我们这些刚入行浮躁的程序员,如何成长,以下是列出了一些成长的心得,我们不必每条都去实践,但是优秀的程序员成长过程中总会实践里面的几条. 多做项目,多思考 不要害怕做事,刚毕业的同学最缺的就是工作经验,乱七八糟的项目能让你很快就了解了一个公司的业务与使用的技术,并且可以多接触同事与客户. 当你毕业后刚进一家公司时,如果主管没有把你安排到项目组工作

桌面系统和程序员

本周我出席了OpenStack峰会.在峰会上绝大多数应用部署都是基于Linux的,然而,大家使用的笔记本电脑最多的还是苹果产的.人们写代码,最终要把代码部署到Linux上,但在编码时却使用另外一种不同的操作系统. 最有趣的还是他们使用的开发工具.我在他们的背后看他们开发,看到的是命令行终端和浏览器.他们并没有使用Macs,他们的部署工具需要Linux 环境,他们之所以用Macs,是因为其它原因--漂亮的操作系统,ITunes,以及最炫的超薄设备.有些人在公司和在家里是用同一台电脑.他们在地铁里