I'm an eternal student of distributed systems and practitioner of minimalism.
Check out my dedicated page to my professional influences.
I've written about this in the past, but I have since taken down my previous articles because none of them depicted, as it turned out in the years that passed, a truly sustainable approach. That is, this is not going to cover the Pareto principle, or Parkinson's Law, or the fact that 40 hours a week work does not equal more productivity, all the standard advice on sleeping and eating well, exercising regularly, emilinating clutter or limiting attention to distractions. I assume the reader is painfully aware of all this stuff. This is about tracking and maintaining progress – and it's what finally worked for me after 14 years working nearly exclusively remotely.
In 2015, I decided I would dilligently track how many hours I spent coding in the following year, using the pomodoro as a time unit. I barely managed a total of 16 hours of coding time a month in that year. And despite fighting to catch up at the end I was ultimately devasted with my progress.
2016 January ○ February ● March ●● April ●●●●●● May ●●●●● June ●●●● July ●●●●● August ●●● September ●● October ●● November ●● December ●●●●●●●
Each ● (U+25CF) represents 10 pomodoros, and the ○ (U+25CB) at the top represents fewer than 10 pomodoros. As I said, a total productivity disaster. It surely wasn't just laziness – I had a lot going on – but it was no excuse. I wanted my working routing to be as immune to adversities as possible.
So what does 2017 looks like so far? A lot better. I kept my habit of tracking the time I spend coding, but stopped worrying about tracking the time I spent responding to e-mails, being active in Slack or participating in videoconferences. Worrying about tracking everything is counterproductive. Nevertheless, my 2017 chart has exhibited only steady progress so far:
2017 January ●●●●●●● February ●●●●●●● March ●●●●●●●●● April ●●●●●●●●●●● May ●●●●●●●●●●●● June ●●●●●●●●●●●●
What changed? Aside from the drive to improve after seeing my failure in the 2016 chart, not much changed. I am in complete control of my diet now and make sure I don't ever get any nutrient deficiencies. That is extremely important, but in general, it boils down to a few key principles I started following:
Make it interesting – in my consulting engagements, I try to be as thorough as possible, so I find elements of interest that often turn work assignments into actual fun. What's interesting? Delivering ahead of time is interesting. Writing boring pieces of documentation that are actually useful is interesting. I turned pushing commits into a dopaminergic activitiy to me. It's important to internalise a mindset where being great is something you truly believe is possible and rewarding to accomplish.
Don't worry about working in 25-min chunks. I just use the pomodoro as a time unit. I sometimes do a pomodoro in 3 to 5 minutes chunks, always pausing the timer, because I actually need to be busy with something else. What's important is that you track your overall daily focus time. I've had incredibly productive days with extremely fragmented bouts of focus.
Be in complete control of your diet – avoid nutrient deficiencies at all cost. An easy way to achieve this is to ignore all common advice against sugar, and eat liver once a week. There's plenty research material on how to build an adequate diet – learn to separate fact from hype when it comes to nutrition. I also can't recommend following CowsEatGrass enough. (On a side note, these were some dark days where I removed sugar completely from my diet and my thyroid levels were so low I lost half a dozen jobs in a row.)
What's next? I didn't mention so far that nearly 40% of my focus time was spent on personal projects, and no matter how hard I seem to work, I never truly get tired or burned out anymore. My ultimate goal this year is to get to a baseline of 60 hours of coding time a month, intertwined with general availability in business hours.