A few weeks ago, I wrote about shipping. Actually delivering finished work to clients is 1000000% more important than using the latest cool thing if you want to have a solid business and good referrals.
Long projects zap morale. The longer it takes to develop, the less likely it is to launch. - Rework
That ‘awesome’ project
A few years back I got to work on an awesome project with awesome clients. They didn’t have a firm scope, but they did have money to back the project and they were willing to trade a fixed price for the ability to change things as we went.
I thought it was going to be great. We’d get to be responsive to the needs of the project and just keep moving. We’d be doing Agile development (and a whole bunch of other buzz words).
The problem was that I put no guard rails on the project at all.
I worked on it for months and billed monthly for the work. Then we kept adding/tweaking things and I started to think it would never ship.
My motivation to work on the project died. There was no life in it.
I stopped shipping.
The clients got really angry and rightly so. They pulled the project from me and got someone else to work on it.
Then they dropped that they were thinking about suing me, due to lack of delivery.
This was a client that had sent me birthday cards and now they were talking about legal action.
It was early enough in my business that I was still running project to project to pay my bills, so there was no extra cash to offer a refund. My wife was working full-time still and she wasn’t as aware of what was going on in the business as she is now.
I was running it alone (at least that’s how I felt which really was my own fault).
Looking back, after a few years, it was all my fault.
First, it was all my fault because I didn’t push hard for some set features to make up a minimum viable product.
Second, it was my fault because I didn’t say no enough to all the ‘cool extra’ stuff we added to the project as we went.
Third, it was my fault because I didn’t recognize my lack of motivation and the fact that I wasn’t shipping. I started to work on other projects instead that I was ‘interested’ in simply because they were new.
What doesn’t ship
After building tons of web projects, here are some of the flags for projects that are going to have a hard time shipping.
Sure it can be great to just throw money at a problem, but few people truly have unlimited funds. They may have $20k and figure that’s enough money to realize their wildest dreams.
So, they want to be ‘responsive’ and ‘agile’ with the scope. Get a scope, or at least set a point in the project that you should have enough discovery so you can set a proper scope.
Running a project scope-less is like running around pant-less. It may feel free but you’re in for trouble when the cops catch you.
You need milestones for delivery. Maybe with a loose scope project the first milestone is a technical report on how you’d accomplish the project start. Maybe it’s a report on the competition or after a call to talk design a set of color and font choices for your client.
Don’t just work ‘till things are done’. Set a timeline and stick to those deliverables.
Your goal should be to continue to refine the project as you go and get better milestones.
The other thing about milestones, is that they help you feel like you shipped something, not just push code to a site and then pushed some more. A milestone marks a point in time where things were ‘ready’ and shipped.
Maybe it wasn’t live to the end users yet, but internally it’s being tested.
Now when I get a project with really loose or undefined scope I will still take it, but we set a milestone (2 or 4 weeks seems to work well) and then we refine a scope for the rest of the project version 1.
That gives the client some time up-front to explore what’s needed and how the idea will work, while putting some boundaries on the project.
How have you dealt with projects with loose scope?