Blog » The joys of rapid application prototyping

27 Mar 2005

The joys of rapid application prototyping

Filed under: Digital revolution — paulcook @ 1:49 am

The steps of rapid web application prototyping, as examplified by my experiences of the last day or two:

  1. Realise that some things that your application does could be useful elsewhere in the application, and in fact are ideally suited for being turned into a class of encapsulated code.
  2. On the basis of one or two potential uses, design the class.
  3. Code the class, with excellent style: develop a very robust yet simple external interface; use extensive internal caching to improve efficiency, without polluting the global variable namespace; extensively document both the interface and internals of the class; do extensive error and sanity checking on input and variables.
  4. Feel proud of the above achievement — you have a class that does exactly what it is designed to do.
  5. Begin incorporating it into the rest of your application. Realise almost immediately that what you need does not equal what you designed.
  6. Suffer depression. Sleep on.
  7. By changing the goals of the application, redefine what you need such that it equals what you designed.
  8. Start the next design iteration.

So, in summary: I have no idea what the eventual application will do.

Maybe I shouldn’t have skipped those boring computer science classes on project engineering…

« »


  1. Actually, does Caltech offer any classes like that? I too am familiar with the outline in your post, and I would rather not be. Although, I have two additions to make to your process.

    9. Take a 3-week break from your code.
    10. Make another attempt at getting things to work, come to the realization that someone else obviously must have written the code you’re working on, and restart from scratch.

    Comment by Adam — 28 Mar 2005 @ 12:01 am

  2. I don’t know of any Caltech courses — I could have done it during undergrad, but was too busy doing other stuff. Like physics. And having fun. Serves me right.

    And hopefully I’ll be able to avoid the scratch thing, but who knows!

    Comment by paulcook — 28 Mar 2005 @ 12:05 am

RSS feed for comments on this post. TrackBack URL

Leave a comment

Line and paragraph breaks are automatic. You can use the following HTML tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Live Preview