Inventing on Principle

Inventing on Principle – Bret Victor
Victor’s website:

Inventors need an immediate connection to what they are creating. They need a feedback loop. Agile guys know this really well. Very clever visulization tools.

Makes me think about how abstract and latency heavily our work currently is and how we really could use better feedback…

His example on binary search is interesting, but I prefer TDD for the ‘instant feedback’ because it creates useful artifacts that can be kept. I’m also concerned that any problem of magnitude might not have a reasonable visual representation.

To some degree active annotation in debussy has some of these kind of capacity, but not much. And the problems of magnitude require simulations that are too extensive to simulate in realtime.

It seems really good, but for only for things that are well understood and easily modelable at high speeds.

Visulization: Show data, show comparisons.

Larry Tesler – remove modes from software – "no person shoudl be traped in a mode" (xerox park in 1970s) he created click and drag, cut and paste, etc.
Doug Engelbart – interactive computer usage
Alan Kay – amplify human reach – Graphical UI, OOP
Richard Stallman – software must be free as in freedom – GNU

You need a specific insight to use as a principle. Make SW simpler isn’t enough. "get rid of modes" is enough. "Can you immedately see the effects of what you did" is enough.