Cornell did a study of open plan awhile back that you should all read. I posted it here: https://news.ycombinator.com/item?id=7507404
The misunderstanding here is that it's just about serendipitously "overhearing" other conversations.
1. Open plan makes it easier to ask questions. Those are "disruptions", yes, but what the Cornell study found is that in open plan it's actually easier to "read" a person and see if it's an ok time to ask a question, and to quickly reply or say ask me later, and so forth, to efficiently manage those disruptions. Compare that to offices where you are much less likely to ask questions, knock on a door, etc., and where when it does happen it may turn into a much longer disruption.
2. They found it also gives us more courage to ask potentially "silly" questions. Which can be the genesis of good ideas and help us get unstuck, contributing to team creativity and productivity.
3. They noted that developer reactions to office plans are often biased towards maximizing personal productivity in order to maximize (short-term) personal benefit, whereas the company benefits from a balance of personal and team productivity. That's a fancy way of saying we'd rather spend our time coding than helping others, so we may not instinctively appreciate the benefits of open plan as much. Which I think is the case here.
In 2011, the organizational psychologist Matthew Davis reviewed more than a hundred studies about office environments. He found that, though open offices often fostered a symbolic sense of organizational mission, making employees feel like part of a more laid-back, innovative enterprise, they were damaging to the workers’ attention spans, productivity, creative thinking, and satisfaction. Compared with standard offices, employees experienced more uncontrolled interactions, higher levels of stress, and lower levels of concentration and motivation. When David Craig surveyed some thirty-eight thousand workers, he found that interruptions by colleagues were detrimental to productivity, and that the more senior the employee, the worse she fared.
Edited to add: the study by Matthew Davis referenced above is behind a paywall; if anyone can actually access it, I'd be curious to know for sure if this summary is accurate/correct.
I am one of those people who get distracted easily and am a new programmer. Working on a Scrum team of less than 10, I found this has grown into being very productive for the team and my growth, as I pick up the conversations, I am actually learning things and I throw my music on if the chatter is unproductive. I think the amount of dev's in the pit really can max out and that is what the writer of this article has probably experienced.
However, google search turned up that leeds link you probably came across in google scholar (or at least I did), and while the link appears to be dead, google has kept a cached version: http://webcache.googleusercontent.com/search?q=cache:Im7GHQR...
My personal take. Learning a craft is a lifelong endeavor. Experience builds. The path is organic & fractal-like.
If someone is senior, they have a context of experience that a more junior person does not have. Their brains are literally wired differently.
It's less satisfying to be around ignorant (I don't mean judgement, just lack of context) people. Especially ignorant people who affect how you do your job.
Being a senior person means there is an aspect of leadership involved. You mentor & lead the more junior people in your craft. However, masters don't spend most of their time mentoring. They spend most of their time growing their own personal craft. They try to instill this process of continuous improvement onto their students.
One of the most fascinating observations by Cornell is how self-interested employees are biased towards maximum individual productivity to the detriment of team productivity. I wonder if the 100 other studies controlled for that. Cornell is a pretty reputable institution. You know what they say.. 1 great study is worth 100 good ones.
I believe that there is an unplanned unorchestrated ongoing attempt throughout the industry to prevent programmers from being seen as professionals. Reverse dress codes (you'll get odd looks and questions if you aren't dressed casually, but instead throw on a suit or even just a tie), cubicles, and open office space are all ways that this is done.
I think it's more likely that open floor plans cost less per square foot or seem productive.
Most people don't bother trying to dress that way so they never encounter the pushback and therefore never even realize that there is an unspoken rule in place. I recommend that everybody try to go to work on a monday with at least a white button up shirt with long sleeves and a tie. I think many of you who work places "without" dress codes will find the experience to be illuminating.
When I tried it, somebody from HR had a nice "chat" with me, explaining that the corporate culture was for engineers to dress casually.
I'm not sure how I would respond if someone said I was not allowed to dress nice. It just seems like a completely foreign concept.
When we moved to our new building, interior spaces were meeting rooms. Next layer out were manager cubes. Final layer out were the worker cubes, everyone faced the big floor-ceiling windows.
This actually had a drawback. There were cunning metal shades over the windows to keep out the sun. These worked great to block the sun. They also collected snow. Which, thanks to wind, and sun, melted into in a slant, like a roof. Our first Thaw in that building and the ice/snow ...
BONNNGGGGG through the building frame as the snow slides off and the shade vibrates like a giant tuning fork.
A few minutes later BONNNGGGGG as the next in line sheds snow.
And so on. This went on all .. day ... long.
I routinely gain great value from speaking to the developer and product guy on either side of me, both of whom are immensely expert. The salespeople are fortunately far enough away and quiet enough that they're not a distraction.
1) I don't want people to be able to see me all the time. It's extremely nerve-racking and I feel like an animal in a zoo. And from my experience, people usually don't care whether I'm deep in some code or doing something less intense - they come over anyway. And people don't care whether their question is important enough to interrupt! As soon as someone taps my shoulder or calls my name, my concentration breaks completely and it takes me another half hour to get it back. Having offices makes people think harder and try to figure out the answer by themselves before going to someone else.
2) See above. The ratio of stupid questions that could have been resolved by Google or just another 2 minutes of thinking, to questions that ignited an interesting discussion is about 9 to 1.
3) How much work is going to get done by 'helping others'? 80-90% of a developer's work can be alone. Team productivity of course is important, but in development teams, this is really just the sum of individual developers' productivity.
Unless there is an issue and things get heated, then it helps to sit people down in a room together. But this (should) happen rarely.
I have the unique experience of having been both in offices and an open floor plan (most recently) for the same company. I can unequivocally state that I was more productive with an office. Junior devs had to measure the opportunity cost of coming to my office before asking me a Googleable question, I'm fairly certain one of them doesn't even use Google anymore.
I don't feel like this at all. In fact, that seems like an unhealthy reaction to me (so apologies for being judgmental). May i ask if you feel like this in other environments where there are other people around? Like, in a restaurant, or on public transport?
At work, people all know each other. Inevitably, you get nosy and annoying people who constantly check out what others are doing and peer into their screens.
That's great for a single team all working on one thing - but I do not see the open plan office as a series of nicely appointed open plan offices for 4-8 people with sound-proofing.
I have worked in open plan offices with hundreds of people in the same open-plan - hearing birthdays, laughter, horror, lunchtimes and socialising that have nothing to do with me personally or professionally.
Cornell may have found that it is useful to know what the rest if your physically co-located team is working on - yes - but not hundreds of others that I need to filter out too.
If serendipity is valuable to you as a company, throw a Wednesday afternoon mixer and expect groups to form and make something new to try out. But give them team rooms for that wednesday.
I am a big fan of "team rooms", and a big big fan of remote working and always on video. But living in the middle of hundreds of others just teaches us to ignore everyone.
When I started programming years ago I had to wear a tie to work, and shared an office with one other person. I've since worked in large open plans, at home, in cubes, and in what would be called team rooms with everyone from the intern to the boss sitting within earshot.
IHMO, team rooms really do work. They help facilitate communication while not bothering those working with undue noise. If the team is under a crunch then naturally non-work conversations are kept to a minimum because the whole team knows it is crunch time. When there is more free time then the team adjusts accordingly.
Ad-hoc team rooms sound like a very good idea though.
This is an important point. For many of us who have worked in startups, "open office plan" really just means "team room". I enjoyed working in open office plans in smaller companies since it basically just meant 5-10 engineers sitting in the same space.
Last year I worked for a mid-size company of about ~200 employees, most of whom were crammed into a gigantic factory like space with endless arrays of fluorescent lights lining the ceiling.
The experience was among the most distracting I can remember. This was in no small part due to having to overhear loud conversations between people in different departments, such as marketing and sales, which require much more verbal communication than engineering. if I can help it I will never work in a similar environment again.
the reason startups do open plan offices is because no one is concentrating on managing the culture of the startup as it grows. Open plan is then I suspect both cause and symptom.
A campaign for team rooms is needed
Spending a day in the noise, getting distracted, and simply unable to get your head down and finish the one task you're assigned to gets highly annoying and draining. Which has negative effects on that person and the team as a whole; poor mood (and attitude by extension), bad work, and a higher inclination to simply pack up and leave.
I work in a ~20 people open floor plan; fridays feel the most productive, because it's the quietest. Some colleagues feel hugely relieved after spending a day working from home and, by their own words, getting some work done for the first time in forever.
tl;dr we're individual people, not team productivity numbers.
At the large company, I can't generally here what's being discussed by folks in the next group over, except maybe as low background noise. I don't generally get distracted and I am easily able to grab my teammates' attention when I need it.
I would love to be able to sit around my coworkers while I answer emails, catch up on the projects going on around me, bounce ideas off of people, etc. and then have a designated, quieter space to do "heads-down" work.
Why can't you have both?
Trying to get my company to make this happen...
So just for the off-chance that someone could ask me a question, I have force myself to wear headphones every day just to get any work done? What the fuck?
Maybe most people are not like me, and are not distracted by the moving, talking and noise making of other people around them -- but I am. I need as much silence as I can get.
What is absurd about this is that some companies make special "quiet zones" for people to go to and think, which means they implicitly admit that the actual work environment is not conductive to thinking.
You want to ask me a question? Send me an IM.
I've become convinced the best solution is the one from peopleware: 2 to 4 people offices, with a door.
1. Being able to "read" someone visually helps in determining whether it's an ok time to interrupt. "Unexpectedly.. more visual contact actually contributes to fewer unwanted interactions, not more, by changing not so much the frequency as the timing of conversations."
2. More frequent social interaction builds more trust. People felt more comfortable asking for help.
3. A lot of information is acquired through something called "tacit learning". That's info that's never written down that you pick up by observing others. You may not even know to ask about it or have an opportunity. Open plan greatly helps the spread of this.
4. Most damningly, it notes that self-interested developers are biased towards individual productivity more than team productivity. This often leads them to undervalue the benefits of "disruptions".
I don't mind being interrupted by someone who wants to ask me a question. The explicit interruptions are not what makes the open office a painful experience -- it's the background noise that comes with it.
This is why many people work with headphones on. You shouldn't be listening to music just because you need to concentrate on your work.
> 2. More frequent social interaction builds more trust. People felt more comfortable asking for help.
Surely you could think of better ways to build trust between team members other than sitting everyone in an open space?
> 3. A lot of information is acquired through something called "tacit learning". That's info that's never written down that you pick up by observing others. You may not even know to ask about it or have an opportunity. Open plan greatly helps the spread of this.
I don't want to be observed while working. I'm not a lab rat.
As for not wanting to be observed.. of course you don't. It's not in your self interest. But it is in the interest of team productivity to promote tacit learning. Let other people more readily learn how to do what you do, your tips & tricks, the little things not written down and formally taught.
Typically the more senior you get, the more important it is for you to allocate time to help others. A place I used to work at codified this. You had to have X percent helping-others time and X grew as you rose in the ranks. That's precisely because of the important of team vs. individual productivity.
This is interesting, actually. Why is being interrupted by IM not as bad? I agree with you, it doesn't seem to be as much of a problem. But why? Is it just that the interaction isn't quite real-time -- I can ignore you for a few minutes if I'm in the middle of something?
Maybe someone should try the combination of private offices and a local chat server, to see if that's the best of both worlds, concentration and collaboration.
That is exactly why.
The point of the post you are replying to is that the "constant interruption and frustration" enables other developers to be more productive, raising the overall productivity of the team.
Also, you probably remember the times when you were interrupted and it was annoying strongly, but do you remember the times you interrupted someone else and saved valuable time?
The data showed that younger workers liked these kinds of offices more than older
workers. The reason was instructive: they felt they could learn more from their
“officemates” in this kind of office. This makes sense, since in interviews a common
reason for wanting to join a company was the opportunity to work with “great” people.
Having great people around, whom you rarely see and even more rarely talk to, is not of
real value. Respondents talked about the much greater learning opportunities in a more
open environment. Older respondents, in contrast, found it harder to concentrate and
more disruptive. It also seemed the case that older respondents were simply comfortable
with how they had learned to do things over a number of years, and did well.
Hmm, that's one interpretation.
Here's a simpler interpretation.
Younger workers generally aren't going to know what they're doing and need to ask questions, so being able to ask questions is important to them. Older workers already know what they're doing and don't need to ask as many questions, so they don't really get anything out of it.
This BTW, squares exactly with my experience. All the benefit of open floor plans go to employees with the least expertise at the expense of the employees with the most expertise.
If you're the most talented, expert employee in an office, in general there's not going to be anyone in the office that can answer your questions, so an open office doesn't buy you anything.
If you are not being compensated proportionately, that's a separate issue entirely...
the question though is who needs does it make sense for the business to cater to?
also, from my experience, sometimes getting good answers to those early questions makes young workers exponential more productive going into the future
My initial thought is the best setup would really depend on the task.
For really complex tasks I would guess that you'd want a more closed environment. As a concrete example, if you're trying to make a theoretical breakthrough in cryptography, I'd guess you need an environment where you can seriously concentrate.
For maybe a less complex task, one where execution matters the most, like web development, a more open plan where its easier to coordinate might be better.
And obviously the quality of your co-workers matters a lot. High quality co-workers will have less questions and the value of training them up will be greater.
You can still interrupt someone without an open plan office, there's just a slightly higher bar that prevents most people from asking the knuckleheaded questions, and keeps constant non-conversational visual and auditory distractions to a minimum.
No, because I've never been so at a loss for things to do that I couldn't do something else productive while waiting for an email or IM question/answer response cycle to continue.
Interrupting is rude, full stop. Like other instances of rude behavior, it should not be undertaken lightly.
Open plan may be better for team productivity, but I doubt it will be 300% more productive.
I personally prefer emails. That way you have something to refer to rather than having to remembered all of the tiny details. Plus we change our mind so often I often can't remember what the final choice was. And tehy don't interrupt what you are doing.
Then at the end of the week, I am still giving an accounting of why a feature isn't finished on a schedule given by the same people who were interrupting the work I was doing to satisfy their stated priorities.
I'm amazed at how you totally ignore that this makes people miserable and contributes to bad management.
Why not learn to use email to ask a question?
- Developers can ask other developers questions when they're stuck on a certain problem. In my experience, developers waste far more time when they're stuck on a problem then when they're interrupted.
- QA / PM / whoever is on your "team" can ask quick, simple questions, that are either too small for an e-mail, or would seriously slow them down if they had to write the e-mail, wait for a developer to check e-mail, write a response, etc. Again, in my experience, developers routinely underestimate how much inefficiency having QA / PM / whatever blocked while they wait for information from a developer generates.
E-mail has it's uses, and the fact that some questions are better suited to a quick face-to-face interruption doesn't mean that every question is, but there's definitely cases where it's not the right tool for the job.
It should slow them down. If they are blocked multiple times a day, it isn't the communication method that is the problem, it is the process. Interrupting developers multiple times a day is not the solution.
For what it's worth, most of the open plan proponents have a similarly frustrating tendency to completely ignore the individual productivity trade-offs.
Non-programmers generally never know how to read whether it is a good time to interrupt or not, unless it's obvious you're just reading an article or something.
Generally agree with you, although just because I'm reading an article doesn't mean it's a good time to ask me a question. Right now, my brain is working on a weird problem while my tests run and I browse HN. I look like I'm goofing off, but I still wouldn't appreciate a context switch to another problem.
The polite question if you must interrupt a programmer is “Would now be a good time for a context switch?”
what would be the reaction if the internet was cut off because that was too distracting?
In my experience, open office plans scale poorly. The only successful ones I have worked in had less than 10 employees. Co-locating teams that don't need to collaborate (e.g. engineering & marketing) is typically a bad idea.
More to the point, I've now worked in a private office for a year. It has its perks, but I find myself wishing for a small open office plan again. The cons of isolation outweigh the pros of occasional distraction, IMO.
Doing a little background research it seems they were comparing open floor plans to cubicles. They didn't even consider the obvious alternatives to the panopticon, such as remote work or the tried-and-true office with a door.
It was a link to a summary of the actual study. With that said I went and skimmed the original study and that looked just as bad. Here's the original study.
Forget the fact that they didn't have the raw data. They don't clearly explain on what basis they reach their conclusions.
How are they measuring the 'success' of an open floor plan? For that matter, how can you even measure the 'success' of an open floor plan versus a close floor plan?
It's like saying a study that compared air travel to high speed rail is comically bad because it didn't even consider teleportation. (Extreme hyperbole, but I think it conveys my point.)
Its like saying light bulbs are comically bad because the sun is there for free. :)
I still have a hard time imagining that building individual offices, with the additional wiring, AC/heat, individual lighting etc. would be even close to a cubicle build out. Haven't built a space myself though and don't have hard data, so guess I'll take your word for it.
Now, you can re-use and re-configure cubicles, so that's often used as excuse to buy them. But moving them around is also expensive - rewiring, mechanical work, they're fragile to begin with.
So I call cubicles a dead loss to the bottom line. That's been my experience.
No, open plans are almost always for two reasons, ignoring any harm or benefit:
1) To reduce costs.
2) Politics/motivation - you have to work hard or be important to get an office.
And I'll see your one study and raise you a "Peopleware" by DeMarco and Lister; IMHO it should be required reading for everyone (especially those who decide on space layouts for knowledge workers).
I worked in environments that optimize the team, rather than the individual, for years. It is a breath of fresh air to work from home & optimize my environment for me. I'm happier, healthier, more productive, can get my business taken care of, etc. It's pretty much a total win.
I also have some "eccentric" behavior. I happen to pace & otherwise move when I think. I cannot do that with other people around.
The architecture of the software I'm working on is more coherent. I'm able to collaborate with teammates. Things are progressing quite well. I've never been happier.
Sorry, I don't have a study. Just my anecdotal experience.
I immensely dislike open work areas. I do not know many coders who like them either.
The people who benefit the most are the headphone makers. :)
The Cornell study does not account for the fact that most people suck at "reading" a person. Yes, it's easier to do in an open space. Most people who don't work also ignore the result of that reading.
> They found it also gives us more courage to ask potentially "silly" questions.
Which can also non-intrusively be asked by e-mail, the communication medium that has carried more silly questions than air has done in generations.
> They noted that developer reactions to office plans are often biased towards maximizing personal productivity in order to maximize (short-term) personal benefit, whereas the company benefits from a balance of personal and team productivity.
This says nothing about the underlying mechanism. Yes, I am biased towards maximizing personal productivity, which means that I will gladly and reliably avoid obnoxious co-workers. Closed spaces help me do that.
Maybe there is a good middle ground? Shared cubes of 2-4 people or a single room for a single team?
This is one of those "beat the drum" issues on HN where we keep seeing article after article trying to drive the same one-sided point home. When I see this as the top article on HN, I just have to wonder if many of the people who come to HN are looking to disrupt the startup community.
I've worked in environments that run the gamut from individual offices, to cubes, to small working group rooms, to large open spaces. I've managed people in all of those environments as well, and I can tell you that openness leads to more synergy and more overall productivity. Maybe one or two in ten people have trouble working in that environment because they're too distracted. Sometimes you need to find hybrid arrangements to give people with trouble focusing a little more space -- but to just blanket claim that it's all about floorspace cost (as this article did) is akin to political advocacy.
In my experience, synergy and productivity is far more closely tied to clarity of goals and effective leadership than floor plan. Open floor plan advocacy, when it involves dragging people out of the offices they are quite happy with, is often a sign of leadership with misplaced priorities.
In my experience they are the one or two that do all the heavy lifting.
See what I just did there?
I was trying to illustrate anecdotal evidence.
How do you know? Did you actually ask everyone "Do you have trouble working in this environment because of the distractions?" People are afraid of being seen as "anti-team" and "anti-open plan", and they won't tell you the truth. And others fake it, even if they really hate working in such an environment (I'm one of them) because it seems like a necessary evil these days. So the reality is, maybe that number is higher than you think.
Yeah, I did communicate with people about the efficacy of the working environment. Plus, for the past 12 years or so, everyone I've worked with has had a laptop that they could always (and did at times) take to quiet places when they needed alone time. They self-identified as needing quiet. Most others self-identified as liking the more collaborative working spaces.
I'm one of them
If you're working in an environment that is unproductive for you (that you hate) and you're not able to say something, then you should consider departing from it or addressing your own inability to have frank conversations with the people for whom you work.
Personally I have discussed this with coworkers/managers, but the environment is not going to change. Wherever I go next, I'll be on the lookout for quiet&privacy.
(I don't have a firm opinion on open vs. private offices, except I'd prefer to choose depending on what's best for the day).
People should have private offices so they can be alone to think when they need, and also have bullpen areas where they can collaborate.
Obviously you need to have enough of these that there isn't competition for those rooms, but it can definitely work well.
Am I more productive in an isolated room? Absolutely. Do I feel comfortable doing it? No, not necessarily.
I agree that both is the way to go. You can find a study backing up either approach because they are important in different ways for different people.
I'm surprised no one has really brought up the introversion vs. extroversion angle. I just read Susan Cain's Quiet, and feel a wealth of clarity re: our general cultural stereotype that extroversion is better and therefore, so must be environments that are conducive to it (e.g., open floor plan. I don't have any illusions that corporations do that to save money, $ has never been a concern).
I work at a huge startup (300 people) that still has a very open floor plan and I basically work outside when it's not raining so that I can concentrate better. But the woman sitting next to me thrives in the activity and she can't work anywhere else.
I'm glad that the culture allows us to take freedom and ownership in how we channel our own productivity.
I have worked on a code base for the last 6 months in which I am the sole committer. A lot of my coworkers are the same. We have brief sprints where we are in each others' faces, the majority of the time we only need concrete pieces of high-context information from each other that have nothing to do with serendipity.
> Those are "disruptions", yes
But that is a huge deal. I would say disruptions many time outweigh the benefits of open spaces.
> the company benefits from a balance of personal and team productivity.
Without individual productivity there can be no company success. If someone is constantly interrupting others then they probably need more focused training or a class.
Imagine you are surgeon and while you perform surgery you doctor buddy from across the hall comes in and asks you some question about how to hold a scalpel or something like that.
Having worked in a company where engineers had individual offices, and now work in an open floor plan, I can assure you that sick days have gone up, the noise level is many times what it was and overall productivity is noticeably lower - guess what - if you lower everyone's productivity, then the team productivity goes down. Big surprise that NONE of the managers are in the open floor plan.
Open floor plans are simply a way for managers to feel better about themselves by hurting other people.
May be just me.
Even with nothing but white noise going through them I'm totally able to ignore 99% of all the open floor plan distractions.
It's absurd to expect human beings, especially software engineers--who tend to be quieter, more introverted, and loner-types--to be herded like cattle into a crowded, noisy open-plan office and expect them to have the razor-sharp focus needed for high quality software development.
If you only hire people who thrive in noisy / distracting environments, I won't be surprised if you end up hiring the wrong people for actually getting the job done-because often times, the people who take on the most work, resolve the most difficult problems, and carry the most weight are those people who can't stand working in a place like that.
And you might want to Google "flow state" and how that applies to development work.
Back in the 80's I was the core programmer on a map-reduce system that formed a part of one of the only 3 products British telecom sold internationally my CTO was one of Vint Cerfs reports.
what have you shipped or done?
For what it's worth: assuming white-collar employees, the multiplier is typically 50% to 100% depending on your location and how generous you are with perks, rather than 20%. If you only have $120k available in the budget to hire someone, don't offer a salary higher than $80k, or you're going to have a very unfun meeting with your accountant saying "OK, would you prefer I took the money from somewhere else in the business, or do you want to go to prison for not paying our portion of the payroll taxes?"
There exist many folks who have more experience with San Francisco hiring than I have, but the word on the street for e.g. funded startups trying to pay market salaries is that you should be budgeting $15k~$20k a month to increase your team size by one.
Our own multiplier (Israel) is usually 30% extra over the stated salary, although the salary here is usually stated as a monthly, not yearly, number.
The biweekly paycheck for someone with a $100k salary would thus be approximately $4,000 gross. It would list a deduction for payroll taxes, a deduction for anticipated federal and state income tax, a deduction for the employee's portion of health insurance, and perhaps some miscellaneous deductions for unemployment insurance premiums, automatic contribution to their retirement account, and what have you. This leaves them with net pay (probably in the $2,700 region or so but it's heavily sensitive to their family situation because that makes a huge difference in how much anticipated income tax is withheld) which is actually transferred to their account.
So all of that is included "within" the $100k yearly salary. What isn't, such that business owners have to model it separately?
1) Payroll taxes are typically divided half between employees and half between employers. For example, there's a ~14% levy on the first ~$100k in salary, for Social Security (primarily a form of compulsory retirement savings which the vast majority of working Americans are legally required to contribute to). ~7% is deducted from each paycheck for this (so ~$280 out of $4,000). An equivalent sum is contributed by the employer, without ever appearing on a paycheck. So the employee's real salary is actually about $107,000 but $7,000 disappears to taxes prior to the point where they're told the salary that they are going to be taxed on.
2) For historical reasons, the United States does not tax many forms of health insurance if provided as a perk to employees. The United States also historically did not have a national health insurance scheme. (We've got Obamacare these days but it doesn't meaningfully interact with the math for Valley engineers.) The combination of these two facts means that virtually all white collar employees expect to have employers fund fairly generous health insurance plans as an employment perk. The pricing for these gets a little weird, but you're in the right ballpark at about $10k to $20k per employee per year.
3) In addition to our national retirement savings program, we have "individual" retirement savings. These programs have substantial tax advantages. These are not compulsory, and can be funded by either an employee, an employer, or both. It is the common practice of most employers of engineers to fund these retirement accounts on a matching basis. The offer is at the company's discretion (up to a legal cap). A common offer is "We will match $2 of your contributions with $1 of our own money, up to a maximum match of 3% of your salary."
4) American engineers are commonly offered perks. Many are comparatively inexpensive when bought at company size -- free gym memberships for all employees, for example. Some are not exactly inexpensive -- free lunches and dinners on the company's premises daily, prepared by gourmet chefs, for example. Americans do not customarily include the implicit cost of perks in salary figures.
5) There's a bunch of business overhead that I haven't accounted for above (desks, prorated rent, computers, etc), but they're substantially the same as in Israel, so I won't belabor the point.
Anyhow: health care, taxes, and perks is what gets you to 50 to 100%.
If anyone is interested, here in Israel we usually talk about the gross monthly salary, and we add around 25%-30% above that for the "true" employer cost.
Similar to the US system, but we usually don't include perks like gym membership when thinking of "employer costs". I think they're also less common, which might explain it. We do include the employer portion of the taxes, the employer portion of the pensions, potentially the employer portion of other savings accounts, and - unlike the US, I believe - one perk that is very common here is a company car, which is usually leased out to the employee.
When the cost of the a single piece of equipment for a single experiment cost in excess of $5 million you can see why - in the end we did not go down that route. A pity as the ML neural networks aspects of machine vision would have looked very cool on my CV
> Not every programmer in the world wants to work in a private office. In fact quite a few would tell you unequivocally that they prefer the camaradarie and easy information sharing of an open space.
> Don't fall for it. They also want M&Ms for breakfast and a pony. Open space is fun but not productive.
See also: http://www.joelonsoftware.com/articles/FieldGuidetoDeveloper...
– Richard Hamming, “You and Your Research”
This is a very different question from "offices or open plan?".
(My own preference is one I've seen others express here: rooms for groups of roughly 4-10 people, private rooms for intense concentration and private meetings, and some communal space.)
That was the rule in the Physics department I spent a little time in. 'Tea' involved about 40 researchers in a large room on couches and armchairs arranged (and rearranged) in small groups. You were expected to share problems, findings, ideas, and listen. Room had no blackboards but plenty of paper napkins.
Broke up around 4pm most days but sometimes went on much longer.
Leaders used to hear a problem and say things like "talk to Robin. He's been working on conditionally convergent series", so you did, and it helped.
Email clients, chat clients, Social media, rapid fire short form articles, distraction wherever you look; these all contribute to a reduced attention span.
I do think it's possible to change the habit, but that requires mindfulness to engage in less context switching activities. That's really, really hard.
But when you have a system crash and need to dive through 100mb of log files to try and figure out what went wrong. Good luck doing that in a standard open office! You just have to schedule a few hours after everyone else has gone home so you can have some peace and quiet to do your log diving.
I honestly think the traits that make you able to hack the Linux kernel, optimize the linear algebra required for the internals of a 3d engine, write Haskell etc are incompatible with preferring open floor plans.
Edit: Btw, if you are able to do these "high level advanced" programming tasks while in a noisy open floor plan I would be very amazed. For me it's like trying to play chess against a highly rated opponent and that is impossible to do competently if you have to endure constant interruptions.
Simpler work where you know exactly what you're doing, where there are no difficult choices to be made, can probably be accomplished in any environment. Sometimes that's the vast majority of the work you're doing, sometimes it's not. It really depends on the type of application.
Anything that requires thinking, such as fixing a release-blocker bug that is very obvious once you get in the zone is pretty much lost.
Only when A & B are both coming out of the bathroom can interaction occur. Otherwise, A is desperate and dashing in, B is wishing she'd not had that curry last night, or both A & B are desperate and not stopping for anyone ;)
I'd be interested to know how much they saved on plumbing costs. That seems to me like an architectural decision driven by financial concerns and sold as a benefit. Not that it isn't a benefit, many of the most interesting designs are a consequence of some practical constraint.
Maybe, but that particular mechanism was implemented. It actually received some negative feedback from a pregnant woman who felt she was forced to walk an undue amount to the bathroom.
The point of the parent was that the Pixar offices are designed around encouraging unplanned team member interaction. Their leadership believe this is crucial to encouraging creativity.
Does an environment with a high chance of interruption lead to languages where you have to write a lot to do a small task, because you can write simple code between interruptions, and over time get enough code to do the task - and if you get interrupted well you only lose one minute's thinking.
Contrast with a powerful language where you need half an hour of thinking to build an intricate machine in your head, then you write it down in a little code, and need to hold its workings in mind while you test it. With no long spans of concentration you won't go slower or write half an intricate mechanism, you will write nothing.
Or to put it another way, is the problem of working in an open plan office: you aren't choosing the right tools and work pattern for your environment?
Or to put it another way: are enterprise languages 'blub' languages because they come from big offices and academic languages 'powerful and terse' because they come from people with time and quiet for deep thought.
Or another way: could we redesign our languages, tools and their UI to make us as effective, and feel as good, in open plan offices, like f.lux changes a screen for night use instead of complaining that it's not daytime.
That's not a powerful language, it's a bad language.
A powerful language isn't one that's overly concise to the point of crypticness, it's one that allows you to express yourself naturally. Meaning, there is a clean and strong conceptual mapping between the code and the problem domain. Meaning, it requires less mental effort to use.
Even the use of headphones, can in a sense, be a distraction. Music being played too loud creates stress in the body, and if you are trying to listen to music to drown out a busy office then chances are you are not increasing concentration by much (if any).
As an Acoustician I visited many tech open plan offices who wanted to hear suggestions on quieting down conversations, and phones ringing. And I always laughed to myself at this because the best suggestion is to build walls! Cubicles help, but generally only the kind with the 6-8ft walls.
As a developer these days, I honestly feel that working from home can be much more productive than the office because it is peace and quiet.
Quiet is good for me as a developer.
1. For core teams, ditch the open floor plan and instead put teams into small (4-5 person max, with smaller options) private rooms that line the perimeter
2. Project rooms are not permanent. A team should expect to move around perhaps once every 3-4 months
3. Team leaders / managers would of course work in the same room as their team
4. In the center of the perimeter of team rooms could be a hacker workspace, shared areas, supplies, snacks, etc. With breakout meeting rooms around the space as well
5. executive leadership would work sitting with other specific staff (like finance, HR, office managers, etc) in an open floor plan-like area; most importantly, execs wouldn't have private offices because ideally they should be moving around meeting with the teams, jumping into conference rooms, jetting out of the office, etc.
6. this open area should be relatively quiet
7. people working in this open area should have ample access to private spaces for breakout meetings, private phone calls, reflection, relaxation, etc
Obviously these rules won't apply perfectly to every company and work type, but I'm just brainstorming
I like to get out for several hours almost every day, though. I head to either Krankies Coffee or Camino Bakery in Winston Salem, and both venues have: a lot of people talking about family, studies, work, business, gossip; the espresso machine; music; and at Krankies the coffee-roasting machine. * Undifferentiated noise actually helps a lot! * I find the background din soothing and conducive to designing and coding. The one thing that's annoying is the occasional person who insists on carrying on their half of a conference call very loudly, but I don't see that much.
I've had pretty good experiences with open floor plans in companies too. They've never been the row-upon-row of adjacent tables depicted in the post, but close enough see/hear everything that's going on. In the open environment, a lot of the noise will probably be discussions about coding/design matters on other projects, or general office hijinx. There are downsides to that, but there's a lot of benefit too. You don't need to wait till the water cooler to see some matter needs discussion.
I can see how both the open floor plan and coffee shop environment will be distracting for some. I always hated libraries as a student, and always did my best work in non-quiet environments.
(I miss having coworkers just five steps over -- they're now 2700 and 8000 miles away.)
Trying to learn something new, with new concepts, and I really struggle.
See #8 "Do programmers have quiet working conditions?"
"Here's the simple algebra. Let's say (as the evidence seems to suggest) that if we interrupt a programmer, even for a minute, we're really blowing away 15 minutes of productivity. For this example, lets put two programmers, Jeff and Mutt, in open cubicles next to each other in a standard Dilbert veal-fattening farm. Mutt can't remember the name of the Unicode version of the strcpy function. He could look it up, which takes 30 seconds, or he could ask Jeff, which takes 15 seconds. Since he's sitting right next to Jeff, he asks Jeff. Jeff gets distracted and loses 15 minutes of productivity (to save Mutt 15 seconds)."
One of the most effective office setups I have seen had two kinds of work areas:
1) Reconfigurable "team rooms" where most of the team can work together. These have a door that is kept closed to reduce conversation noise leaking into other areas, and a glass wall so you can see who is in the team room. The other two interior walls can be moved to adjust the size of the team room.
2) On a different floor, there is an open quiet area equipped with large monitors for individual coding, writing, and CAD work.
There are other workspaces, such as lab rooms for fabricating things. Their larger locations have large shops with all kinds of fabrication equipment.
Everything is hot-desked. Many people spend part of the week working at home. The company with this workspace is a major design firm, and I'd wager they put a lot of thought and objective measurement into the design of their workspaces.
Analysis of these data indicates that IM use
has no influence on overall levels of work communication. However, people who utilize
IM at work report being interrupted less frequently than non-users, and they engage in
more frequent computer-mediated communication than non-users, including both
work-related and personal communication. These results are consistent with claims that
employees use IM in ways that help them to manage interruption, such as quickly
obtaining task-relevant information and negotiating conversational availability."
Some companies use IRC on their intranet; that's a setup I've used, and I found it useful and not very distracting.
I hear the same tired arguments about fostering communication and the serendipitous meetings that spark great ideas. However, every single day and for at least 50% of the day, everyone in my open office either grabs headphones or runs away to another spot in the building when they need to get work done individually.
When I bring up objections, I'm told that I can work remotely or wear headphones. I don't see how forcing people to seek all sorts of ways to find privacy is any great recommendation for a purely open plan. If you spend the majority of your day talking and listening to others, I don't see how you can actually get programming done.
Edit: At this moment I can overhear conversations about opening day in baseball, April Fools day, SAP, reporting about inventories in Epicor, the weather, CNN, 3 people scheduling meetings and having phone conversations and one person trying to talk to our network provider. Not to forget, there are 2 people in the hallway complaining about personal issues and getting coffee. And an elevator that keeps beeping every few seconds. I can't wait to see what great idea all this is going to generate in my head.
The primary role of a programmer is to solve the technical problems an organization is facing. This often involves writing code. It also involves understanding problems and planning solutions that scale across an organization.
The trick is to provide enough separation and space that people don't feel claustrophobic, and manage a culture that encourages people to take group conversations into a room if they're going to be loud/passionate.
Instead of point-by-point, I'm just going to offer one critique.
"...Programming is a very brain-intensive task..."
Sure thing, buddy. But guess what? You're not a machine for cranking out little bits and bytes. Instead, you're part of a team that's trying to provide value to a user. That means that most of your job, whether you like this or not, is human in nature. The computer part should just be a "gimme".
The physical space around a team should represent the mental space of the team. One hundred guys in a big cafeteria? Not so much. 40 guys in clusters of 3-6 with rolling whiteboards and allowances for breakout discussions? Much different.
There are things I would love in software development. I would love to sit on the beach fanning myself coding while money is deposited in my account. (Actually, I've done that.) I would love to work alone in my office in the wee hours of the morning in an awesome state of flow (did that many times too.)
But at some point you have to separate "things I want to do" from "things that optimize the value I provide". They aren't the same thing.
I'm all for private offices if it works for you and optimizes value. Same goes for distributed teams. Right now nobody has all the answers. On average, though, it looks like these things are counter-productive for projects that require creative new ways of thinking of things. I wish it weren't so, but it is.
I'm now in an open-floor office in which people talk a lot and interrupt me when it's necessary, and I'm a lot happier and more productive.
"Now maybe you're different than me" is probably the most important phrase in there.
As someone who works in an open floor plan (and basically hates it) this proposal only works when your workforce is younger. No matter how unproductive the office gets for me, it's going to be more productive than staying home with three munchkins running around.
Or maybe there are fashions in management as there are in anything else.
The real thing people are finally paying attention to is that not all human workers are the same. Some people thrive in an open noisy collaborative environment, while some can't operate at all in that environment. It is the real task of management to manage the work environment of all your employees.
The goal: Sacrifice a little bit of individual productivity to increase communication and team productivity.
The reality: A couple people are very loud, so the rest put on headsets. 80-90% of the office now only communicates online via instant messages and email. Internal communication suffers a little. Customer communication suffers a lot.
1. Working efficiently in a library mode: A silent room, for people who want to work in quiet with no distractions. No talking, no phones, if you need to talk to someone in the library you need to IM or email them. Good monitors and mice / keyboards.
2. Working in a ‘normal’ mode: Standard open floor plan, good monitors/mice/keyboards, you can take a call if you want to or talk to someone next to you.
3. Teamwork mode: Tables in the open space with nothing on them, for teams working together or semi-independently. Usually a whiteboard nearby.
4. Small and/or impromptu meetings not requiring privacy: We have quite some semi-closed booths which are un-reservable. Very nice if you want to work on something intensely with 1-4 people.
5. Private phone calls or small meetings requiring privacy: fully closed booths which can seat 1-4 people.
6. Presentations, large meetings, meetings with externals, or meetings requiring a formal setting, or lockdown mode: bookable conference rooms.
7. Total autonomy: Work from home or somewhere else.
The results is that (surprise!) most people choose to work in the open-plan mode, not the silent mode. If a particular employee is not working most efficiently in the mode he chooses or not, I can't really tell you...
One issue is that some people simply don't do well with noise and other people around, for them they need solitary workstations to be fully productive, but that is easy to provide and should be provided. People should work in a comfortable way. Overall, I have been getting used to it and love just being able to ask a few questions of a programmer while I am doing other work.
I do not think I could deal with a single large open space though. Luckily, I also don't field stupid questions as much as some people might in an open plan, as I am one of the only people in the company without a PHD. (it still happens occasionally though)
[There's] a very long and well-established literature in psychology that getting groups of people together is no way to come up with ideas. Creativity is not a team sport. What you're looking for is somebody's individual, intellectual trunk to make new connections and come up with something new.
What's necessary for devising new thoughts is liberating the brain from workaday tasks and letting them operate offline. When people have ideas is when they're not thinking about them -- because the 90% of the brain that you're not aware of is what's key for creativity. This is way daydreaming, afternoon naps, and sleep are key for good ideas.
In the modern world, we often find ourselves doing too much -- too much ordinary stuff. There's a great history of people and institutions giving themselves downtime -- time to do nothing and explore new things, which is when you get great ideas. The workaholic doesn't come up with great ideas.
Open-plan offices (with their constant interruptions -- not just from colleagues but visitors, delivery men, salespersons) and interrupt-driven tools (phones, IM, even email) disrupt that creativity.
Creating a time and a place for collaboration is helpful. Making that all the time is not. I despise open-plan (though there's some use for a small-group, shared-task, common space).
Writing software is a very mental intensive task, and interruptions and distractions cause major fracks in productivity. I take this is FACT.
Offices allow you to deal with some of these issues by closing the door. That isn't a guarantee that you won't be interrupted, but generally speaking a closed door is a universal sign to say "not right now, I'm busy."
Also office walls tend to be sound proof, so they can be much quieter, unless you share a wall with a team of sales staff :(
Offices solve two problems: a way to universally say "I'm busy" and keep things quiet.
I believe you can replicate those things in an open floor plan, but it's much harder to do without buyin from the team and good leadership/management to ensure that people are allowed to work without distractions and interruptions.
Good open floor plan designs are driven by acoustics and sitelines - management of audible and visual distractions. Yeah, staining the concrete slab and exposing the brick wall and using the metal pan and joists of the floor above as the ceiling and hauling in oak library tables as desks, just echos "lookie here, we're rebellious and unconventional." Then again everything echos. That's the pysics of sound meeting hard surfaces and since the echo reaches everyone, everyone will be tempted to look.
Architecture is sometimes said to be the world's second oldest profession - or the oldest when architects talk cynically amongst themselves about the nature of actual practice and dealing with the clients who pay them for their special talent...but anyway, good open floor plan design is a solved problem, all except for the fact that it hasn't photographed well since Gordon Bunshaft and SOM designed Lever House and CIGNA in the 50's and 60's.
Which is to say is that the problem with good open office design is that it doesn't look like photographs of office spaces in recent issues of magazines (aka "archiporn"). Instead it looks a lot like class "A" office space in a suburban office park - carpet, gypsum wall board, acoustic ceiling tile, and fabric covered modular office walls (aka "cubicles"). All these reduce sound transmission and reflection and impact noise - and if cubicle height is thoughtfully selected provide reasonable balance between visual communication and visual isolation and hopefully shared natural light. And if the holy grail of being able to select HVAC systems exists, then good white noise acoustic masking can be provided and that is even better than chasing sound attenuation.
Sharing the natural light means putting the private offices on the core and the serf farm by the windows. This of course means overcoming the sina qua non of hipsterism - status consciousness. But then again at the point where a leadership team has bought functional design over archiporn, this is just the last hurdle.
The problem of course is that corporate grade solutions require corporate grade budgets. Good systems furniture is more expensive than cheap doors, drywall and paint - as is good open plan office space versus lower quality space. On the flip side, acoustic ceiling tile and carpet are less than painted ductwork and stained concrete.
Anyway, the important change to architectural design over the past century is not an evolution of visual style. It's the increasingly sophisticated material options and the need to integrate an ever growing number of building service systems. The problem as always remains convincing lay people that living in a house isn't a good basis of experience for designing a workplace for others. The optimization problems are radically different.
Truly useful innovations in architectural design occur far less frequently than useful innovations in algorithms.
Office politics often seems to be the root of all evil in just about every organization over 15 people.
It sounds like you're saying that the optimal design is the incredibly dreary Office Space setup. You seem pretty critical of "hipsterism," a lot of which could be more charitably called "caring about aesthetics." Is there no middle ground?
Architectural design is like programming except that the first run of the compiler is the last and even a cheap building office building costs a multiple of a fuck you exit money. So there's no ok let's walk away. Users are going to live with the first executable for thirty years or more.
That said, there's a reason that Alexander's book launched the idea of software architecture twenty years ago. It's that fertile in design values for the working humanist. Libertarians and corpratists perhaps not so much.
Guessing you're referring to something by Christopher Alexander, Notes on the Synthesis of Form or A Pattern Language? Those predate your timeline by a few decades but I couldn't find anything else that fit. Whatever it is, I don't think it has quite the seminality in software architecture that you imply...
On the whole, architects tend to be a fairly illiterate group and the practice of architecture is largely a craft creating one off designs, so there aren't really any standard references on office layout or design - and certainly not any theories as theories of office space. There's just a guild that where the academy was still debating the utility of CAD in the year 2000 - I know, I was there. It's still not sold on Building information modeling - aka "using a database."
In so far as architecture is a science, actual buildings are its experiments [an idea stolen from E. H. Gombrich] Unlike a program, there's one shot at the artifact - the building gets built and the budget spent and there's no way to do test driven development or serious integration testing, let alone refactoring or versioning. The plans are like code and the construction process is their one and only pass through the compiler.
Anyway, you might find something in an architectural school library on office layout, but in practice a few pages from something like Time Saver Standards for Building Types is about as much reading as a practicing architect is going to do. The big drivers of schema are soft - the psychology of clients and the architect's empathy for those who have to inhabit the space...that's the whole of whether offices in the core and serfs by the windows gets built or not [and that's not the way to bet].
With a specific open office space, bringing in the modular systems vendor is how the actual layout of cubicles is done. The reason is that architecture is commoditized to the point that chasing through endless swaps of Suzy and Joe and Clay among the cubicles [and whose name goes where is an O(n^3) PITA] and only the person actually selling systems furniture can afford the handholding (unless you're Frank Gehrey and explicitly getting paid to do it and able to assign a $15 an hour intern with an March from Harvard's GSA).
If I were inclined to argumentation I'd point out that architecture was a couple of thousand years old when Vitrivuvious dedicated his 10 books to Augustus Caesar and thus you can pretty much be assured that any proposition that links software and architecture is grounded in all that history and floating free upon the mere sixty years that the concept of software has existed.
Habraken's Structure of the Ordinary is the way territoriality and control express themselves spatially and I find it informative for the sort of problems upon whose solution good office design depends. It's not rules for layout but the effects that various configurations create.
Anyway, if there ever was a field of obsolescence ripe for disruption, it would be architecture here and now - and of course it's already happening. The infrastructure needed to provide many services ain't no building any more. The guild thinks technological progress is faster horses to speed up the production of drawings - or to anchor the analogy better pens. The idea of providing better solutions is inconsistent with the model of architecture as craft because a better solution might not require a building and with a business model that couples fees to a percentage of construction cost, there's no money in it.
Gosh, that was fun.
I ask because in my current role, I'm the product architect for a large web application. In addition to the usual design and development tasks, part of this role is bringing new development teams up to speed on technologies they have not used before. I find it much easier to be in a team room with those teams, they get immediate feedback, can ask questions, etc. If I was in an office or cube, I'd have a constant stream of emails from individuals to answer.
I've had my own office for the last 3 years and enjoy the privacy, but occasionally miss the instant answers and social aspects of that open plan.
I think this is a good indication that a team is getting too large, needs to be split into smaller teams. There is a notion of "two pizza teams" described by Werner Vogels (http://derivadow.com/2007/02/20/two-pizza-teams/) to keep things efficient and organized. For teams this small, open floor is very productive and efficient for collaboration, including software development.
This is pretty much the optimal situation for an openspace floor layout. Now compare that with the situation in a more mature company. The first thing any sane lead engineer wants to do once v1.0 is out the door and making money, is to pay down on the inherited technical debt. Organise code so that it is modularised, so that changes in one area don't have a major impact on other areas. As money is being made, the team starts to expand as well, so simultaneously you have less need for close interaction between team members (due to improved software structure) and greater opportunity to be distracted by irrelevant discussions, as the scope of the product has now grown so much that most of the engineers will never master all of it, but instead become experts in one particular aspect.
Let me give you a real-world example from my current job. At the moment, I'm deep in the source code of an OpenGL driver, identifying performance problems. The thing is, we already have a product, and it works well, but it uses a 2D graphics APIs, and the designers want iOS7-style blurring. So I've re-implemented the graphics APIs using OpenGL. This is completely independant work. No-one else knows OpenGL, and none of them even see the API, as it's hidden behind a facade that they already know. I had pretty much zero interaction with the team whilst implementing the OpenGL backend, as all I had to do was implement an existing API. I now still have zero interaction, because if the team don't know much about using OpenGL, they know even less about how it's implemented under the hood. I don't need to know about their problems with what happens when the user presses "back", and they don't need to know about my problems with the vsync callback.
Yet, we are still in an openspace. The designer with the ridiculously loud laugh is still distracting me every thirty minutes or so. The two guys having a discussion about the latest ministry shake up in the government, yup, they're doing that about 2m from my ears and not making it any easier for me to concentrate. They programmer talking about the first run sequence with a project manager one desk over? Absolutely of no interest to me.
OK, so much for why openspaces objectively suck once your past the project startup phase. Why do ex-developers / current-CEOs still stay with openspaces? You would have to ask them, but maybe it's because they remember how wonderfully productive it was at the start of the adventure and don't realise that the situation has changed. Or maybe their much more interested in raking in the cash,and are now just waiting to flip the company - future productivity is of no interest. Keeping the costs down to make the company more attractive to buyers though, that might be very interesting to them. Anyway, the fact that they persist with openspaces is not necessarily a ringing endorsement for openspaces.
Too many times I see these floor plan discussions and just wonder if its an excuse for poor management or worse, developers.
The Boston Fitbit office has 12 engineers now. I'll pay attention to how things progress as we grow past the 15 mark. Open plan seating seems to work well for us so far.
People forget that this "keep it lively" (versus not negative, though they try to claim that's all it is), "smile and say hi when we cross paths," "approach me and kiss my ass to make me feel good," "always be open and approachable and available" (read: always be there when I need something, then when I ask do it blindly and with everything in you so I get what I want, then nod your head acceptingly when I make up some BS excuse when asked to do something as though it was ever about anything other than me ensuring I get everything I want while ensuring you get nothing), and anything else that will avoid insulting me or hurting my feelings nonsense is something out of a Dilbert cartoon and should've been ancient history by now, not promoted as some sort of superior/modern/good approach.
I hate open plan offices. The collaboration argument is BS, because I can collaborate just as well when sitting in a cubicle as I would when in an open plan environment. And, as a matter of fact, the cubicle (or some other) setup would probably be better because we could huddle around someone's desk as necessary to discuss anything that needs to be discussed, then go our separate ways to work on what needs to get done. All without the constant tension, anxiety, and noise of an open office environment that completely stalls out any ability to think clearly. The only things that really affect collaboration are proximity, and how well the group can collaborate (can they work well together, do they like each other, have they minimized the effect of any idiot managers and divisive employees, etc).
I hate cubicles as well, but I love silence, privacy, and the ability to uninterruptedly do my work. And the cubicle set up allows that more than open plan environments. Also, most open plan environments are setup such that everyone can see what you are doing (as in they can stand over your shoulder and blatantly watch for no reason, or can end up doing so unintentionally), and in a way that would leave everyone in a state of paranoia thinking you're watching them. Anytime I see something encouraged that heightens fear/anxiety levels like this I start to smell BS. I start thinking that maybe this is exactly what they are up to.
Open plan environments are good for those that like annoying or squeezing others, who constantly need attention, who like sitting close to others, and anyone else that needs to discuss every single thing with someone else before they do it (but it's really that they have an aversion to thinking, don't know what they are doing, and would rather get someone else to do the work (while BSing that they are just being more open and communicative) then take credit anyway). These environments are also great for management, an entity in most companies that's always looking for a way to underhandedly (something they can laugh about like they're so clever for doing it) squeeze more out of people while making it look like they are giving them what they want, and are so nice for doing it. That is, it amplifies so many negative aspects that any good that it brings is overshadowed, and it seems like nothing more than gimmicky, self-serving, overly hyped, faddish nonsense.
i have previously leased and built out a high-end office in a building in downtown chicago and the amount of time burned with the architect, waiting for permits, and construction is serious. after doing that once, i will never do an office build-out again unless i actually own the building. when you add in the fact that the building is "union only", the delays in construction become ridiculous.
after going through this part myself, i'm all for open-plan offices, despite their being less than ideal for developers. the majority of our developers work on remote anyhow.
A. annoy your employees but increase communication
B. reduce employee stress but decrease communication
C. increase communication, let employees decide if they will work in open or closed spaces
1. Increasing communication: This is a huge, huge topic, and would be most effective with training sessions that work on the varying problems with communication. One size does not fit all, but general techniques exist to allow people to collaborate easier in a variety of ways. You figure out what works for your team and you maximize communication, which increases collaboration.
2. Movable partitions. Either people can work on an open desk layout, or surround their desk with a movable partition that partially or completely isolates them. These are cheap, flexible and allows the employee to dictate their preferred level of comfort in physical interaction.
Lost me there. The primary task of a (good) programmer is to solve problems with code, that may involve 70% planning and design and 30% for some.
A practical concern might be that a library needs a librarian to shush people. And it needs people to obey the librarian when they do that.
ie I save 5% on office costs (and get a year end bonus) but I dont care that performance went down by 15% (this is what IBM found was the benefit of having a private office)
I worked a place that had full office cubes, 8 foot walls, and enclosed but the entrance. It was glorious. I felt good and I was extremely productive. It reduced my stress greatly.
Would you care to explain what that means?
If your job can be done in a closed office without interacting with anyone, why do you need to be in an office at all?
I'd gladly work remotely, but not from home. No way. If there are no small-business-incubator businesses nearby, I'll be working public library hours, thank you very much.
Anyway, as my commute is walk+tram+bus+walk, I do offset this time by reading books and replying to e-mails while in transit. I'd be really, really angry if I had to spend this time driving a car.
Most organizations are so inept at choosing leaders (they can't tell who's good at the job and who's not) that their only recourse is to set up pointless contests that grind people down, and then determine the last person remaining to be the leader. (Those who left weren't dedicated; those who broke were "weak".)
Open-plan offices (and, especially, open-back visibility) are just another shitty mechanism used to wear people down and make the attrition/sorting process happen faster.
Developers/Tech People: most likely introverts because they are the analytical type.
Management says, "What's good for us might be good for them. Right?" Developer says (silently), "No."
This is most definitely is not the case for most development positions.
Oh yes, there's plenty of code to write if your a developer. But there's communicating with management/qa/business dev/other developers/support as to what to work on, progress on tasks, clarification of requirements, bugs discovered, issues raised, tests to run, ways to program, etc. Open spaces will encourage these conversations to happen more organically instead of scheduled strictly around meetings.
At the end of the day, companies wants developers to crank out code as much as possible, but what they need is development to communicate effectively - among themselves and across teams. Hence, open floor plans, even if it reduces the quality of code.
To imagine we want our work environment structured around Reporting what we do, and not around actually Doing the work, is the tragic mistake of our industry. And its largely why I became a consultant/contractor instead of a corporate employee.
And half the time, I actually can't hear them.
We should be suspicious of such claims. Think of von Neumann:
At Princeton he received complaints for regularly playing extremely loud German marching music on his gramophone, which distracted those in neighbouring offices, including Einstein, from their work. Von Neumann did some of his best work blazingly fast in noisy, chaotic environments, and once admonished his wife for preparing a quiet study for him to work in. He never used it, preferring the couple's living room with its TV playing loudly.
It seems to me to be a personal preference only. Some people like noisy and some people don't, there's not necessarily any one correct answer. But folk like Joel and others (usually American where private offices are much more common) constantly push absolute silence and the myth of never being interrupted or distracted, seemingly without much to back it up.
I really prefer an active office close to others. If someone taps me on the shoulder I have no problem continuing my train of thought.
I think that among programmers especially, the proportion of people who cannot work at peak productivity in an open plan office is much higher than 50%, but even if it were only 30% that would still be a strong argument for closed offices.
This is a huge gift. I, sadly, lack this ability.