Until Bret’s talk about “Inventing on Principle”, I had never given much thought to the barriers between ideas and their fruition. I was blind to the many hidden barriers between ideas and their realization. I did not see the textual representation of code as a barrier. Learning an IDE as another barrier. Compilation, yet another. I did not realize how disconnected my ideas were from their fruition. How many of these ideas died due to these barriers? A lot of them.
I know I am not alone, because many folks have been trying to realize Bret’s dream in the form of improved toolsets and increasingly interactive visualizations.
The problem is that Bret only gives you glimpses into what “can” be done. The closest thing to a realization of what he demonstrates is Tangle, a remarkably powerful way to tie dynamic aspects of a document together.
It gets worse
Bret has produced a couple more talks. The talk I found most disturbing was Drawing Dynamic Visualizations. Bret demonstrates an amazing tool where he creates flexible visualizations as quickly as an artist fluent in Adobe Illustrator creates a drawing. Art meets science, and it’s beautiful.
The problem is, I’ve been waiting for months and there is no tool. Worse yet….I can see how such a tool could be written. I see the parts in my head. How the pieces interoperate. It seems simple, elegant, powerful and worst of all, it’s causing me to lose sleep.
Here’s what I am thinking. The basic tools are already there within the browser.
- SVG – Already knows how to draw, color, animate and transform basic shapes.
- MVC Frameworks – such as Ember, Angular, Knockout provide a framework for Data driving an elastic view of that data. Why not an SVG visualization? I considered tangle, but these seem much more full-featured.
What’s missing is an editor, like what he demonstrates to put it all together. Probably, also some sort of strategy for exposing configurable parameters and binding it to dynamically changing data. Composition patterns also need to be accounted for as well. Once I teach the computer how to draw a star, I should be able to reuse that composition.
There’s probably a whole lot more I am not seeing…but I think I might have to try my hand at writing this tool, if just to get some sleep…
Advice is always welcome…