Mark Needham

Thoughts on Software Development

Yak Shaving: Tracking the yak stack

with 4 comments

Yak stack

While I’ve been learning how to write an android application there’s been plenty of opportunities for me to go off shaving yaks, it’s pretty much Yakville Central.

Typically I’d end up spending hours trying to work out some obscure thing which I didn’t really need to know so I wanted to try and avoid that this time.

I started keeping a track of the ‘yak stack’ which I was currently following and mentally noting exactly where I was up to.

An example of a yak stack I kept while trying to authorise a user of the app with Twitter using OAuth is shown in the photo on the right hand side.

It ended up looking like this:

  • Get the home timeline working
    • OAuth blowing up
      • Not actually capturing redirect back to app
        • Launch mode in Android manifest

Once I realise I’m heading down the stack I’ve been giving myself one pomodoro to try and dig myself one level up.

If I still haven’t managed to solve the problem I might keep going for one more pomodoro or just find another way around the problem.

I’m sure I’ll come across problems where I need to spend more than an hour trying to solve it but for now it’s working ok as a rule of thumb.

It’s definitely fun chasing yaks but I get to the end of the day and haven’t really achieved anything which isn’t fun.

Be Sociable, Share!

Written by Mark Needham

December 31st, 2011 at 3:54 am

Posted in Software Development

Tagged with

  • I do something similar – I even call it my yak stack! I try to follow the adage that you should “never interrupt an interruption” so as to try and avoid getting more than one level deep in the first place.

  • Haha nice. I was half expecting that you’d written a blog post a few years ago about it or something!

  • Haha. When I read your article it was really quite spooky, in a good way. I actually thought I may have written one also and went looking to see if I had, but alas no 🙂

  • Cool, had a similar thought process. Blogged about it real quick here: