The video is a very good overview of the project.
One interesting artifact of "the real world simulates itself" is version control. At Dynamicland, each version of a program is a sheet of paper (with a unique set of fiducials along the edges). If you want to edit a program, you grab a keyboard and point it at the program. A text editor comes up; you make your changes, and hit commit. When you do, it spits out a new piece of paper with your changes. Put it in the view of the camera to use the new version. Take it away and use the old paper to roll the change back.
That’d be pretty funky.
You could also implement input and output piping between programs in a more organized way where their physical orientation isn't as critical as most page references seem to be. eg: Put a tag on a sticky note that represents a pipe, put it close enough to the 'output' of one page then stick it to the input of another compatible page.
Not sure how protected the individual pages are from outside modification because real details are quite thin on the ground. I think right now you could probably turn every display page into a rick roll if you wanted.
I suspect each piece of paper, if examined with a good enough camera, has a unique fingerprint, like a snowflake, and perhaps this could be used in the future for an "Isomer Addressed Filesystem". In other words, all pieces of paper ship with a UUID already, woven into their atoms.
The goal has always been to move away from the dots, you can see this in the progress report: https://dynamicland.org/2019/Progress_report/
That said, and this is purely my opinion, the system works well enough as it is, and there is so much fun stuff to build on top of what works, that it's hard to prioritize a better object recognition system over the myriad of other interesting things to be done.
https://en.wikipedia.org/wiki/DARPA_Shredder_Challenge_2011
Fun fact: Otavio Good, who led the winning team, learned about the printer dots on this very site. As I recall, he said that the dots were like a map that let them reconstruct the shredded documents.
Thank you for reminding me, and others, how immediate and obvious success can be.
But then, how do B&W laser printer allow for tracing ?
They don't, because they don't need to. The point of the yellow dots is to prevent the printing of counterfeit currency, which itself tends to require the use of more ink colors than only black. It's probably possible to refill a "black" ink/toner cartridge with the exact shade of green (or whatever) to replicate the color of a currency note, but if it was easy to do then there'd probably be a lot more counterfeit bills floating around.
The ink/toner is also half the battle. The other half is the paper, since obviously the US Treasury doesn't use ordinary printer paper to print $20 bills. The usual trick is to take a $1 or $5 bill, bleach it (or otherwise remove the existing printing), and print a $20 bill design onto it - but that's easier said than done, due to both the ink/toner color issue mentioned above and due to the difficulty of getting the donor bill exactly aligned (and doing so again, in the exact same way, for the other side of the bill).
I believe the FAQ confirms that this is not possible at the moment:
> Where can I get Realtalk?
>> At present, Realtalk exists in Dynamicland spaces and in the spaces of our collaborators, where we can carefully grow and tend in-person communities of practice. In the short term, additional spaces will be started by people who have contributed significantly to an existing space and have internalized the culture and its values. Long term, we intend to distribute the ideas in the form of kits+games which will guide communities through building their own computing environments that they fully understand and control. Long long term, computing may be built into all infrastructure as electric light is today. This would also require an extensive network of educational support.
"Our goal is to invent a form of computation which local communities of non-specialists can make for themselves. From the ground up, for their own needs, which they fully understand and control."
I'm LiveStreaming building a RealTalkOS implementation now. Come join and let's build together! https://youtube.com/live/02-wJ7Od9Bo?feature=share
there's something ominous, weird, and sort of damning about being protective of your "culture and values" in this way and to this extent. If Dynamicland offered a truly novel computing paradigm, it should be one that is accessible by other cultures. If it offers a valuable culture and worthwhile values, those values should be viral on their merits. They should be broadcast, rather than kept closely guarded.
If you have to carefully indoctrinate new users into your culture in order to protect it and keep out the Others who might ruin your culture with wrongthink, maybe what you actually have is a cult.
It is very America-centric and that's very sad to me.
I think Bret is a bit hesitant to share the stuff before people understand what it is, to prevent the same problem that happened when Jobs visited PARC and walked away with the idea of "we need to build computers with the desktop metaphor", without understanding at all that it was always meant to be about authoring and sharing, not about the visual metaphors.
Regardless, I hope to see more actual standalone instances/offshoots of dynamicland.
Can you expand on this, or share some links so I can learn about it? I've not heard the story framed like this before. I'm interested to learn "what we missed out on" as a result of "visual metaphors" becoming overemphasised in the public mind.
It doesn't seem like the effort here is to keep out any group, but rather to maintain a cohesive structure to the technical and group work aspects of it. Social technologies can be as brittle as they are useful, and abstracting / commodifying them can often make them work in a way that directly undermines their creators intentions.
Yes, AND it may also be because it's kind of innovation in the open, before it's really ready or that all the critical angles are fixed, and they might not want spoil specifics they would like to make flourish and present to the whole world, and see them ... let's say half-assed, or misunderstood enough that it does not "jell".
In the end, it will be embraced in some way. But it's understandable that they have a specific idea in mind.
See it as a trailer for a movie where post-prod is not yet fully done, perhaps.
Still, they've been working on this for yeeeears.
Rule 0: "Behave in a way that lets us not need to make additional rules" and things like that.
And I can doubly see it, if you have something ~new, and I could very well see that this is the thing that works if and only if you play along.
Just like building full stack software, there's a large amount of nonobvious skill in dictating your separations of concerns between the physical layer and software layer. Good programs are flexible, remixable, modular, intuitive, and let non-programmers make nontrivial interactions and enhancements via the physical layer. Bad programs require you to have the physical objects in a particular configuration, or break completely if one piece of paper is lost. I found these programming design questions a really interesting part of playing at Dynamicland.
A solid limitation of the system is that the pieces of programs aren't actually modular. You can't take a Cat from one program and a Dog from another program and have the dog interact with the cat. This is obvious in software - that's why we design APIs - but it's frustrating when all your programs exist in the same space (that's the whole selling point) and when bringing part of Program A into Program B is so intuitive and, when you have dozens of these programs lying around the room, inevitable.
I'd love to see them explore (wait for it...) using AI. Incorporating object recognition could remove the need for pasting dots onto every object by defining rules like "when you see a car, color it Red". It could allow for inter-program interoperability via the shared language of object recognition. And it could even determining logical interactions in a fun and surprising way: what _should_ happen when I take the cactus from this program and put it on top of the balloon from that program?
I also thought this, but learned that what I needed was an Alan Kay style "change of perspective".
The key for me was understanding the "wish" and "claim" concepts in Realtalk. In your example above, you would need to separate your "Dog" program into two programs: One that was simply a program claiming "I am a dog" and another that would encode dog behavior, something like "I wish that a bark sound would play when a dog is near a house" - then you'd leave it up to Realtalk to make that happen. Adding "Cat" behavior would mean adding two new programs: one to claim "I am a cat" and another "I wish that a meow sound would play when a cat is near a house". To make the "Dog" and "Cat" interact, you'd add a program that said "I wish that a growl sound would play when a dog is near a cat" and so on.
Another example that might help is how I learned this myself: I made a set of playing cards. What I ended up with was 52 pieces of card stock, each one had a program that was simply "Claim that I am card X" - and then I made separate programs the give those cards meaning. For example a program to give the cards a style would be something like "I wish that card 1 will have the Ace of Spaces printed on it, etc" and another program would be something like "I wish that the sum of all face values of the cards on this line is printed next to the line"
It took me several days to internalize this, but once I did things started getting fun pretty quickly. For example, I was able to make a program to "clone" a real world image onto a playing card by having Realtalk take a picture of a rectangle and then always project that image onto a particular card when it was face up. Because the cards just made claims about their identities, this let me separate the designs on the cards from the rules as well as add "training mode" programs to help teach basics. And they were all decoupled!
Well, you know what, whenever someone invents such a thing, it would be great. But it doesn't exist yet and there's good reason to think it never will.
What is 100% certain is that LLMs are not intelligent and never will be. They are just very good at producing totally stupid, mindless output that convinces some people it's real and was produced by humans.
It isn't, and it won't be.
Paper Programs:
https://www.youtube.com/watch?v=pkwSoJrVWAY
https://github.com/janpaul123/paperprograms
There's also a dead-project: Tiny lands
https://news.ycombinator.com/item?id=26751374
Here are some of my notes for Dynamicland:
https://omar.website/posts/notes-from-dynamicland-geokit/
https://twitter.com/redblobgames/status/907253802931126272
https://pbs.twimg.com/media/DJc2esBVwAAnj4X?format=jpg
https://omar.website/posts/notes-from-dynamicland-geokit/nic...
It's as if you asked someone to redesign the computer (as a concept) based on the technology and knowledge we have now, and designed around the tasks most fundamentally human.
Always inspiring, always a gut check if I'm doing work that's valuable.
We were very inspired by Dynamicland. We're aiming to build a kit that uses more natural language inputs, gesture, and higher level programming. We're building this up as an open environment/kit so people will be able to make their own programmable spaces.
Please reach out if you know of folks building similar spaces or efforts.
that said, I have to admit that it doesn't really feel "right" based on what I've seen. there's so many limitations to the physical world that a virtual space doesn't have. i get that physical objects can participate in the UI and that arranging things in 3D space is sometimes nicer than using a mouse/keyboard.
However, the fact that there is still code written on pieces of paper, and that the projector can only show a 2D image (which is only primitively interactable) just looks super awkward. and the question of "what can you do" when you're staring at a blank table seems tough
again, it's super cool research but i wonder if he has plans to resolve some of these fundamental issues with mixing real and virtual
The mental model I use is professional cooking in a kitchen vs home cooking. Different scale, tools, and approaches but some overlap in core ideas.
A pro cook can criticize a home cook's workflow and tools, but the goals are different!
Ultimately, it didn't succeed in that goal but I believe inventing the first spreadsheet software can be counted as achieving some success there.
I admire this project and hope they can one day move beyond simply typing code on a sheet of paper to creating tools that actually make our compilers/IDEs look like using punch cards.
It's a pity there's never been a modern reboot with the right factors aligned to continue that work.
But it isn't what I meant. A HyperCard reboot would be a modern GUI builder with a deck-of-cards drag-drop metaphor, deployable as desktop, browser, and mobile apps for any platform. Mobile poses some problems, particularly iOS, but I don't think those are unsurmountable.
Decker is a love letter to the HyperCard which was. But if HyperCard had survived as a product, today's version wouldn't look anything like that.
Decker is not a carbon-copy of HyperCard frozen in the past; it's a continuously evolving platform with many interesting innovations and experimental ideas. It has a distinct aesthetic, but I see this as a strength rather than a weakness: "modern" just means "in fashion", and fashions are always in flux.
But it's more than a distinct aesthetic, it is a distinctly retro aesthetic. Modern means contemporary, more than it means fashionable (sometimes retro aesthetics are in fashion, after all).
But terminological nuance is not very important here. The fact remains that, as wonderful as it is, Decker is not what I meant, and I don't think you're trying to make it into that either. For one thing you'd need a rather large marketing budget.
But to be sure, I wish you all success, whatever that might mean to you. If that includes transforming Decker into something which looks and feels like HyperCard might today, if Jobs hadn't put it out to pasture when he did, then more power to you.
Putting things on paper means you cannot share things outside of your immediate community which I think is one of the main advantages of computing and the internet.
Creating a place for physical community is great, making a UX which allows sharing that experience is great. Firewalling your ideas off from the rest of the world, not so great.
I could see a world where these communities are federated. Maybe your local computing community is connected to other locales as well as somewhere else which is far away (like we do today with sister cities).
https://vas3k.com/blog/touchbar/
https://community.folivora.ai/t/goldenchaos-btt-the-complete...
Bret's take on being a visionary/futurist is fascinating. He imagines the near-future world he wants to live in, prototypes enough of it to write a talk about, and gives the talk with the hopes that someone in the audience will be inspired to make it a reality. He gives ideas away with the hope that he'll be paid back with a world where those ideas have been realized.
like countless hundreds of quotes on execution vs ideas, here is one: "Ideas don’t make you rich. The correct execution of ideas does."
anyways, i'm gonna spend a little more time this evening to really dig in.
I am unaware of any of the ideas having been picked up and productized. I might be mistaken.
However, if I'm correct, then the thing that could be better is picking ideas that have a high chance of being selected, everything else being equal.
For example, this is Vlad Magdalin, one of the founders of Webflow:
> But I won’t claim credit that it was some magical insight that I had. It was a specific video that I saw that I think every maker and every creator should see called “Inventing on Principal” by Bret Victor. Seeing that talk, it’s a maybe 50-minute talk around creating games and doing animation and this broader concept of direct manipulation, but more importantly the principal behind why you do the work you do, what drives you.
> Seeing that video and being a designer and a 3D animator and a developer all at once, it just sparked that idea of, “holy crap.” The kinds of tools that we can have in animation land, the kind of tools we already have for game design and level design, the tools we have in digital publishing, all those things can be married together to front end and back end development and make it a much more human type of interface. That’s when it was boom, this has to be a product and a thing.
(source: https://www.indiehackers.com/podcast/144-vlad-magdalin-of-we...)
Some ideas—key novel concepts and conceptual frameworks, for example—absolutely have value, but they're not valuable in the way a business is valuable. You won't become business-owner rich just by coming up with the right concept, but you can have a successful research career, get enough funding to run a small research group, win a Nobel/etc prize... etc. But that says more about how our society and economy are organized than it does about the inherent value of ideas qua ideas.
The skills, personalities, organizing principles, and methods involved are substantially different, and focusing on making a product has a tendency to cut off many conceptually valuable lines of inquiry based on financial motivations.
Notice that Bret Victor's goal (like most researchers) is not to become as rich as possible.
Whether researchers or product developers ultimately have more leverage is something of a chicken-and-egg question. To make an analogy, it's like asking who was more influential, Karl Marx or Otto von Bismarck.
This is documented super well in this book (published by Stripe Press!): https://www.amazon.com/Scientific-Freedom-Civilization-Donal...
As the ancients said:
A wise man plants trees he won’t live to see fully grown, and a greedy man overfertilizes trees in a mad dash to get the tree purchased by a faceless investor before anyone notices it’s sick.
What makes you think this?
Substantively: more people should do that. Especially the wildly-insanely-unimaginably rich ones.
However, I hit the back button as soon as I click a link, where with a physical bookshelf I would probably crack the book and flip through, no comparison there.
I get it. Opening it up means losing control. I really appreciate the desire to specifically not share it on traditionally engineer-centric spaces like GitHub as that will skew the vision towards engineering and possibly shut out non-programmers. I even get that Dynamicland isn’t really code that can be shared anyway.
But you have to give people something more than a general description and a vague invitation to visit your space. Otherwise it isn’t really open at all.
Some ideas:
- A document for how to experiment with domain exploration using tangibles and people in a way that leverages insights gleaned from Dynamicland
- A codebase for a “toy” computational system (named completely differently from Realtalk/Dynamicland so it’s clear that it is not actually part of Dynamicland) that shows how it’s possible to link physical properties to computational agents
absolute beautiful point about needing a different kind of literacy in the modern age at the end of the video.
i wish, with all my heart, that this and similar projects develop a loving community which will enable other communities to learn computing in an accessible, cheap and memorable way.
[0] https://x.com/simonw/status/1829195655006531661 (original twitter link)
[1] https://readwise.io/reader/shared/01j6z4cj87f5ky3c6ese0thscw (backup because twitter is not the future of computing)
Every object that you can interact with in Realtalk has a unique set of fiducials. When the camera sees one, it looks up its behavior and projects it accordingly.
I would think that you'd want a fiducial marker on code-printouts to identify that a piece of code has a language and a namespace perhaps (i.e. "this page contains a kotlin definition that lives in com.acme.foo"), but that the contents should be modifiable. Otherwise, what's the point? If to edit the code you're gonna pull up a keyboard and screen (or project an editor window) ... then this seems like what we already have, plus you have to print stuff out.
I also think these comments along the lines of "what about X" are unhelpfully reductivist/dismissive. The whole point is that it's a research project. If you can think of a better way to make ephemeral room-sized computing work - cool, let's try that! Just because it worked some way when I was there in 2018 or some way in the video doesn't mean that's the end vision for how it will always be.
This isn't a product. It's a vision for the future.
> It's a vision for the future.
Neither of these mean we can't or shouldn't be able to have discuss whether parts of it are good or bad, make more or less sense. Is it a vision of a future you'd want to work with/in?
> I also think these comments along the lines of "what about X" are unhelpfully reductivist/dismissive.
My first statement was "I think the overall idea here is really cool". The intent is not to be dismissive. But if you think the only acceptable reaction is unalloyed praise ... then why even have it on a discussion-oriented site?
I think the way of working being demonstrated seems like a great fit for some kinds of work and that trying to awkwardly shoehorn software-development to happen in their system detracts rather than adds to it.
> If you can think of a better way to make ephemeral room-sized computing work
... I think an IDE, a keyboard, and a projector are better than printing code blocks at a specific revision which is identified by a computer-readable id, and which must be given a new ID and a new printed page every time you want to try executing a new version.
I don't mean to curtail discussion or say that only praise is allowed. I just want to steer away from "gotcha" energy on a research project.
Ideas/discussion/critique are welcome! "This project is dumb because it does things differently than I'm used to" or "because it currently only supports digital changes to the physical paper" are less helpful. Part of the fun of a research project is trying weird stuff to see what feels better and what doesn't.
Again, none of this is directed at you personally or about your specific comment. I just noticed a trend of comments about the code editing experience that felt more like trying to dunk on the concept than promoting curious discussion.
You're making several incorrect assumptions here:
1. That you can't interactively try out the code as you're editing it.
2. That the system as implemented is the final vision of how the system ought to work forever.
From https://youtu.be/5Q9r-AEzRMA?t=150 "Anyone can change any program at any time and see the changes immediately", which demonstrates live editing the code and seeing the projected flow lines change color. So you can keep editing and iterating on the program, trying out your changes without ever having to print anything. Once you are satisfied with your improvements, you then "commit" the code, which results in the system printing out a new page with its new identifier.
And if any part of your expectations isn't how things work, it's likely because this is a research project and nobody has written the code to make it behave the way you'd like. Since Realtalk is built on itself, one would only need to make the appropriate changes to improve the system.
[2] https://en.wikipedia.org/wiki/Eurorack
http://patchblocks.com/page2.html
Roli Blocks is also somewhat similar
https://midi.org/roli-blocks-modular-wireless-midi-touch-sys...
A 2.0 version could even merge the two versions slightly, tracking irl people into the virtual space (with pose and position estimates?) and programs (? I don't know the lingo off hand, but I mean the paper sheets everything revolves around) and in the opposite direction project the programs from VR onto the real table.
I've been interested in it for years so I'm very glad to see it's still moving forwards and alive. There were years where I couldn't find any actual new information coming out of the project.
I dunno. Someone in VR can't manipulate the same physical objects that people in the real world can. You are forced to compromise physicality so that VR users aren't second-class users, or you build two different experiences for VR and non-VR users which goes against the idea of a shared experience.
I think what you're describing has value, but I also think you're removing the fundamental piece of what makes this unique and special.
I do get that it's a bit of a side step but it's also currently completely inaccessible unless you happen to be a part of one of the labs it's moved to since the other public space closed during the COVID shutdowns. Right now there's not even a physical space one could go to if they could make the trek out, unless I'm misreading the intro video.
Also I hate to see the neat idea of RealTalkOS locked into probable obscurity because Bret's wholistic vision requires very expensive physical spaces when we could build and improve the tech at the core of it until projectors and cameras get cheaper than the 50-200 USD per sq foot some more open implementations estimate for costs.
That would be something entirely different.
Many of the ideas can be worked on and improved without requiring the expensive physical space so the OS and the concepts of the composed tools they talk about for the future of the project can all be improved and played with in a virtual space too separate from the physical presence.
Can’t, as I don’t have an account. That’s part of my point. But thank you for letting me know.
Yes, it is intended to be useful to many one day, and they claim it "actually works" _now_, but if you read carefully (and you should!), they are trying very hard to maintain (and gradually grow) a beautiful little flame of a vision. PARC, on the other hand, had 10 years. Afterwards, industry ran with the ideas they wanted, and Alan Kay has been beating the "you missed the big ideas!" drum since. The Dynamicland group is trying to learn from this lesson of history.
Kudos to the group.
I’ve heard various people give roundabout excuses, but none of them hold water. They often fall into one of the following categories:
- “People won’t get the core ideas and will use it to make things that go against the core ideas” — People who care about Bret Victor’s work will take the time to learn the ideas. People who don’t might try and make something Bret doesn’t like, but currently the world is full of things Bret doesn’t like, so I don’t get how that would be different than the status quo.
- “It’s actually ‘anti-internet’, reimagining computers as objects in physical space, without the intangible connections provided by the internet” — Cool! I’d like to use it to make an airgapped little lab thing for people in my city to play and experiment in, but I can’t do that unless it’s released to the community.
- “Yeah but remember it’s ‘anti-internet’, releasing it open source on the internet would violate the core principles.” — This feels too cute by half. I don’t consider this a legitimate objection.
- “Just come to Oakland, you’ll understand when you get here and use it.” — That’s way out of many people’s budgets. I also get the feeling that I wouldn’t come around just by seeing it, I think I’d want one in my city even more.
- “You’re not entitled to other people’s work.” — True, but most stuff done in this sort of research space is done with the intent of spreading an idea or increasing the public good. It seems kind of odd that the Dynamicland folks keep talking about what a revolutionary concept it is while preventing 99.9% of people from actually experiencing it.
Overall it just seems like such a weird attitude. I get that they’re worried about the world misunderstanding their ideas, but at this point there are tons of people who have been eating up Bret Victor’s work and have immense respect for his ideas, and would gladly watch, listen to or read whatever instructions would be necessary to help someone who’s already bought in “play by the rules” and get the best possible experience.
I think the problem is like what happened to "agile" after the manifesto. People took a term with a meaning, and ignored that meaning in promoting their own stuff, thus confusing the terminology and messing up discussion of the concepts.
The typical themes of things that get posted on HN are not compatible with this idea, which is why it comes across so jarringly to many. They aren't selling, prescribing, recruiting, etc. They are sharing a vision, and to deeply understand and appreciate the vision you have to get your hands dirty and do some digging into what they've prepared for us to see thus far.
I know this comment will seem pedantic, but I hope it also communicates that the goals of this research project are different than you seem (at least to me) to consider. Bret Victor's goal isn't to design a system of projectors and cameras that run code on pieces of paper (just like Engelbart's goal wasn't to design the mouse). At a certain level, Bret Victor wants to explode our concept of computing.
The source code isn't the idea, the idea is. That's what needs to be communicated.
The web page is huge, though, with an unbelievable amount of information if you want to build your own.
If what they want is for people to try and reimplement Dynamicland without their guidance, then they’re certainly doing the right things. But if their goal is to convert people to a new way of thinking about computing, this is not a great approach.
What a low opinion you have of yourself. On the contrary, you're likely to learn a lot more (and of course, spend orders of magnitude more time) recreating something interesting from the ground up than you are simply copying the source code.
The source code isn't the interesting part.
Ultimately trying to tightly control a technology because he wants it to have a particular impact seems like it's just going to ensure it stays a niche demo instead of making and impact at all. If the idea is strong enough people will adopt and adapt it for themselves because it's good.
Bret is also in no rush here, the plan has taken a decade so far and has milestones ahead of it for a decade more.
Maybe this is also a little frustration that it's been 10 or so years and there's not actually much new news, it looks better but I'm seemingly further than ever from being able to experiment with it.
I disagree on every single line.
This is not about software. Having the software on its own won't help you.
If in 2006, the year before the iPhone came out, you had the software as FOSS, would that help? There was no hardware yet. There was nothing even with a capacitative touch screen with multitouch yet. The whole point of the design was to do away with styli, but all extant touchscreen devices needed styli back then.
I was implementing corporate networks in 1991. I built them with NetBEUI for PC-to-PC comms, and IPX/SPX or DECnet for talking to servers. Occasionally all 3.
If I gave 1991 me the source of timbl's WorldWideWeb, it would be no use. I didn't have NeXTstep. My corporate workstation ran X11 and talked to servers over it but it didn't run TCP/IP. I had no TCP/IP in the building.
The point of the Web is the protocol, having clients and servers. Having docs is much more use than having code. Code is useless fragile stuff.
Android reproduces a lot of the interaction model of the iPhone but it came from seeing iPhones and trying iPhones. It did not come from getting source. Nobody ever got the source.
Forget the source. Source code doesn't matter. It's an irrelevant distraction.
Source code is not the big deal here. Inventing a new way to interact with computers is the big deal here. Getting at the software does not matter.
If you want to implement it, then maybe you have to study this implementation, study with the implementors, and understand what it is and what it does and how it does it, and stop obsessing over some ASCII files that encode a little bit of the logic.
Life is sometimes a jigsaw puzzle. It is the picture that really matters. Having a map of the shape of all the pieces, with no images, would not really help you. It might after an epic amount of work help you reassemble a square of cardboard but that is not the picture.
If have taken the time to understand what he means when he says "Realtalk is not made of source code", and disagree with his conclusions, that's not quite the same as him being dishonest.
- What types of things might a home cook compute-r create, share, and remix?
- How can individual home cook compute-rs get more agency and freedom over their programs? What would that world look like?
- What if we could incorporate all the ways we think when we compute? Our amazing skills in touching, feeling, grasping, moving, etc that we evolved
Dynamicland (as I see it) is exploring & researching what that world look like by building increasingly more powerful and capable computing environments.
Discussed here on HN at least twice:
Bret mentioned computer literacy on the website. The books you can consider as "the curriculum" or "the theory" or what have you.
combined with
"What if you could create/edit a computer program like you rearrange furniture in a room?"
appears to be the sales pitch.
I would recommend watching the video though because there are few more pieces to it such as how it is programmed, etc.
Building tools that enable communities to share effectively seems like another additional challenge, and the fact that virtual spaces and digital spaces are dismissed seems like it might prove a major roadblock to connecting and sharing in a larger inclusive community.
Given the interest in leveraging this for doing science it also seems that this is at risk for empowering individual labs while leaving all interfaces to the rest of the larger scientific community dependent on the current utterly broken system of publication.
This is obviously a bit vague, especially if you look at all the things they're doing with the cameras and the projectors and the dots and all that. There's nothing stopping anyone "running" dynamicland on anything else.
It's a completely different way of looking at computers, and it's basically saying "monitors, keyboards, mice, projectors, smartphones, tablets, laptops, vr headsets and xr headsets are all different kinds of ways to experience computation in the flesh. We want to explore what happens when we change the fundamental assumptions that computing is something you do (alone) in front of 'a computer'. What could computing look like if it was reimagined from the ground up, and we used people instead of person as our target audience, space instead of product, extensions of existing media rather than inventing new media, literacy instead of profession".
It's difficult to really explain in one go, I've been following Bret Victor since before he even started ok CDG
Regardless, I think it's the future for precisely one reason; it's easier, cheaper and more powerful. People can and people will integrate it with all the high tech stuff that we already have, that includes powerful desktops, vr, smartphones etc.
Similar a bit to Maggie Appleton's barefoot developers vibe too: https://maggieappleton.com/home-cooked-software
I disagree.
First of all, there's nothing particularly "physically embodied" about talking and gesturing at a robot. You can do that just as well with a screen showing a virtual robot and a camera with gesture recognition. Unless you're touching the robot, it doesn't have a body that's meaningfully interactive.
Second, for many human endeavors, social interaction is not the primary way most people pursue it or want to pursue it. Yes, there are definitely some people with, say, an "executive mindset" who love social interaction so much that they want that to be all they do all day every day.
But for many people, the activities they enjoy most are ones that involve solitary direct manipulation. If I'm going fishing, I want to cast the lure myself and feel the snap of it thrum through the rod. I want to feel the tension on the line when a fish bites. Waving at a robot and asking it to catch me a fish would be a strictly, catastrophically inferior experience.
What is gardening if your hands don't get dirty or woodworking if you don't come home smelling like wood shavings?
Here's a way to look at it: When people retire and no longer need to choose their activities based on financial need, how much time to they often end up spending giving instructions to people? I hear a lot of retirees puttering in their garden, playing board games, tinkering on an old motorcycle, or getting better at guitar. Some definitely do join community organizations too, but humans are as much a tool-using species as a social one.
There's no officially supported way of doing that I mean. You're required to have a desktop or laptop computer (keyboard & mouse) that runs XCode/Android Studio...
Most people with programming skills prefer the command line interface. The advantage of integrating computation and design into the real world is increased accessibility and ease of learning.
However, after selling my LightForm projector and all AR/VR equipment in pursuit of similar novel solutions, I can confidently say I now prefer workflows that are contained within a small device I can carry in my pocket and stow away when done.
My preferred interface is simply an easy button.
"Anything you can make an interpreter for is a program."
Thinking of data not as something to be processed by code, but as code in and of itself, is one of those mindsets that pops up independently in various circles, but a lot of mainstream programming styles and tools and techniques seem to be borderline antithetical to that sort of mindset. I think the recent renaissance-of-sorts of AI might help contribute to making code/data equivalence more mainstream, since that seems to be how your average AI model operates: as a bunch of neurons that encode code and data as a single blob. Unfortunately, that "blob" tends to be opaque and inscrutable; I wouldn't be surprised if the next big leap in software engineering coincides with bringing data-as-code-friendly programming environments into the mainstream, such that said inscrutable blobs could be made, well, scrutable.
Wish I still lived in California so I could check out the system in person! Watching the development of this project with keen interest... sure, a lot of the ideas might not end up catching on, but that's the nature of research.
Big talk about solving the worlds problems out in the room and not on the phone I agree with in sentiment but I feel all that big talk falls completely flat on it's face when the project you're pouring money and most importantly time only exists in one space and only benefits a small group of academics and then that issue being gushed over as if its a benefit when really it just means you're not actually building in the real world at all you're building a fake thing in a fake world for the 0.01% of people to larp with.
Think the world of computing could greatly benefit from Brett but almost in his success it means he'll just be able to play pretend in the world of "non-profit"/academia meaning the output will be citations + grants not value and there will be no real benefit to computing from that work.
Maybe I'd feel different if the intro video ended with a repo and a list of hardware to build your own Dynamicland, I almost think the fact it doesn't is a tactic for the project to never have to really prove its value...
>Anyone can change any program at any time, and see the changes immediately
Not sure what programming language Bret implementing the system but recently there's discussion how difficult and how slow to parse/compile some of the popular programming languages including C++ and Rust. In this case D is a unique anomaly where it has immediate rdmd REPL facility although it's a complex and a compiled language [1].
For creative, inventive, intuitive and comprehensive programming cyber physical system that involve hardware with fast sensing, control and immediate responses, D language is hands down the best programming there is [2]. The D authors however don't believe in any killer applications but this Dynamicland of communal computing most probably the niche that D is looking for to propel it for more wider adoption.
[1] Parsing Awk Is Tricky:
https://news.ycombinator.com/item?id=41422283
[2] D Features Overview:
No idea what I'm doing yet. Let's build together!
I'm livestreaming here: https://youtube.com/live/02-wJ7Od9Bo?feature=share
(Warning: I have yet to shower today).
It's some Wizard of Oz / Potemkin village / confidence trick. That's why nothing has been released after a decade -- there's nothing to release. It's vapor, this generation's Xanadu.
The goal to me is standard programming languges of all kinds. Lisp VR, Js VR, C VR, LogiX ect. Wasm is almost a polyglot. How we interact with Text and Code Execution is expandable in my mind.
i wonder if a coarse analogy for it might include roberts rules in a related category of ideas, and then with some concepts from tech around versioning and then it's something else entirely, but they seem to approach some of the same coordination problems.
"An independent nonprofit research lab, whose mission is to enable universal literacy in a humane dynamic medium."
That said literally NOTHING about what this project is.
Only later on I found this text:
"The entire website is made in Realtalk, which means that everything on it physically exists. (Even this sentence.) It’s not a rendering of a virtual space — it’s a real place."
And FINALLY I sort of understood what the interesting thing here is!
> That said literally NOTHING about what this project is.
That’s a strange complaint. The sentence wasn’t meant to say what the project is but to present the mission of the organisation which guides the project.
The mission describes the core values of the organisation. The project can change or be replaced.
For another example, the Mozilla foundation describes itself as “a non-profit organization that promotes openness, innovation and participation on the Internet”. That doesn’t say “we make a web browser”, which would be too limiting.
Looking at the demos, the real world objects look mostly like standard user input on a computer (knobs, buttons, textarea, pointers, etc.) - using actually 3d printed models of houses in a wind simulation is fun, but would you print another house for each iteration of the design? what's the point here? - and the papers laid out really are Observable cells.
This aimed to be some kind of paradigm change, but it just ends up being Excel-on-a-table.
Being a fan of Excel/Observable myself, I see it as something great though, just not ground-breaking.