- App Projects Are Not Small and Easy
- Apps Are Not Easy to Program
- Poor Skill Set Fit
- If You Get a Good Developer, You Still Have to Worry
- The Idea Is Not More Important Than the Execution
- Unwillingness to Delegate: Micromanaging
- Bikeshedding
- Poorly Defined Requirements
- Out-of-Date Requirements Documentation
- Constantly Changing Requirements
- Leaving the Worst for Last
- Cost Overruns
- That Last 10%
- The Whack-a-Mole Problem
- Poor Communication
- Abdication of the Management Process
- Wrapping Up
Unwillingness to Delegate: Micromanaging
If refusing to get involved in discussions about the details of their app is on one end of the app creator engagement spectrum, the opposite extreme is micromanaging, and it’s no less destructive.
Some app creators insist on being far too involved in the minutia of their projects. They question the necessity of every code change and want justifications for every hour spent. They’re insistent on getting exactly what they think they want and/or spending as little money as possible, but they end up forcing work to be done over (and therefore wasted) and making people wait on them. Causing developers to wait for someone to make a decision is a waste of time and money, and causing them to have to do something over is a waste of time, money, and goodwill.
It’s important for app creators to have control over what happens on their projects. I’m not trying to contradict that at all. The question is one of frequency. The vast majority of the time developers spend on a project should be time spent doing development. That’s what developers are being paid to do, and it’s where their expertise is. That sounds obvious, but it’s quite often not what happens.
There’s a way for app creators to maintain control of their projects, and it’s to make (and document) decisions the developer needs to have made before the developer needs them, so the developer doesn’t have to wait (or guess wrong and do it over). A good developer should be able to generate a list of questions that are going to need to be answered far enough ahead of time to give the app creator time to think and decide. If you as an app creator find that your developer is having to wait on you, or that you are frequently asking your developer to redo things a different way, it’s time to have a conversation about doing a better job about defining requirements.
We’ll discuss this more in Chapter 2, “The App Development Life Cycle.” For now, understand that it’s not necessary for all the requirements for an entire app to be completely documented before any development starts, but it is important for developers to know what’s required of the piece of functionality they are currently working on when they start it. Not doing so leads to wasted time and money and can put the whole project at risk.