In this 30+ minute video, Firefox creative lead Aza Raskin explains why you'd want to do iterative prototyping and how you do it in order to get from idea to execution. I think that the Internet's ability to support and sustain low-cost iteration is its signal virtue, but this virtue is often missed by bigger, older institutions that are accustomed to high failure costs (e.g., you print a million of the wrong book or make a million of hte wrong shirt, it's a big deal; you serve a million of the wrong page and change the design, it's business as usual).
For those who do not want to sit through the 30-minutes romp and my rapid prototyping, here are the principals of prototyping that I explain fully in talk:
1. Your first try will be wrong. Budget and design for it.
2. Aim to finish a usable artifact in a day. This helps you focus and scope.
3. You are making a touchable sketch. Do not fill in all the lines.
4. You are iterating your solution as well as your understanding of the problem.
5. Treat your code as throw-away, but be ready to refactor.
6. Borrow liberally
7. Tell a story with your prototype. It isn't just a set of features.
How To Prototype And Influence People
(via O'Reilly Radar)