热门标签 | 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个多小时地被人包围让我感觉特别累。当我回家的时候,我甚至都无法接着去做重要的工作。我写不了代码。我做不了任何事。所有我想要的只是一个人呆着。

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


推荐阅读
  • Python字典推导式及循环列表生成字典方法
    本文介绍了Python中使用字典推导式和循环列表生成字典的方法,包括通过循环列表生成相应的字典,并给出了执行结果。详细讲解了代码实现过程。 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • “你永远都不知道明天和‘公司的意外’哪个先来。”疫情期间,这是我们最战战兢兢的心情。但是显然,有些人体会不了。这份行业数据,让笔者“柠檬” ... [详细]
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • 本文讨论了使用差分约束系统求解House Man跳跃问题的思路与方法。给定一组不同高度,要求从最低点跳跃到最高点,每次跳跃的距离不超过D,并且不能改变给定的顺序。通过建立差分约束系统,将问题转化为图的建立和查询距离的问题。文章详细介绍了建立约束条件的方法,并使用SPFA算法判环并输出结果。同时还讨论了建边方向和跳跃顺序的关系。 ... [详细]
  • 生成对抗式网络GAN及其衍生CGAN、DCGAN、WGAN、LSGAN、BEGAN介绍
    一、GAN原理介绍学习GAN的第一篇论文当然由是IanGoodfellow于2014年发表的GenerativeAdversarialNetworks(论文下载链接arxiv:[h ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 本文介绍了在Win10上安装WinPythonHadoop的详细步骤,包括安装Python环境、安装JDK8、安装pyspark、安装Hadoop和Spark、设置环境变量、下载winutils.exe等。同时提醒注意Hadoop版本与pyspark版本的一致性,并建议重启电脑以确保安装成功。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 解决Cydia数据库错误:could not open file /var/lib/dpkg/status 的方法
    本文介绍了解决iOS系统中Cydia数据库错误的方法。通过使用苹果电脑上的Impactor工具和NewTerm软件,以及ifunbox工具和终端命令,可以解决该问题。具体步骤包括下载所需工具、连接手机到电脑、安装NewTerm、下载ifunbox并注册Dropbox账号、下载并解压lib.zip文件、将lib文件夹拖入Books文件夹中,并将lib文件夹拷贝到/var/目录下。以上方法适用于已经越狱且出现Cydia数据库错误的iPhone手机。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • Google Play推出全新的应用内评价API,帮助开发者获取更多优质用户反馈。用户每天在Google Play上发表数百万条评论,这有助于开发者了解用户喜好和改进需求。开发者可以选择在适当的时间请求用户撰写评论,以获得全面而有用的反馈。全新应用内评价功能让用户无需返回应用详情页面即可发表评论,提升用户体验。 ... [详细]
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • 拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)
    转载请注明明桑AndroidAndroid5.0Loollipop作为Android最重要的版本之一,为我们带来了全新的界面风格和设计语言。看起来很受欢迎࿰ ... [详细]
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社区 版权所有