Dynamicland


#1

It looks like some info has begun to trickle out about Bret Victor (et al)’s current lab iteration, Dynamicland (website). For those unfamiliar with it, Dynamicland (from what I know of it, at least) is a computing environment at room / space scale. The room is the computer, and as much as possible, computing happens with physical objects. This enables you to interact with your whole body, to see systems by picking them up, and to share computing space with multiple people (compare this to traditional computing with a mouse and keyboard, with 1 person per computer and minimal sharing).

For starters, there’s a newly active twitter account showing off things, and it looks like there was some sort of jam / expo that happened last weekend, cool! Some neat threads which seemed to showcase it well:

and

I also stumbled across this blog post which discusses some of the ideas behind it.

I got a chance to see the lab 2 years ago when this stuff was in very early stages, but has anybody from this forum visited it recently? I’d love to hear / discuss more!


#2

There are many interesting things about this project. I wish there were a publication of some sort that outlined the boundaries of the work done, what it is based on, the problems they’ve found it solves well, where they intend on taking it… there does not seem to be such a thing yet. Fingers crossed. (insert side rant here about how traditional academic publications are terribly unsuited for a lot of HCI work, but how it is very nice to have something to refer to that sums up the work years later, when the source code does not compile anymore and the authors have moved on to other things).

In the meantime, from what I’ve seen posted around, it seems to build on top of one of Alan Kay’s previous endeavours, STEPS (http://www.vpri.org/pdf/tr2011004_steps11.pdf). STEPS was a project around using modern programming languages, patterns, tools, etc. to have an entire OS, fully usable by the “average computer user”, in less than 20k lines of code. I remember reading a passage around the code for rendering vector graphics - something that would take tens of thousands of lines in C++ - fitting in a couple hundred lines or so.

(here’s a blog post about it if the report is too much: https://blog.regehr.org/archives/663)

So yeah, this tweet that mentions the source code that makes Dynamic Land being on the wall (and presumably directly editable etc.) made me think of STEPS.

I really hope to see some documentation/publication of some sort coming out of that group. I get irritated when a bunch of people broadly hype something on social media that no one else has no access to; it just feels llike cheap social signaling, in a “look how cool we are, but you don’t get to know anything about it besides how cool and revolutionary it is” kind of way. I know that that’s on me, and likely not the intention, but still.


#3

It does seem to share some of the properties of STEPS. I also suspect due to this “OS” running in a room that a lot of the affordances you’d usually have to write in code, you just get for free due to physical reality (I also sorta suspect that the “OS printed on the wall” isn’t the whole story and that there’s some underlying OS, like a Linux box, it sits atop).

Me too. Total speculation here, but I suspect this has something to do with drumming up interest as a fundraising activity.


#4

Me too. Total speculation here, but I suspect this has something to do with drumming up interest as a fundraising activity.

I know for a fact that they are fundraising right now, Bret told me in an email.

I’m seriously seriously seriously interested in visiting the labs someday, but life is in the way at the moment ;(

(I also sorta suspect that the “OS printed on the wall” isn’t the whole story and that there’s some underlying OS, like a Linux box, it sits atop).

Yeah definitely, by “OS printed on the wall” they mean that all source code that’s necessary to run some basic, essential set of the advertised functionality is shown on the wall. “Proof” that the underlying code is simple.
The actual Operating System is a Linux box, and I suspect it is a raspberry Pi.

There are many interesting things about this project. I wish there were a publication of some sort that outlined the boundaries of the work done, what it is based on, the problems they’ve found it solves well, where they intend on taking it… there does not seem to be such a thing yet.

There is some information (semi)-publicly available, but no official publications to my knowledge, and I’ve been following the project like a hawk.

These are some initial prototypes I could find:

  1. https://github.com/cdglabs/tableVision

  2. https://gitlab.com/cdg/camweb

From what I gathered, it looks like it’s built from a raspberry pi as server, connected to a cheap webcam, uses python and OpenCV to process frames, and uses a cheap projector/projection mapping to render stuff to the world. Scripting is done using Lua.

These repos are just some prototypes though, running the code in those repos won’t get you near what they can do I suspect.

Anyhow, based on the previous work on Bret’s site, I have full trust in that there will be an excellent write-up whenever they feel the time is right.


#5

Looks like they have a website up!


#6

Hi, I’m the author of the “this blog post”, thanks for linking to it! I’d love to discuss Dynamicland more, especially in light of their new website.


#7

Hey! Thanks for writing that post, I found it quite illuminating. I’m curious to hear more of what you think about Dynamicland! Have you been? Any new impressions since writing your post?


#8

Dang, this got away from me. I haven’t been, but I have had lots of thoughts since. In the mean time, Omar Rizwan just posted a long essay with videos showing how his “Geokit” works there: https://rsnous.com/posts/notes-from-dynamicland-geokit/


#9

Hello, okay! This will be my first time writing these ideas out loud, and I hope you’ll ask questions if they don’t make sense, and that you’ll have thoughts in response if they do. (Also I’ll be at XOXO if anyone’s going to that!)

1.

It feels like the Geokit essay covers how Dynamicland currently functions in practice pretty well, in that it’s 1:1 with my imagination coming out of my essay last year. The physicality and visibility normalizes collaboration and interaction and access much differently than screens do (even if some privileged text editor coding is still necessary), and I really appreciated the example of the infrastructure person in particular, since it’s a practical human use case instead of an exploration or a toy.

2.

But, coming out of Bret Victor’s past essays and work (and it says “in the spirit of Doug Engelbart” on the latest Dynamicland homepage), I also feel like Dynamicland is first a place to support him in doing the engineering and/or design work behind it. Just as Engelbart intended to build electronic shared spaces for computer programmers first, privileging that group, and then maybe they’d learn enough to start applying it elsewhere (see Whom to augment first), it feels like Dynamicland privileges itself. Yes, it’s inviting the Oakland community into it, but it’s still saying, the future is in here, and in this space, and not out there or anywhere else. (See their long-term plan, One step in a 50-year project.)

3.

Their funding model similarly privileges the work and the space as unique. Bret’s talked before about how funding the lone genius (or their team) and then leaving them alone is the only way we know how to truly innovate, and lamented the loss of that style of government funding and also private R&D in the Bell Labs vein.

4.

But, in both professional design and in community organization, we’ve gone away from the model of leaving the lone genius alone, and just waiting for them to come back with their two stone tablets for us. Participatory methods and co-design, enfranchising all voices, actively facilitating between groups and constraining bad actors, these are the methods we use today, and centralizing the idea of Dynamicland inside the place of Dynamicland seems like a throwback.

What’s the line?

Building a boat isn’t about weaving canvas, forging nails, or reading the sky. It’s about giving a shared taste for the sea, by the light of which you will see nothing contradictory but rather a community of love.

I feel like Dynamicland is first a place to build a boat, and not a place to give a shared taste for the sea. You have to be invited in, and then you have to go to Oakland, and then, as the Geokit essay laments, it’s so hard to share the experience back out with others, words don’t do it justice, you need an active imagination, and so many people behave as if they don’t have one.

Also, I’m extremely lazy. I don’t want to have go to Oakland, and I equally don’t want to have to build a Dynamicland equivalent (e.g. Paper Programs) myself. I just want the future to be here, now. I want it everywhere, in all the things I do and places I work and spaces I’m learning in. If it’s only in a Dynamicland, that doesn’t help me.

5.

So, I’ve been thinking about an alternative form of Dynamicland that’s just the “shared taste” part. My essay was about how maybe you can try the principles of seeing spaces without needing your own Dynamicland. Now I’m thinking, maybe you can try and see and share the principles of Dynamicland, also without needing your own Dynamicland.

I feel like all the “innovation” being funded today is because of the inspiration of popular media from billionaires’ childhoods. I feel like people-younger-than-me learn and emulate from YouTube and from Instagram thread and flop accounts, and fellow adults under 40 are binging Netflix and Hulu, more than taking time to visit a dedicated inspirational space and then thinking long and hard about how that could apply to their own life and work in the far future.

I think I want a fake Dynamicland that lives as a “How It’s Made”-style documentary series on Netflix. I want to see a traffic light in a seeing space, seeing inside it (how it works), seeing across time (how it got into that place and how it affects traffic), seeing across possibilities (simulating it breaking, simulating the infrastructure around it changing, simulating other non-traffic-light options).

I think I want a fake Dynamicland that does one-off real-life seeing space-augmented episodes as YouTube shorts. I want to see that infrastructure person and a city planner come to a new, shared understanding about their city faster than ever before because they could play with the whole city on that table.

I feel like it should be possible to learn all the things you learn in a real Dynamicland without having to build a real Dynamicland. We have ethnographic methods and participatory methods and video game engines and improvisational actors, we can storyboard this yesterday:

  • You talk with your community about things they’d like to know or problems that they have that the city is ignoring
  • You get those people in a room and learn where the disconnects are
  • You collect the data or background research (which you’d need in a real Dynamicland anyway)
  • You get those people in a room again and 100% fake it, Wizard of Oz-style, with facilitators translating the laypeople’s arguments and manipulating the visuals and conducting the interactions
  • You iterate until there’s not only a new, shared understanding, but also until the interactions between the facilitators tangibly make sense in review and to others
  • You edit out all the iteration and get a neat video of normal people getting to do augmented things like it’s totally normal for them, solving real problems, coming to a real shared understanding, without anyone needing to imagine how shining a lazer pointer on a cutout lion and having it make a noise could help resolve a company’s internal business conflicts
  • You do it all over again, building on those interactions and examples to have better and faster cognitive starting points

In the end, you don’t have a Dynamicland that only a select few people can experience. You have examples of a Dynamicland that don’t require a fervent imagination, that everyone can experience, and be inspired by, and want for themselves, and that like the mass media of old, might push them to have their own teams build and test and publish for themselves. It doesn’t require Dynamicland itself to succeed, and it allows other individuals and communities to make it what they want and need.

6.

tl;dr I think teaching and convincing as many people as possible that Dynamicland is a future we can have, can be a different goal, and can have different ways and means, than building a Dynamicland itself.