A few conceptual prototyping tips
Staring at a blank canvas (or an empty doc – much like starting to write one of these posts!) can be intimidating. Once you start, it’s also easy to get sidetracked from solving the hard problems, or unconsciously avoiding tackling the core of what you’re trying to build (you know, in case it doesn’t work). So here are a few tips to help you when you’re trying to build a prototype.
Back to Basics
Boil whatever it is down to the absolute bare essentials: what exactly is it you’re trying to prove out anyway? A mechanic? A system? An economy? A visual treatment? Identify what problem you’re trying to solve, and then solve ONLY that problem. “But I need an input handler and event distribution system…” – NO. Stop right there. You really don’t. Just build the absolute bare minimum you need to and take it from there. If it’s truly mind-blowing, then maybe you get to build the input handler and all that good stuff (?). But until you solve the first problem, that second problem doesn’t even exist.
Don’t get attached
Use whatever is at your disposal to prove the idea is sound – your favourite language, toolset, excel, pen and paper – whatever it takes, but something that isn’t going to bog you down, and that can let you get to the heart of the problem quickly. Because when you’re done, even if it proves that you’ve just come up with the next great thing, you’re going to throw out your prototype and start over in almost every case. You’ve done the hard part – you’ve proven that the idea makes sense, and you have also proven that it is technically possible to solve – so now you can build it on whatever platform, and with whatever toolset suits your needs.
Don’t get ahead of yourself
Once you get something down, don’t get bogged down in the details. It’s easy to start following the threads down paths and solving problems (or being bogged down by them) that are very premature. Baby steps. Solve the problem right in front of your face, and then take it from there. Small iterations, focused on the primary problem. Building that main menu can wait.
Enthusiasm is one of the primary reasons that developers get ahead of themselves – and that is great – it’s a matter of trying to harness and focus that enthusiasm towards solving the right problems at the right time. It’s really common to see the above points creep into a prototype, and staying focused on those truly core problems is a constant challenge.
Prototyping is a critical and important part of the development process, and a necessary step towards building your million seller. Try to enjoy the journey, the process, and not worry too much about the destination until it’s time.PDF