What we learned from forgetting the 'M' in MVP
So this whole Zonino thing started when I had an idea that it would be cool to mine jobs from startups and create a site that lets you search them. I had the knowhow to build the scraping and parsing system but I was hopeless at UX and front-end design. I'd need co-founders. But to attract the two chaps I had in mind, who were the best I knew, I felt I'd have to show them a back-end that actually worked and dazzle them with something amazing.
So I got to it. I came up with a feature set and got cracking. I worked at it on and off for about 9 months and built a lot of pretty cool stuff.
Eventually I presented the back-end demo to the other chaps and they came on board all excited and pumped to get something cool and useful built! "I'm really glad I waited until I had a great demo ready before getting my co-founders on board," I thought. "I've nailed this".
But the huge mistake I had made became very obvious very quickly and I'd like to share a few important lessons. None of this is new, of course. But maybe hearing it again from first hand experience is useful.
Lesson 1: Working with other people changes how you work - and it's brilliant.
Nothing focusses the mind like sitting next to other people working on the same problem. The motivation that comes from knowing that you'll end up holding everyone else up if you don't ship what you're working on is notably absent from coding alone on a project. If you lack self discipline then get some others involved and feed from each other's contributions. I would have made much speedier progress with my co-founders on board earlier.
Lesson 2: If you can't get co-founders interested with your passion and a rough prototype then it's unlikely a working project will excite them.
I thought that I'd nailed my co-founder pitch with a slick demo of the back-end. Which I had. But it was only a matter of minutes before they said that this was totally unnecessary. They liked the concept and said that having a totally fleshed out feature set wasn't really that important. In fact, to the contrary, there was concern that we wouldn't be able to move fast enough because we'd be dragging around legacy code before we'd even got started. There's a good quote from Steve Blank to go here (but isn't there always?).
You’re selling the vision and delivering the minimum feature set to visionaries - not everyone. - Steve Blank
Now we're not strictly talking MVPs here because a Zonino MVP without a front-end was playing a bit fast and loose with the 'V' and the 'P'. But the point is that you don't need to impress your users straight away. You need to impress the people you want to get on board which is as much a test of them as a visionary as of your demo feature set.
Lesson 3: Back-end people get very excited when they see new front-end stuff taking shape - it's hugely inspiring.
Seeing the very first mocks, let alone the first actual cut of a working site got me all tingly. To see something tangible and usable take shape really motivated me to get things finished off and working properly. If I'd had a professional and slick front end design to inspire me early on I'd have worked to a much punchier schedule. Without seeing what the product will actually look like and feel like to use one has to work on much more abstract problems and it's all too easy to lose focus on the bigger picture.
Lesson 4: You end up throwing away a lot of features that you spent a long time building.
As soon as I talked through some features I had already implemented with the others I realised they weren't as useful as I had thought. Also, having a working prototype is absolutely essential - and that means a bottom up version of everything. This is not a new idea - but as soon as real people use your product you'll discover you were very wrong about a lot of things. The first person we showed the search began a trend of complaints that it was too complicated. So we went in and tore out loads of features to simplify it.
This is a lesson in and of itself. Being confident enough to throw away stuff you've spent a long time working on is really important. That might well be worth its own post later. But the point here is that I could have saved myself a lot of time by only building features that I could immediately validate.
As I've said, these ideas are hardly new. But I think it can be tempting to strike out on your own to prove your own idea before sharing it with the other people you know you'll need to make it happen. Just make sure you don't get too carried away going solo.
Try Zonino here and see what all the fuss was about.