James Adam by James Adam

Harmonia (a.k.a. Chaos Administration)

At Free Range everyone is responsible for everything, but who is responsible for delegating work so everything gets done? Harmonia, the Chaos Administrator.

Background1

One of the things that separates us from typical companies is that we don’t operate within a hierarchy, or with a fixed set of roles.

We don’t divide the business responsibilities in arbitrary ways; none of us want to be an accountant or an office manager. We’re not a big enough company to require any dedicated staff to grease the wheels of our organisation. That’s by design.

But shit still needs to get done, so rather than waste energy discussing or rota planning each chore, we use this software to automatically delegate those chores within the team.

Can’t people just remember, or decide between themselves on an ad-hoc basis?

Not really, no. We’ve learned that by sacrificing a bit of individual freedom, you actually liberate much more of your energy and focus for the important (and more enjoyable) aspects of your business.

Instead of wasting any time trying to remember who did what last week and then assign duties for this week, we don’t even think about it until Harmonia sends us our assignments.

This is really the key insight: when dealing with the boring responsibilities or chores in life, automate as much as possible, then work hard to eliminate thought and decision making surrounding the rest.

Why not a rota?

A rota may be functionally equivalent, but rotas need to be maintained and updated. Chaos is an eternal fountain. More seriously, we value the ability to run without maintenance over absolute fairness.

There’s also something to be said for more aggressive repetition than a rota would provide; if I end up having to run the invoices three times in a row, I’m going to be in a better position to spot further automation opportunities than if it was a task I only did every other month. And then everyone wins.

What kind of tasks are suitable?

Anything that can be reduced to a clear set of instructions with minimal amount of decision making. Importing bank transactions, sending invoices, and assigning temporary responsibilities (like weeknotes) are ideal, but more will certainly follow2.

Under the hood

Harmonia’s implementation is almost trivially simple. It uses cron and emails, via the whenever and mail gems respectively. Mail templates are stored as ERb files.

Currently assignments are made at noon on Monday each week, as dictated by the schedule.rb file.

‘YMMV3

At the moment this is clearly tailored towards our company, and this may always be the case. It’s also a bit of an experiment: in the future we might discover a problem working this way. However, for the moment it’s freed up a good chunk of organisational energy that we can now pour back into our creative work.

One of the great things about being in a business where you build stuff is that you can produce bespoke tools that fit perfectly to your flow, but more importantly can be adapted as the organisation, and as your understanding of how things work, changes. I don’t think there are many industries where the overlap between the tools we produce and the tools we use to operate are so similar. It would seem a shame not to take advantage of that, don’t you think?

If you have any thoughts about this, we’d love to hear from you, either via email, twitter, your own blog or even a pull request ;)

Note that Harmonia is now a product owned and run by Exciting.

  1. We mentioned Harmonia in week-138, but since the README was sparse those few weeks ago, I thought it was worth expanding and explaining in more detail. I’ve expanded on the new README here. 

  2. Who’s going to keep our new office stocked with fruit and milk? :) 

  3. “Your mileage may vary” - in other words, please take these ideas and test them, adapt them, reformulate them to suit your own circumstances. 

comments powered by Disqus

Recent