The New Golden Rule of Programmers

Ben Greenberg on July 04, 2018

242 years ago the American Declaration of Independence was signed, and with it, a new paradigm for governance came into being. This government ... [Read Full]
markdown guide
 

These kinds of things proceed in phases.

Phase 1: every developer has an office with a door.
Phase 2: every developer is in a cube.
Phase 3: every developer sits in one giant communal area. The dreaded open-office floor plan.
Phase 4: every developer telecommutes to work.
Phase 5: every developer has an office with a door.

Both Phase 2 and Phase 3 cause developers to utilize The Headphone Coping Mechanism.

First developed in Hamburg, Germany in the 1950s, the Headphone Coping Mechanism spread like wildfire as companies converted into the nuveau open-office floor plan. The open-office floor plan, coincidentally and likely completely unrelated, also first developed in Hamburg, Germany in the 1950s.

At first glance, there may appear to be absolutely no advantage to Phase 3. But with the advent of agile, it is a benefit for a co-located development team working on a single feature at a time as a team employing some agile-based methodology such as Scrum can reap a significant boon by have the team (and only that team) have a "pod" arrangement where there is an open-office floor plan communal area in conjunction with cubes or offices.

Alas, many companies have seen the square footage per employee benefits of an open-office floor plan, without understanding that the people in that communal area still need offices (or at least cubes), and they all must be comprised of members of the same team.

As ostensibly a cost saving measure, "penny wise pound foolish" facilities takes the initiative to save money by stacking developers like cordwood into a communal area. Regardless of project or role. This is classic cargo cult behavior, with lip-service to attaining the ultra-super-high-performance unicorn team, but in reality making the environment a soul sucking slave cesspool of sorrow. And headphones.

The best devices for The Headphone Coping Mechanism are undeniably Sennheiser. Sennheiser, coincidentally also a German company, had worked in secret on the ultimate headphones from 1945 to 1968, for one thing and one thing only: to create a unparalleled compensation device to stave off the incessant productivity killing and company destroying distraction known as the open-office floor plan.

Note: the open-office floor plan was registered as a weapon of mass destruction, and banned by the Geneva Convention. First employed by the creators to cause competitors to adopt it and die. The inventing company itself, in a twist of ill-fated irony, became a victim of its own creation. Since then, the open-office floor plan has swept across the globe leaving a wake of destruction in its path. There is no known cure, only through providence can a company weather the open-office floor plan storm.

 

I think a better thing to seek our "independence" from is having to work on site. Can't stand having to go into an office to do what amounts to just using their internet connection but under the guise of team "collaboration".

The overseer mentality must die!!!

 
 

Interruptions in general when someone is in the zone sucks. The important thing people need to stop pretending is that aural distractions (headphones/music/etc) promote higher levels of focus than having the discipline to work in silence. Nobody, regardless of their argument can produce their best work when doing two things at the same time.

Often times I put on headphones at the office and play nothing just to avoid being distracted. Playing music while solving problems might lead to satisfactory results, but will never yield your best work when your brain is half distracted processing music.

 

Ideally listen to white noise (or Brownian noise for a more pleasant frequency range) or music with no singing that you either know very well or is at least consistent. Unless you have noise cancelling headphones then silence isn't enough to drown out the open plan noise. Only working from home allows the luxury of silence.

 

I like the idea of having firmly established and signalled boundaries in the workplace regarding interruptions.

The problem with headphones is that I tend to have mine on all day because I like listening to music while I work.

My coworker has a small flagpole on his desk with a red flag that says "DO NOT DISTURB."

A friend at another company tends to wear ear plugs while he works, and he built a little red/green light to notify people.

Be it with headphones, flags, or lights, I'm with you. The expectation that we need to be immediately accessible is pretty disruptive, and it's not that difficult to leave an asynchronous message so that people can get back to you when their schedule allows.

 

Yes, that's definitely the issue with headphones, if you're accustomed to wearing them all day.

 

There needs to be a better signal than headphones.

My cube space is near the biggest "conference" area in my workplace. It is an open space where all the All Hands meetings and tech presentations are held. It's also where groups gather for lunch if there are no lunch-n-learns active. It's also where the most terrible device known to man is held (the foosball table).

I can guarantee anyone walking near our cubes will find us in headphones 90% of the time (10% I forget until someone plays stupid foosball again). That muddies the waters of making people wonder if it's an actual coding session or if I'm trying to drown out foosball with ABBA.

I propose a Raspberry Pi with an LED panel and a switch. I got a Pi Zero W recently so I've been tempted to do it. Red if go away and use Slack, and Green if whatever. Switch it as situations arise.

Or workplaces could just get rid of the stupid foosball table.

 
 

Embrava Blynclights are good for this. Lots of color choices and you can manually control, or connect with Skype, RingCentral, etc.

 

This is one of the rules on my team's social contract.
If it's super urgent knock on their desk, if not, slack message them.

I have been startled several times by people either tapping me on the shoulder or waving their hand in front of my face.

This is an excellent rule.

 

I'm with the headphone rule in spirit. But it's like attempting to combine two unrelated values into one property or field. One property can't specify "I do|don't want to listen to music" and "I do|don't want to be disturbed." What if I don't want to be disturbed but I don't want to listen to music either? A "do not disturb" flag is good. Having to wear it on my head - not good. I'd prefer a literal flag or indicator on my desk, combined with a Slack/Teams/Skype status indicator.

A few related suggestions:
If you need something from me and you message me, just say what you want. If that feels impolite then preface it with "Hi, Scott." But please don't just send me a message that says "Hi." Now I can't help you because I don't know what you want, but I also can't resume what I'm doing because I know your actual message is coming in 10-60 seconds. (If you really want to send the greeting as a separate message then consider typing the second message in Notepad and copying it so you can paste it right after you send the greeting.)

If you're a manager or Scrum Lord, never, ever tell me that I need to go to someone else's desk and stand behind them to get them to do what I need them to do. If that's how you interact with others then you go do it. I don't stand behind people and pressure them. If you have to go stand behind them then perhaps you'll figure out the underlying reason why it's difficult to get things done. That's ideal, because as a manager it's your problem to solve anyway. Telling me to stand behind them isn't a solution. It's an admission that you've accepted failure as the norm and surrendered. (I'm writing a whole blog post on this.)

Don't whistle in or around my workplace unless there's something seriously wrong with you. It's very distracting. Do you know that we can hear you? If you can't survive a few minutes at a time without the sound of your own whistling then please record it in a more appropriate setting (which is not the men's restroom) and then play it back for yourself with headphones.

And please keep your headphones at a private volume. If you can hear them when they're not on your head, everyone else around you can hear them too. The point of headphones is to play music privately without disturbing others. They're not portable speakers that sit on your head for convenience. You'll just go deaf and then you'll turn them up even louder.

 

-1 for starting it with something about US

I knew a few devs that keep their headphones on all day, so they will be in DND mode all the time.

I think we need a sign but not this one. I've tested a few Pomodoro like signs and they seems to work, if everyone in the office is trained as so, and devs do not abuse it.

If the dev stays 5h/day in the zone, then most probably coworkers will start ignoring it and disturb you never the less.

 

"-1" what do you think this developer community is? Your personal rating system? OTOH, I like your suggestion of the sign.

 

... Do you not also like (aka rate) others comments?

 

Irrelevant of headphones it can always wait. If it cannot wait then you have one more problem to fix: the problem of not being able to handle urgent matters without interrupting people in their activities.

 
 

I disagree, I don't focus well with headphones/music on. A good office should rather have various flexible "spaces" — from an absolute silence space, to a "library sound level" space, to socializing spaces. The ability to work away from the office helps as well of course.

 

Even glancing at somebody the wrong way can break their concentration - I know the feeling. Maybe I thought just of something cool I wanted to share with you, and then thought better of it when I noticed your headphones, but we already made eye-contact, so...

Maybe we need an official hand signal that means "no worries, it can wait, keep working!" to avoid misunderstandings? ;-)

 

For me, It doesn't even need a pair of headphones. There was a day I was so penetrated in a difficult code to me, and I have the extremely annoying habit to only think out loud (I call it "talk to the second me") and when I do it, it's so difficult to get out of this "reflective zone". Ok, I was in one of these "reflections with self conversation" when a college colleague tried to grab my attention. I continued on the code. She tried one more time. I continued, until she lost her mind and shouted out. Everyone in the room laughed so much.

 

The Headphones rule can have a process that says if you need me, let me know on Slack and then give me five minutes to decompress out of my zone and I'll walk over to you. That way I can safely land on my own before shifting gears.

 

Why only programmers? This applies to anyone wearing headphones or anyone talking to someone who is wearing headphones.

This is a post about headphones.

 

It doesn't apply to people who aren't engaged in work that is creative or intellectually challenging that requires getting into a deep flow. I've tried explaining to a manager that a regular mid morning or mid afternoon meeting breaks up the day too much and doesn't allow for necessary extended coding periods. He really thought it was ridiculous that I couldn't get straight back into deep concentration. If you've never had to do it you don't get it.

 
 

I second this. Headphones on? Write me on slack, I will read it when it’s time )

 
 

If you need to be in the "zone" to be efficient at coding, your software probably has design issues. I avoid the "zone" because the code I produce when in it has the tendency of being overengineered and badly designed. I embrace Test Driven Development instead.

Moreover, being interruptible is not a bug, it's a feature. 😉

 

I think the thing that can get me the most is that most places nowadays have their own chat system up. Like Slack or something similar. Yet it is like we just skip it. To be asked a question that really only has a yes or no answer and to not just message me is frustrating. If I see after a few messages that we can't figure something out through messages then I'll tell you to come over or I'll gladly come over.

Most of my co-workers seem to get my signs. No headphones in, I'm wide open. Only 1 headphone in I'm open but trying to concentrate. If both headphones in, just message me. Person who works next to me does the same thing really. When I see he has both headphones in I either just see if it's something that can wait or message him.

 

Hate trying to code in our noisy shared office.
I have some nice closed-back studio headphones, but even they get hot and uncomfortable after a while.
At home, my wife & I share a long office room with two desks at each end. We have an unwritten rule that we don't even talk to each other until lunchtime as we are both 'in deep flow' during that time.

She's really good to me, one day last week I was so deep in code she just left me alone, brought me some easy-to-eat lunch, and went away again. And now I must get out on my bike before it gets dark!

 

Was just talking to someone about the importance of boundaries. I work from home, but I still have to tell my family. Door closed, business is happening and I need some space. :) Might should just change it to headphones on!

 

When I need to focus I telecommute. This is pretty often these days. I can work longer, avoid the direct I interruptions and the indirect non-stop food related conversations. After a day at my desk and I start wondering if we are subletting space from the food network. 😀

 
 
 

I think you should put this on old parchment with big swirly signatures and frame it. :)

 
 
 

I love working remotely because no one pings me physically. Even if someone pings me virtually, at least I have controll over it.

 
 
 

Do you guys read Cal Newport by any chance?

I think the issue could be solved in a meeting if people just talk about it.

 
code of conduct - report abuse