热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

程序员在办公室工作会趋向死亡?

人们说,在早期的创业阶段我们需要在一个大房间里一起工作。人们还说,这能加强合作。的确如此

人们说,在早期的创业阶段我们需要在一个大房间里一起工作。人们还说,这能加强合作。

的确如此。我们需要多方面的合作。但这样做的质量比较低,而且几乎完全没用。

继在家高效工作一年以后——4个重要的客户合作、1本书、1段视频课程,以及无数的博客文章——我又开始去办公室上班。

下面是我在办公室的一天:

10:12 am——中断刚写得顺畅起来的代码,匆匆忙忙去上班,

10:30 am——茶已准备就绪,Emacs也正在运行中,可以开始工作

10:35 am——“嘿,你检查过我的性能要求了吗?”同事来了

10:50 am——完成性能要求批注

10:50 am——开始完成我自己的任务

11:00 am——“嘿,你弄错了,那些性能要求其实是对的”,同事又来了

11:01 am——“哦,好,我先合并”,我说

11:05 am——“嘿,我刚才注意到你没有看过我的性能要求”,我对同事说

11:06 am——“我等下会做的,你先帮我解决”,同事说

11:15 am——找到与代码最配合的音乐,开始进入状态

11:25 am——“嘿,你能帮我看看这个吗?”实习生来了

11:40 am——到目前为止的2小时工作时间内,才写了2行代码

11:50 am——“你还记得上次我们说这里需要做什么吗?”我问同事

12:15 pm——经过与设计师、业务运维人员和另外两个工程师一番讨论,稍微理清了一点应该要做的事情

12:30 pm——他妈的,饿死我了

12:35 pm——停止工作,开始安排去吃午饭

12:50 pm——寻找饭友

13:30 pm——准备好提神的茶,开始工作

14:13 pm——“这个我已经做好了,你看是不是正确?”实习生问

14:35 pm——教实习生一些理论知识,并解释如何将理论应用到实际用例中,然后再准备一杯茶

15:01 pm——“嘿,那个实习生任务做好了没,我现在就要”,同事说

15:45 pm——最近的星巴克还有15分钟就要关门了,我饿了

16:20 pm—— 回去工作,与同事重新同步各自正在做的事情

16:50 pm——“我对你要做的任务有一个新的用户体验,要不要一起来讨论一下?”设计师来了

17:10 pm——停止和设计师的讨论,接着写代码

17:55 pm——快点干,要下班了

18:15 pm——在快速回答实习生的一个简单问题,以及和同事同步任务进展之后,离开办公室

这就是八小时的上班时间。其实却只有2或者3小时的零星时间真正用于编码。你还能说办公室办公好吗?

到底是什么地方出了问题:

1:口头沟通不能自文档

你注意到没有?在上面我的例子里,每一次的沟通时,沟通的双方都不记得早前交流的细节。也许有点夸张,但这是事实。

虽然没有精确的记录,但我感觉办公室的对话就是那样。 “嘿,我们上次关于X是怎么说来着?”,“呃,你上次说那个模块是怎么起作用的?”,“能再说一次那个配置选项是什么吗?”……

总是在不断地重复以前谈论的话题和内容。

当你用即时聊天工具或电子邮件或者其他自文档的方式谈论时,你随时可以回过去看看别人说了什么。相关会话是可以搜索的。

你可以做相关安排,这样即使两个月后,只要你需要,也可以即时参考。文本方式就很不错。

许多研究都已经表明,人的记忆是非常容易犯错的,我们对交流过的内容其实并不能记得清清楚楚。我们只是想当然地以为我们记住了。但在现实中大概80%的记忆是完全由我们自己加工改造成的一个故事。

在办公室中,我们抛弃了自文档工具,去依靠容易犯错误的人脑。打着为了加强合作的旗号。呵呵。

2:每个人能在任何时候和任何人说话

在上述并非全是夸张的例子中,你会发现的另一个问题是,临时会议全天都在发生。如果两个人交谈超过五分钟就算会议的话,那么我那天总共有六次会议。

6个会议啊,时间从5到30分钟不等。明显太多了。而且不在计划中。

真想咆哮:你妹的,究竟还让不让人好好工作了?

我并不是要责怪那些启动临时会议的实习生和同事。只是当我们一起在办公室中工作时,很容易发生这样的情况。

当有问题的时候,你很自然地会去问坐在你旁边的人。特别是当他们就是负责带你的时候。我的意思是为什么不问呢?这不是选择在办公室中工作最大的优势吗?

当然,你可以安排会议,但是没人会喜欢这样喋喋不休讲问题的会议,你说是吧?而且太死板,太劳师动众了。

即使你真的选择安排会议,也很难安排时间。如果有人正在思考问题,那就需要提前5分钟,又或者是15分钟以后才能开会。等大家都在了,才能开始。

但是如果是远程,以及使用skype或Hangouts通话,那情况又不一样了。规定什么时候开始就开始。分毫不差。

在办公室中,我们用混乱和漫无秩序取代了结构化和可预测性。打着为了加强合作的旗号。呵呵。

3:花了时间,却不能良好地沟通

接下来的问题是,由于沟通容易,所以大家变得不重视沟通。反正要交流的对象就在那儿。有什么不明白的,随时可以再问。

众所周知,当我们写字的时候,同时会思考。权衡要说什么,思考如何清楚地表达意思,并且可以回过头去编辑和改变已经写好的文字。

简而言之就是会重视和投入精力到文字中。

我不知道到底为什么比起说的话,人们会更在意自己写的内容,但事实确实如此。当我们需要写电子邮件的时候,必定会深思熟虑确保内容明确。尤其是当我们知道其他人得过几个小时才会阅读,并需要理解我们想要什么的时候。

这是因为我们每个人都知道语境、情感和肢体语言等等都可以丰富和充实我们的口头沟通,但这些却并不能很好地转化为文字。于是副作用就是我们在写的时候会更加注意措辞的严谨和明白易懂。

当然有时候面对面的交谈会更好。比如说要讨论一些高度互动的内容的时候,又或者需要考虑其他人的想法的时候。但是,这样的情况很罕见。

我能想到的书面沟通的唯一主要缺点是,写下来的东西相当于是一个承诺,会禁锢思想。如果有人错了,你告诉他们,他们错了,他们会坚持自己的观点竭力反驳。

同样的,书面沟通主要的副作用是,在写之前,需要相对比较长的时间去思考。

在办公室中,我们用混沌和乱糟糟的思绪取代了明确和深思熟虑,同时搞得办公室像菜市场一样喧闹。打着为了加强合作的旗号。呵呵。

办公室逻辑

不过上述所有无秩序的合作方式其实都有体面的解决方案。当与人交流时,你可以记笔记,即使看上去有点傻乎乎。你可以安排真实的会议,哪怕让人觉得太过兴师动众。你可以鼓励人们多想少讲,虽然很多人往往以自我为尊,很难养成这个习惯。

但是有一个无法解决的问题是所有你浪费在那里的时间。

如果是在家工作,办公室仅距厨房30秒的步行时间。而且厨房里可以备有所有你最爱的东西。你可以煮美味可口的食物,因为这不会打扰到任何人。而且你还穿着睡衣舒舒服服地过一整天。

当然,现在有的企业文化也允许在办公室里随意穿着。

但是去办公室还意味着需要与酷暑和严寒做斗争。不会有美味可口的食物。不能做饭,而天天出去吃又贵又不健康。并且带饭到办公室是一件很麻烦的事情。

上述问题也是可以处理和忍受的。我可以改变我的习惯,我可以在上下班的路上阅读有声读物,当我冷的时候,我可以多穿点衣服。

但是,最让我难以接受的是,自从我开始在办公室里工作,我不得不削减我已经很单薄的社交生活。整天跟办公室里的人打交道已经耗尽了我所有的能量。

我是一个内向的人,像这样一天8个多小时地被人包围让我感觉特别累。当我回家的时候,我甚至都无法接着去做重要的工作。我写不了代码。我做不了任何事。所有我想要的只是一个人呆着。

但是在办公室中很少会有独处的时间。呵呵。


推荐阅读
  • 本题探讨了一种字符串变换方法,旨在判断两个给定的字符串是否可以通过特定的字母替换和位置交换操作相互转换。核心在于找到这些变换中的不变量,从而确定转换的可能性。 ... [详细]
  • 在 Windows 10 中,F1 至 F12 键默认设置为快捷功能键。本文将介绍几种有效方法来禁用这些快捷键,并恢复其标准功能键的作用。请注意,部分笔记本电脑的快捷键可能无法完全关闭。 ... [详细]
  • 资源推荐 | TensorFlow官方中文教程助力英语非母语者学习
    来源:机器之心。本文详细介绍了TensorFlow官方提供的中文版教程和指南,帮助开发者更好地理解和应用这一强大的开源机器学习平台。 ... [详细]
  • Explore a common issue encountered when implementing an OAuth 1.0a API, specifically the inability to encode null objects and how to resolve it. ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • 计算机网络复习:第五章 网络层控制平面
    本文探讨了网络层的控制平面,包括转发和路由选择的基本原理。转发在数据平面上实现,通过配置路由器中的转发表完成;而路由选择则在控制平面上进行,涉及路由器中路由表的配置与更新。此外,文章还介绍了ICMP协议、两种控制平面的实现方法、路由选择算法及其分类等内容。 ... [详细]
  • 本文将介绍如何使用 Go 语言编写和运行一个简单的“Hello, World!”程序。内容涵盖开发环境配置、代码结构解析及执行步骤。 ... [详细]
  • This guide provides a comprehensive step-by-step approach to successfully installing the MongoDB PHP driver on XAMPP for macOS, ensuring a smooth and efficient setup process. ... [详细]
  • 探讨如何高效使用FastJSON进行JSON数据解析,特别是从复杂嵌套结构中提取特定字段值的方法。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 本文介绍如何利用动态规划算法解决经典的0-1背包问题。通过具体实例和代码实现,详细解释了在给定容量的背包中选择若干物品以最大化总价值的过程。 ... [详细]
  • 前言--页数多了以后需要指定到某一页(只做了功能,样式没有细调)html ... [详细]
  • 在哈佛大学商学院举行的Cyberposium大会上,专家们深入探讨了开源软件的崛起及其对企业市场的影响。会议指出,开源软件不仅为企业提供了新的增长机会,还促进了软件质量的提升和创新。 ... [详细]
  • 深入理解C++中的KMP算法:高效字符串匹配的利器
    本文详细介绍C++中实现KMP算法的方法,探讨其在字符串匹配问题上的优势。通过对比暴力匹配(BF)算法,展示KMP算法如何利用前缀表优化匹配过程,显著提升效率。 ... [详细]
  • 在Linux系统中配置并启动ActiveMQ
    本文详细介绍了如何在Linux环境中安装和配置ActiveMQ,包括端口开放及防火墙设置。通过本文,您可以掌握完整的ActiveMQ部署流程,确保其在网络环境中正常运行。 ... [详细]
author-avatar
blue暗紫天堂
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有