Planning… A week on

My last post was about planning. I did broadly as I said in that post, and planned out development and marketing activity for my latest app.

Since doing so I have encountered a series of blockages against my planned development time. Nothing ever goes to plan, right?

The Blocks:

  • Working with beta versions of iOS. I’ve encountered some bugs and oddities. I’ve had to file my first bug report. This has been quite challenging, and in hindsight I should have expected more of this than I did.
  • My experience. Some of the things I’m doing within this app are new to me, so I’ve had to do some learning along the way. I did account for this with buffers of time in my plan, but it’s still felt tough at times.
  • Bringing my library in. I have a framework for my video mixing engine. This works fine when use in other projects for iPhone apps, but not when dropped into an iOS 10 message extension.
  • I’d planned for development but not administrative tasks.

So what have I done about it?

I really want to ensure I get shipped as soon as is possible, so I’ve tried to take a pragmatic view on blocks.

I’ve chosen work-arounds, and made notes for revisiting those post-release. Work-arounds are not always possible though, and a couple of issues have had to just be ground through. The guiding principle is always based on ensuring release.

I’ve spoken with other developers about some of my issues, drawing from the online community and those I know locally. Sometimes it’s helpful just to bounce things off of someone else, although I’d rather not just treat people like rubber ducks.

Sometimes I switch what I’m working on to another task within the project that can be done instead. It can be good to just change ‘modes’.

If all else fails, I go for a run. It can be easy when working on problems to just keep going and going. After a certain point this rarely results in fixing the issue itself. Scheduling a run in my day, and enforcing cut-off points for transitioning from work->family life are quite essential.

The most successful strategies are those where I take a step back, however much I don’t want to at the time.