Lose the Metawork and Get on with Your Life!

Every job has metawork. Sometimes it becomes so commonplace that we just forget about it. We should never forget about it. I hope this blog post reminds you of what your metawork is. For the purposes of this blog post it will focus on code-centric stuff, but could apply to anything.

Different jobs have different types of metawork. Sometimes it is just paperwork. Other times it is called “overhead”. Commonly it is referred to as “Process”.

I personally like the word metawork. In the same sense that metdata is the data about the data, metawork is the work done about the actual work. Let me give some examples with some sort of chart:

Try to put some of your activities on a similar chart. Where is most of your time spent?

Another litmus test I like to use to determine metawork versus work is to compare the same task if I were doing it at home. For example, installing a new OS on a new laptop:

At Home AT Work

  • Install your OS

  • Register the laptop

  • Install your OS

  • Do post install tasks to be compliant with the corporate infrastructure

  • Document the system in whatever tracker is used

Or how about this? Let’s compare working on some code at home versus at work:

At Home AT Work

  • Make Changes to the code

  • Commit / Push

  • Reload the webserver

  • Make a ticket/story in your tracker

  • Make changes to the code

  • Code review

  • Commit / push

  • Close ticket / story

  • Documentation?

  • Push to test / QA

  • Push to production / reload

That example might be¬†stretching¬†some things. I didn’t even mention branching / tagging / merging. Depending on who you ask, somethings might me more “meta” than others.

But, what is the point here? Yes, it is a job, we have shit to do. Get over it!

Except, I believe that life is short and precious. So short and precious that we should endeavor to eliminate as much metawork as possible.  Here is what I try to do to keep myself sane:

  • Automate as much as possible

  • Resist meetings

  • Keep the metawork / work distinction in mind when building systems

  • Only have an email client open during preset times

  • Use git :)

  • Be¬†conscious¬†of when you are doing metawork (helps you recognize when you are doing too much?)

Knowing is half the battle. Do you know what percentage of your time is spent doing things that are not an “end in¬†themselves”? Maybe someday as a species we will take drastic steps….

Other people who think like this but write better than me:

Comment via email