{"id":874,"date":"2015-01-23T19:39:55","date_gmt":"2015-01-24T00:39:55","guid":{"rendered":"http:\/\/blogs.law.harvard.edu\/acts\/?p=874"},"modified":"2019-02-26T16:32:47","modified_gmt":"2019-02-26T21:32:47","slug":"offices-and-opens","status":"publish","type":"post","link":"https:\/\/archive.blogs.harvard.edu\/acts\/2015\/01\/23\/offices-and-opens\/","title":{"rendered":"Offices and Opens and Saving your Work"},"content":{"rendered":"<p>A thread picks up on reddit every so often about developers needing quiet and the evils of open floor plans.<\/p>\n<p style=\"padding-left: 30px\"><em>Many years ago I got a new job and during the interview process I was told I&#8217;d get my own office. There were several open offices, the person I was replacing had her own office. It was a sure thing. My first day I was grouped with the most junior developer of the group. I hated it. For a year or so I was the only person who had to share an office. (Yes, I see what I did there, this article is about me, not him.) After a week I was used to it.<\/em><\/p>\n<p style=\"padding-left: 30px\"><em>Then the dev team moved to a new location. Half of the developers got offices and half got cubes. I had a cube right out in open, offering no privacy. I hated it. I had to learn how to work with a laptop on the lap and I had to be okay with people coming up behind me and commenting on whatever I was looking at. It took a week or so, but I got used to it.<\/em><\/p>\n<p style=\"padding-left: 30px\"><em>Then the cube next to me opened up. I went in over the weekend and disassembled the wall connecting them. I reworked it so I had a double wide cube with walls toward the door. Privacy achieved. It was great. People could still come by and chat, I had room for a small table to have important 1:1s for discussing XML or Lost. But no one could lurk on me. I felt safe and open.<\/em><\/p>\n<p style=\"padding-left: 30px\"><em>Then the band broke up a and different people were slung in different directions. I was moved into the same situation I was in when I was hired. I was the only one who had to share an office. I actually made a stink. We were the only people sharing and there were other options. I deserved my own office, right? Probably. But I got stuck with this guy &#8212; and this is no reflection on him, he\u2019s great, but still, entitlement. And uh, peace and quiet?<\/em><\/p>\n<p style=\"text-align: left\">Anyway, this was around the same time I was getting into agile. Really understanding principles of software development. <strong>How things really can work well in imperfect environments.<\/strong> Software development, I was discovering, was 90% collaboration\/communication and 10% coding. I could go off and continue soloing my projects, or I could discuss what I&#8217;m doing more with my team and find better, and often faster ways of doing things.<\/p>\n<p>I came to the realization that the time of the solo coder was gone. An office for a developer no longer makes sense. Developers are the center of work. If they&#8217;re inaccessible, they may not be getting the information they need to be doing the work correctly. Which happens constantly. Developers will often run down a rabbit hole head first if it&#8217;s an interesting problem. Having an office, with a closed door, is a great way to not be in communication with a team.<\/p>\n<p>The argument most developers make is best explained in the following cartoon to the right:<\/p>\n<p><a href=\"http:\/\/blogs.law.harvard.edu\/acts\/files\/2015\/02\/interruptions.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright wp-image-875 size-large\" src=\"http:\/\/blogs.law.harvard.edu\/acts\/files\/2015\/02\/interruptions-266x1024.png\" alt=\"interruptions\" width=\"266\" height=\"1024\" srcset=\"https:\/\/archive.blogs.harvard.edu\/acts\/files\/2015\/02\/interruptions-266x1024.png 266w, https:\/\/archive.blogs.harvard.edu\/acts\/files\/2015\/02\/interruptions-78x300.png 78w\" sizes=\"auto, (max-width: 266px) 100vw, 266px\" \/><\/a><\/p>\n<p>The idea is that we work a lot in our heads. We are putting things together in an organic way. And when someone interrupts that organic process, work is actually LOST.<\/p>\n<p>Interruptions are a part of the job. How we deal with them defines the kind of software engineer we are. To the comic, I would liken it to working on a Word document and not saving. KNOWING full well that at some point someone is going to message you on a chat client that makes Word crash. And autosave isn&#8217;t working&#8230; okay fine, it&#8217;s not a perfect metaphor.<\/p>\n<h2>So how do you save?<\/h2>\n<p>The concept of saving work can be thought of multiple ways. Rough documentation is always good. Map out your thinking in a document, a google doc or a confluence doc. I create google docs for almost everything nowadays. Some of them end up trash within in day, but it\u2019s good to not lose my train of thought. I can stop anytime, continue it while I\u2019m walking or commuting, pop it out in a meeting that isn\u2019t relevant to me, whatever. You can also talk it over with a coworker. Bringing someone else into your train of thought can not only help you figure out a good solution, but also help in retaining the information. Building a collaborative relationship with your coworkers is paramount to succeeding in software development in the new world. <strong>The point is, interruptions are going to happen, so like, save often.<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>A thread picks up on reddit every so often about developers needing quiet and the evils of open floor plans. Many years ago I got a new job and during the interview process I was told I&#8217;d get my own office. There were several open offices, the person I was replacing had her own office. [&hellip;]<\/p>\n","protected":false},"author":4571,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[63996,111287,7563,111286],"class_list":["post-874","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-agile","tag-cubes","tag-interruptions","tag-offices"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/archive.blogs.harvard.edu\/acts\/wp-json\/wp\/v2\/posts\/874","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/archive.blogs.harvard.edu\/acts\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/archive.blogs.harvard.edu\/acts\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/archive.blogs.harvard.edu\/acts\/wp-json\/wp\/v2\/users\/4571"}],"replies":[{"embeddable":true,"href":"https:\/\/archive.blogs.harvard.edu\/acts\/wp-json\/wp\/v2\/comments?post=874"}],"version-history":[{"count":4,"href":"https:\/\/archive.blogs.harvard.edu\/acts\/wp-json\/wp\/v2\/posts\/874\/revisions"}],"predecessor-version":[{"id":879,"href":"https:\/\/archive.blogs.harvard.edu\/acts\/wp-json\/wp\/v2\/posts\/874\/revisions\/879"}],"wp:attachment":[{"href":"https:\/\/archive.blogs.harvard.edu\/acts\/wp-json\/wp\/v2\/media?parent=874"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/archive.blogs.harvard.edu\/acts\/wp-json\/wp\/v2\/categories?post=874"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/archive.blogs.harvard.edu\/acts\/wp-json\/wp\/v2\/tags?post=874"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}