The Ladder of Abstraction
October 11, 2011 4:33 PM   Subscribe

The Ladder of Abstraction does an amazing, Tuftian job of illustrating the convergence of science, engineering, and intuition that is involved in tackling the difficult problems of today's systems and software.

Author Bret Victor's bio, Apple Story, Ten Brighter Ideas and entire site are worth exploring.
posted by rsanheim (29 comments total) 48 users marked this as a favorite
 
As a software developer and architect, the next time someone asks me "what is creating software really like?" I'll send them the Ladder of Abstraction". Inspiring.
posted by rsanheim at 4:34 PM on October 11, 2011


"Tuftian" should have been my first clue that this would be waaay over my head. I did like playing with the little car, though.
posted by Pirx is my co-pilot at 4:42 PM on October 11, 2011


Fascinating in its own way, but I find the subject matter distracting because this is pretty much lecture 2 of any undergrad class on control systems.

But the three-levels-up visualization is pretty cool. As long as you're willing to ignore all the existing control systems graphical representations of this sort of thing.
posted by GuyZero at 4:46 PM on October 11, 2011 [3 favorites]


This is pretty cool. His plots look very much like the sort of thing we would use in engineering analysis/design. I look forward to reading this a bit more closely
posted by jpdoane at 4:47 PM on October 11, 2011


let me clarify that as a design exercise, this is genius. It's just sort-of-interesting as control systems exercise.
posted by GuyZero at 4:48 PM on October 11, 2011


Yeah - I don't think the example was intended to be an interesting engineering problem, but more in the theory of developing useful visualizations of data at various levels of abstraction. Its sometimes tough to figure out how to present a bunch of data in an intuitive and helpful way, so that you can really understand the design space
posted by jpdoane at 4:51 PM on October 11, 2011


"Tuftian" should have been my first clue that this would be waaay over my head.

Then it has failed at being "Tuftian". Tufte was about making information clearer and easier to understand. This really doesn't clarify much, if anything. In the Tuftian world, the graphs and charts and images wouldn't need the acres of accompanying text.
posted by Thorzdad at 4:58 PM on October 11, 2011


In the Tuftian world, the graphs and charts and images wouldn't need the acres of accompanying text.

Most of the essay is a set-up of a problem domain for the chart in "Three Steps Up". The issue is that it's really a meta-essay and the problem domain he uses isn't germane to the points he's making, but he needs to spend most of his time explaining the problem in order to make the points on the meta-problem.
posted by GuyZero at 5:02 PM on October 11, 2011


Is anyone else reminded of the pen-and-paper "vector racing game".
posted by klausman at 5:09 PM on October 11, 2011 [2 favorites]


Beautiful.
posted by kprincehouse at 6:02 PM on October 11, 2011


Yes, please! I love me some data visualization.
posted by Phredward at 7:34 PM on October 11, 2011


Great link, rsanheim! Thanks.

I love his proposal to replace algebra with scrubbing calculators.
posted by straight at 7:38 PM on October 11, 2011


But the three-levels-up visualization is pretty cool. As long as you're willing to ignore all the existing control systems graphical representations of this sort of thing.

Great visualization tools, but then you realize that none of what he is talking about helps lead to a solution. The abstraction is pretty, but it isn't helping.
posted by Chuckles at 7:54 PM on October 11, 2011


Very interesting link but, strangely enough, that is not how the architecture of real systems is done. It's impossible to model any non-trivial system in such a way that variables can be cleanly isolated from each other or from the behavior (ie the 'rules') of the system. And when you begin talking about distributed systems basic concepts like 'time' break down and there is no single god-like view of 'the system'.

Using such simple examples on students (this is analogous to the infamous 'write a program to make a pb&j sandwich') isn't such a good idea, I think. It misleads them about the fundamental challenges you encounter in the wild. Better to throw them into the thick of it and let them sink or swim.
posted by nixerman at 8:16 PM on October 11, 2011


This guy's manifesto previously. Whatever the merits of his ideas about how to do math, he encourages hatred of people who think differently than he does, and that's evil.
posted by stebulus at 8:25 PM on October 11, 2011


Great visualization tools, but then you realize that none of what he is talking about helps lead to a solution. The abstraction is pretty, but it isn't helping.

the three-levels-up bit shows which parts of the problem/solution space are stable and which aren't. It's a novel way to view it. But I didn't realize that this guy just hates algebra and loves discrete mathematics. Because most people would just find a closed-form solution with algebra and calculus.
posted by GuyZero at 8:29 PM on October 11, 2011


Why is it that NOBODY has mentioned that there's no Flash in this page whatsoever! Very impressive from a webdev standpoint.
posted by fnerg at 8:30 PM on October 11, 2011 [2 favorites]


Why is it that NOBODY has mentioned that there's no Flash in this page whatsoever! Very impressive from a webdev standpoint.

Yes I would like to know how he did that.
posted by grog at 9:00 PM on October 11, 2011


Didn't see that 'Kill Math' essay. That explains a lot. It's a noble goal but this desire for a 'visceral' understanding does not scale. We need powerful abstractions precisely because naive intuition only gets you so far.

If you asked a non-engineer to describe a system that allowed a car to drive itself they would naturally begin giving you a set of global rules that relate state and behavior eg 'turn right when you see the road curve right'.

And this might even get you out the door.

But what happens when you introduce other vehicles on the road? And those other vehicles each behave differently? Depending on X, Y and Z? And the road itself is threat space with tight, muddy corners that invite slips or potholes that contain IEDs? And the threat vectors themselves are driven by patterns that have to be derived from real-time analysis with continual communication between observers and controllers and analysts? And you need to control not just a single vehicle but a fleet of vehicles? Oh, and, yeah, the standard problems of fuel and provisioning and monitoring and management need to be dealt with?

And one more thing: exceptions will happen. They are not exceptional, they are the rule.

Approaching such a problem by asking "what are the parameters" is silly. There are countless millions of them. The best you can do is hire a bunch of engineers and pray. Which is basically how real systems get built.
posted by nixerman at 9:10 PM on October 11, 2011 [1 favorite]


Perhaps he is offering a much needed balance to field(s) that are increasingly dominated by one very limited approach to math and problem solving, and could see some significant improvements through other approaches?

nixerman: I agree with you that real systems are irreducibly complex. What Bret is doing (I think) is proposing other tools in the toolbox that have typically been ignored as abstract, symbolic math has "won". Of course you can't model a generic driving simulation with a few html5 widgets, but maybe you can model _some_ properties of, say, different engines in a 2013 Camry trying to eek out another 0.5 MPG on freeways using Bret's approaches instead of formulas and symbols. And maybe could enable more smart people to be engaged in that kind of problem that previously hadn't, or at least get excited about those problems at a younger age when typical math doesn't work for them.
posted by rsanheim at 9:48 PM on October 11, 2011


Both symbolic and visual abstractions can do so. But the human brain is fundamentally a pattern-matching machine, easily outperforming any machine we can build — for certain kinds of patterns. With visual patterns, we win hands-down. With logical inferences, we're slow and clumsy.

We are human beings, and our tools should play to our strengths.


I see the value in visualization, but perhaps he is assuming that everybody thinks in a very visual way, which I believe isn't always true. I don't really think visually at all, for example; I much prefer to read than to look at pictures or videos, and the first thing I do when I'm given a problem is try to break it down into symbols and numbers which just make more sense to me.
posted by destrius at 11:31 PM on October 11, 2011 [1 favorite]


At each plate:
Move bean forward by 1.
If left of plate, turn bean right by 1.0°.
If right of plate, turn bean left by 1.0°.
IAMNAE
posted by elphTeq at 11:37 PM on October 11, 2011 [1 favorite]


What Bret is doing (I think) is proposing other tools in the toolbox that have typically been ignored as abstract, symbolic math has "won".
I think the assumption that simulation and visualization have been ignored is a total straw man. Really, the strength of abstract/symbolic techniques become obvious when simple quantity analogies break down, usually around 8th grade or so. Yet, even advanced engineers and scientists still go for a well-designed picture to communicate an underlying model.
posted by migurski at 12:31 AM on October 12, 2011


Great visualization tools, but then you realize that none of what he is talking about helps lead to a solution. The abstraction is pretty, but it isn't helping.


If you read until the end, you will see a graphic where all local maximum solutions are evident.
posted by CautionToTheWind at 3:59 AM on October 12, 2011


Why is it that NOBODY has mentioned that there's no Flash in this page whatsoever! Very impressive from a webdev standpoint.

Yes I would like to know how he did that.


If you look around on his site, there are a few javascript libraries that he has written specifically for this. I think they are amazing!
posted by a womble is an active kind of sloth at 6:24 AM on October 12, 2011 [1 favorite]


If you read until the end, you will see a graphic where all local maximum solutions are evident.

Could you be more specific? I don't see anything meeting that description.
posted by stebulus at 8:33 AM on October 12, 2011


Perhaps he is offering a much needed balance to field(s) that are increasingly dominated by one very limited approach to math and problem solving, and could see some significant improvements through other approaches?

That does seem to be the story he's selling, yes. It's a self-aggrandizing fiction.
posted by stebulus at 9:20 AM on October 12, 2011


Perhaps he is offering a much needed balance to field(s) that are increasingly dominated by one very limited approach to math and problem solving, and could see some significant improvements through other approaches?

He's hardly the first person to propose discreet simulations of continuous systems. Simulation has its place - and it well-understood by many people - and closed-form solutions have their place.

Oh, and you can't simulate without being able to do closed-form solutions. Unless you just build the damn thing. Which is no longer simulation.

At any rate, it's less novel than he makes it out to be.
posted by GuyZero at 9:35 AM on October 12, 2011


Shouldn't it be "Tuftean"? =D

I really enjoyed this. If I go back to school, it's either going to be for this kind of thing or for consciousness studies involving lucid dreaming. Thanks for sharing it, it was nice to see a lot of my loose thoughts crystallized. And the tools were neat to play with!
posted by Eideteker at 8:42 AM on October 19, 2011


« Older Michael Cuddyer: OF/IF/Photography   |   It Was A Pleasure To Burn Newer »


This thread has been archived and is closed to new comments