Interactive editor based on the 'Inventing on Principle' talk
gabrielflor.it
gabrielflor.it
But more important than his particular example is the general theme. Having a principle, which is a specific, actionable thing wrong with the world (other examples from the talk: Larry Tesler and modal computing, Richard Stallman and non-free software) is what allows you to have the biggest impact. It's being able to look at something in the world and ask yourself: does this match my principle, and if not, how can I fix it?
"I can make these changes as I think of them. That is so important to creative process. If there is any delay in that feedback loop between thinking about something and building on it, there is this whole world of ideas that will just never be. These are ideas that we can't think."
This enables a style of self-guided learning involving forming a mental model of how particular bits of CSS work, playing with them until they break in expected ways (validating the model) or unexpected ways (prompting more experimentation or a visit to documentation, and subsequent improvement of the model).
I can also attest to the fact that live web page prototyping is a fun way to impress non-coders/non-web-developers :)
Comparing creative works built using a slow-feedback model versus a fast-feedback model is also interesting. With music, fast feedback would be playing an instrument directly; slow feedback would be putting together the output with a sequencer or drum machine, or writing it on paper to be played by an orchestra. The fascinating bit comes when you get sufficiently advanced practitioners of the art of slow feedback - for instance, composers who can hold an orchestral score in their head and imagine how it will sound, essentially having built a sufficiently advanced mental model that they gained a fast-feedback loop within their imagination. Does this suggest that for any given domain, even if there are obstacles in the way of fast feedback, that someone will eventually always be able to transcend the domain's limitations... or does it suggest that if we had better ways of communicating an entire orchestral score in realtime to an orchestra, that composers would generate even better works?
http://www.chris-granger.com/2012/02/26/connecting-to-your-c...
Video here: http://www.youtube.com/watch?v=7XUWpze_A_s&context=C4f8c...
And go watch Bret's talk if you haven't - a truly ingenious presentation! :)
I'm getting over my abject hate of skeuomorphism. I'm coming 'round to the idea that it can help give users confidence that they'll be able to use your product.
...but this baffles me.
What I don't get is why the output is on the left and the code on the right (again as in Victor's talk). For left-to-right language users, a left-to-right flow of input to output makes more sense. It's not a huge issue, but still puzzling.
(Only such a beautiful specimen deserves such nitpicking, but: it's not a _genius_ talk, it's an _ingenious_ talk. _Ingenious_ is the adjective form of the noun _genius_.)
The setup is awesome though, and it does a great job demonstrating what all the values do. I'll have to watch the talk now.
http://danielchasehooper.github.com/CodeBook/
You guys might want to think about working on it together. His version includes the introspection on an item in the canvas as well as some other great things like inline, as you type JSLinting.
There was also this guy who was building a HTML5 live canvas app based on Bret's demo, which looks to be quite handy (if it's released):