Up and Down the Ladder of Abstraction
worrydream.com
worrydream.com
This is simply one of the best guides I've seen to anything...ever. It's uncommon for an online guide to have well-written text, even rarer for it to leverage HTML's structure and organization, and almost unheard of to incorporate interactive useful elements that gel with the textual sections.
Well done.
My guess is that he is using his javascript library for "reactive documents" called Tangle http://worrydream.com/Tangle for all the demos in this article.
I'll just add that I really find this whole piece astounding and many levels above the majority of things I find on the internet.
The "Tools & Implementation" section had me thinking of the pure data sound programming environment - the way you drag the numerical parameters in the code (cheekily reminiscent of processing) that draws the circles to change values.
tangle.js is referenced in the html of the page, and I shall certainly be looking into that for maths visualisations at a more humble level.
Or, it's like playing Starcraft agains a good player. You get beaten pretty hard but you still played your best and are proud. But then, somehow, you play a real professional gamer.. and you just feel like stopping playing that game. Nothing works, you look like a total beginner, you get 5/0-ed, and then, you learn he was on the phone the whole time.
Meh.
Try looking at things another way—he's generously provided us all with an incredible foundation upon which to build our own things. After having read a few of his essays, I certainly feel changed.
Building off of your own creations and 750¢ will get you a cup of coffee. Build off other people's creations where you can. If you're doing something different from the crowd, sooner or later you'll get to a point where you have to pull yourself up by your bootstraps, and you have to be able to do that or you'll hit a wall. But it's far from sufficient.
Bret is even more impressive since he combines hardware, software and UI skills.
Why depressive? As Neal Stephenson mentions upon Hiro meeting Raven in Snow Crash. If you are over age of 25, you realize that there are certain levels of excellence that you will never reach even if you move to that Shaolin monastery.
I think some people have this innate drive to excellence (how much of that is acquired and how much is inherited is another discussion) and apply themselves with full dedication. You can see Bret's teenage projects were already pretty impressive.
Ever since then Bret's toolbox of skills has only multiplied till you see the effect today.
This (Tangle) is the one tool that I've seen that is capable of communicating well to non-physicists what I do, without their needing to know Mathematica or C++ in detail. I really need to get around to writing a web page that does that. Awesome. Inspiring. Ridiculously, breathtakingly good. Bret's entire website is outstanding.
http://demonstrations.wolfram.com/
Example: http://demonstrations.wolfram.com/DigitalTiltShiftPhotograph...
http://reference.wolfram.com/mathematica/ref/Manipulate.html
Which is exactly what he doesn't want. The authoring tools should be accessible to everyone.
Secondly, after exploring his site I'm guessing Bret would reject Mathematica even if it were free & open source. Because even then it's not accessible to everyone - you still need to know how to program.
It requires knowing how to program.
All I'm saying is that its a shame he doesn't seem to know about what Mathematica has done in version 6 and beyond, since its seems squarely up his alley... which is ironic because he specifically calls out Mathematica in the article for not being interactive enough.
Right now he's simply playing around with some basic ideas.
On the upside, I'm excited at going through all of his archives. I haven't felt inspired like this in quite a while.
In other words: he's already published paradigm-shifting things!
I know I'm inspired!
The Anybots robots are a great example of a PID filter in action.
A great use of this would be for electronic math textbooks for showing students (high school) how various parameters influence graphs, etc.
Apple: >>I designed the initial user interface concepts for iPad, iPod Nano, and half a dozen experimental hardware platforms. Initiated, designed, and prototyped over seventy concept projects, including radically reinvented interfaces for video editing, animation, drawing, learning, collaboration, mail, photos, and much more. Invented features for Mac OS X Lion. Worked with designers and engineers from all parts of Apple. Routinely presented to top-level management
Also, in general, direct manipulation of objects (mapped to real world gestures/physical object interaction) is not the end all be all of HCI. The use of abstraction in the pursuit of increased expressiveness and user input magnification is perfectly acceptable. Being able to immediately understand something is not more important than being able to efficiently accomplish a task repeatedly.
Whoa that is a pretty strong statement you just made there. I'd say there are two pretty strong and valid camps about this -- one saying its important to understand immediately and another saying tis important to do a depth of work effeciently. Both have extremely valid examples of why their theory is better.
If Apple was not able to use his inventions in a year - it's unlikely Apple would ever use these inventions efficiently.
I'm not buying it.
Color me impressed.
Why not pick an example where his clear ability to make useful visualizations reveals some startling insight about an initially complex system that he then abstracts away to simplicity?
EDIT: Thanks for downvoting guys. If you felt this blog post revealed something fundamental and astonishing, how about explaining it to me instead of downvoting me out of anger? I think I'm done posting on this website.
Your reasoning that "he doesn't keep the car on the road" misses the point. He's demonstrating abstraction itself, and using a medium (reactive documents) that are really engaging.
Focussing on the car itself, kind of misses the point.
Calling his examples "dumb" just looks petty and deserves the downvotes, there is nothing about this that is "dumb"... it verges on "genius".