Prototypes are at their best, when they are seen as a tool for tinkering. When using them as the standard method for visualizing possible solutions to a problem, they let you discover ideas that you wouldn't have come to mind when working solely on isolated application states.There are three essentials of successful prototyping:
- Speed is everything. In order not to fall for the temptation of seeing whatever first comes out of the prototyping process as the ideal solution, you need to get comfortable with throwing away your work;
- Keep it small. It is often easier to create a series of small feature prototypes than one big demo;
- It's not for production. Trying to force the code into that system results in lots of workarounds that wouldn't even be needed when not starting from prototype code.Your code should be at least written nicely enough so that you still understand it the next day.
.