More Agile Than Agile Itself
One of the big ironies of the discussion around remote work is that some Agile gurus have said that remote work is incompatible with Agile development. This couldn’t be more false.
The truth is precisely the opposite: remote work is inherently more Agile than any Agile development methodology.
Process And Environment Are Intertwined
One of the greatest inspirations of the Agile movement was a book called Peopleware, by Tom DeMarco and Tim Lister. Published in 1987, it remains a classic of the tech industry, and one of the best books ever written about managing software development. Peopleware is based on the idea that building applications isn’t just about software and hardware, but also the people involved. For a book about people, it spends a surprising amount of time on the subject of architecture.
Peopleware’s discussion of architecture starts with research from as far back as the early 1980s which shows that open-plan offices don’t work. Not a shock if you know that programming is mostly about concentrating, although it is alarming that the industry as a whole still hasn’t learned from this research. Peopleware then brings in similar research to show that actual offices with doors that close can yield productivity benefits,
Taking Matters Into Their Own Hands
Peopleware goes on to tell a story about a bunch of 1980s or 1970s developers in an old-school open-plan office which had an actual PA system, with loudspeakers and everything. The PA system was constantly interrupting their work with random announcements like “Bob Smith, please call extension 12345.” So these developers got a ladder and a pair of wire-cutters, and they vandalized their own office speakers so they could concentrate. They also had ancient, clunky phones with actual dials on them; they took these apart and stuffed tissue paper around the physical bells, so that when the bells rang, they rang softly.
There’s an another legend in Agile circles about an anonymous Agile progenitor who pulled out a screwdriver and dismantled cubicle walls so that all the engineers on a project could talk to each other and collaborate more easily. It was, at the time, this wildly rebellious thing to do. “Oh, those crazy kids and their screwdrivers! It’s not the 1980s any more! It’s the 1990s now!”
Adaptive Work Environments
Fast forward to the present day. Imagine a time-travelling Agile guru from the 1980s, still hale and rebellious, transplanted to 2016. Would this wild and crazy Agile troublemaker mess with the physical office space, if they wanted to improve the work environment?
They might, if they were unfortunate enough to land at Facebook, Google, Yahoo, eBay, or anywhere else with an open-plan office. They might look around with shock and think nothing had changed in the intervening decades. But what if they landed at a company like Panda Strike, or GitHub, or Basecamp, or Automattic, or any of the numerous other companies which are all remote or mostly remote?
In a remote company, if there’s too much chatter in IRC, you just quit out of IRC. You don’t need to vandalize your own office speakers. If you’re finding that there are barriers to collaboration, you don’t have to physically disassemble a cubicle wall. You just open up a video chat window, or remote pair with tmux.
Remote companies define their workspaces not with walls or windows, but with apps and protocols. Which means remote companies are constantly redefining their workspaces. It’s just so easy to do.
Remote Is More Adaptive
A huge number of companies redefined their workspaces last year when Slack went viral, and Slack was justifiably quite proud of this, but I’m not even talking about events measured in years. I’m talking about events measured in hours, minutes, or seconds. You dismantle the cubicle walls to talk over a complex issue. You bring them back up again with zero effort whenever you need to concentrate. A big, momentous decision which challenges everything about the corporate culture, in the 1980s, is now something you can do as easily as shrugging.
If (or, let’s be real, when) Facebook, Google, and all these other companies finally discover all this research, going all the way back to the freaking 1980s, which shows that open-plan offices are just plain counter-productive, how are they going to pivot? Putting in walls takes a lot of time and money, and if you think open-plan offices are distracting, imagine working in an open-plan office while noisy construction teams are building walls all around you. A company which chooses an open-plan office is stuck with that choice for a long time.
By contrast, a team which chooses to be connected all day, every day in Slack, or IRC, or any other chat app, can change their minds on a dime. As Jason Fried has implied, always-on chat is basically the remote work equivalent to the open-plan office, but it’s way less destructive, and more importantly, a remote company which decides against always-on chat doesn’t have to call in any construction teams.
Agile Means Adaptive
Consider the key values of the Agile Manifesto:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
We’ve written elsewhere about some flaws in this list, but for now, let’s just zero in on one:
- Responding to change over following a plan
Remote companies are so responsive to change that their working environments are almost completely fluid. This fluidity is not available to companies which have offices. There are a lot of types of plan which you can change rapidly, but an architectural floor plan is not one of them.
Agile means being adaptive, and remote work makes your team more adaptive, so, therefore, remote work makes your team more agile. Not less.