- La front shelf de Dynamicland rassemble tout, de la vidéo d’introduction de 6 minutes de 2024 aux premiers documents fondateurs, afin de donner une vue d’ensemble de sa vision à long terme d’un média dynamique humain
- La présentation de 45 minutes de 2018 définit Dynamicland comme un ordinateur en tant que lieu où les gens collaborent dans le monde réel
- Le laboratoire vise à être un laboratoire de bootstrapping, et la présentation de 2019 explique une approche qui prend le laboratoire lui-même comme expérience
- Les rapports d’avancement de 2014 à 2022 montrent chronologiquement les origines de Realtalk et de Dynamicland, les progrès réalisés pendant la pandémie et le travail autour du laboratoire scientifique
- Les documents de 2024, dont une vidéo d’introduction de 6 minutes et un livret de 24 pages sur le laboratoire scientifique communautaire, soulignent une orientation pensée non comme un produit, mais comme une pratique d’éducation et de communauté
Ressources clés pour comprendre Dynamicland
-
6-minute intro, 2024 Video, 6 min
- Présentation rapide de Dynamicland comme prototype d’un média dynamique humain
-
Dynamicland, 2018 Presentation, 45 min
- Présente Dynamicland comme un « ordinateur-lieu » où les gens travaillent ensemble dans le monde réel
- Il s’agit d’une présentation qui introduit l’esprit de Dynamicland
-
Bootstrapping Research, 2019 Presentation, 30 min
- Présente Dynamicland comme un laboratoire de bootstrapping
- Place au centre l’approche selon laquelle le laboratoire lui-même est l’expérience
-
Nonprofit narrative, 2020 Essay, 5 pages
- Explique pourquoi Dynamicland fonctionne comme organisation à but non lucratif
- Défend l’idée que cette technologie devrait prendre la forme non d’un produit, mais d’une pratique d’éducation et de communauté
Rapports d’avancement et documents de vision à long terme
-
Progress report 2014-2019 Photo-comic, 8 pages
- Résume de manière concise l’histoire des cinq premières années du laboratoire ainsi que les origines de Realtalk et de Dynamicland
-
Progress report 2020 Video, 20 min
- Propose une visite informelle du laboratoire juste après le début de la pandémie et montre les progrès du nouveau Realtalk
-
Progress report 2021 Handwritten letter, 8 pages
- Transmet sous forme de lettre informelle à la communauté les progrès réalisés pendant la pandémie et les projets à venir
-
Progress report 2022 Photo-comic, 10 pages
- Récapitule les avancées de 2022, avec un accent sur le travail du laboratoire scientifique
-
The Humane Representation of Thought, 2014 Poster, 10 ft. Presentation, 55 min
- Document fondateur du laboratoire, qui porte une vision à long terme d’un média dynamique spatial
-
Dynamicland zine, 2017 Zine, 16 pages
- Document fondateur de l’espace communautaire Dynamicland, présentant la vision, les principes et les avancées
-
The Library, 2019 Fiction, 2 pages
- Traite de l’un des éléments de la vision à long terme du média dynamique
-
The communal science lab, 2024 Booklet, 24 pages
- Document fondateur du laboratoire de recherche en bio-nanotechnologie, porteur d’une vision de la science communautaire
- Des rubriques séparées sont proposées pour Publications, Archive, People et FAQ
1 commentaires
Avis de Hacker News
En 2018, j’ai eu l’occasion d’aller là-bas pour une visite sur place, et la vidéo donne un très bon aperçu du projet.
Dans l’approche où « le monde réel se simule lui-même », un résultat intéressant était la gestion de versions. Dans Dynamicland, chaque version d’un programme est une feuille de papier avec un repère fiduciaire unique sur le bord ; pour modifier le programme, on pointe le clavier vers cette feuille. Un éditeur de texte apparaît alors et, une fois les changements effectués puis commités, une nouvelle feuille contenant ces changements est imprimée. Pour utiliser la nouvelle version, il suffit de la mettre dans le champ de la caméra ; pour revenir en arrière, on l’enlève et on utilise l’ancienne feuille.
Autrement dit, chaque feuille a en quelque sorte déjà un UUID inscrit dans sa structure atomique.
Ce n’est sans doute pas encore « sorti », mais je me demande si le code source du système d’exploitation — ou, pour parler à la manière de Dynamicland, de l’environnement de calcul — est public, et s’il existe un guide matériel DIY permettant de le construire soi-même et de s’amuser avec, même loin des locaux Dynamicland d’Oakland/Berkeley.
À en croire la FAQ, ce n’est pas possible pour l’instant : à la question « Où peut-on se procurer Realtalk ? », il est répondu qu’il existe actuellement dans les espaces Dynamicland et ceux de leurs collaborateurs, et qu’ils développent avec prudence une communauté de pratique en présentiel. À court terme, il est indiqué que des personnes ayant beaucoup contribué aux espaces existants et intériorisé leur culture et leurs valeurs créeront des espaces supplémentaires ; à long terme, ils prévoient de diffuser l’idée sous forme de kit + jeu, afin de guider les communautés pour qu’elles fabriquent elles-mêmes des environnements de calcul qu’elles comprennent et contrôlent entièrement.
« Notre objectif est d’inventer une forme de calcul que des communautés locales de non-spécialistes puissent construire elles-mêmes. Depuis la base, adaptée à leurs propres besoins, et qu’elles puissent comprendre et contrôler entièrement. »
Je suis en train de réaliser en livestream une implémentation de RealTalkOS. Venez la construire avec moi : https://youtube.com/live/02-wJ7Od9Bo?feature=share
Si Dynamicland est vraiment un nouveau paradigme de calcul, il devrait être accessible à d’autres cultures. Si cette culture et ces valeurs ont réellement de la valeur, elles devraient se diffuser par leurs propres mérites et être largement diffusées plutôt que jalousement gardées. Si l’on ne peut protéger la culture qu’en endoctrinant prudemment les nouveaux utilisateurs et en empêchant les autres de la gâcher avec de « mauvaises idées », alors ce que l’on a réellement est peut-être une secte.
J’ai passé pas mal de temps à Dynamicland Oakland ; c’était vraiment amusant et les gens étaient formidables. Je vois Realtalk comme l’ajout d’une couche physique supplémentaire aux programmes
Le comportement d’un programme peut être déterminé et contrôlé non seulement par le code, mais aussi par l’agencement physique. Ce n’est pas complètement différent de la séparation frontend/backend, si bien qu’il pourrait être beaucoup plus facile de créer un simulateur Realtalk avec un canvas JavaScript que de fabriquer un dispositif caméra/projecteur. Comme lorsqu’on développe un logiciel full-stack, il faut beaucoup de savoir-faire peu visible pour décider où placer la séparation des préoccupations entre la couche physique et la couche logicielle. Un bon programme est flexible, remixable, modulaire, intuitif, et permet aussi à des non-programmeurs de créer des interactions et des améliorations significatives via la couche physique. Un mauvais programme exige que les objets soient disposés d’une certaine façon, ou se casse complètement dès qu’on perd une seule feuille de papier. Ces questions de conception de programmation étaient vraiment fascinantes en jouant avec Dynamicland.
Une limite évidente est que les morceaux de programmes ne sont pas réellement modulaires. On ne peut pas prendre le Chat d’un programme et le Chien d’un autre pour faire interagir le chien avec le chat. En logiciel, c’est un problème bien connu, et c’est pour cela qu’on conçoit des API ; mais dans un environnement dont l’attrait central est que tous les programmes existent dans le même espace, cela devient frustrant. Parce qu’importer une partie du Programme A dans le Programme B est intuitif, et avec des dizaines de programmes posés dans la pièce, cela devient à terme inévitable.
Ce serait intéressant d’explorer l’IA ici. Avec de la reconnaissance d’objets, on pourrait définir des règles comme « si une voiture est visible, colorie-la en rouge », sans avoir à coller un point sur chaque objet. Le langage commun qu’est la reconnaissance d’objets permettrait aussi l’interopérabilité entre programmes, et des interactions logiques comme « que devrait-il se passer si l’on pose le cactus de ce programme sur le ballon de cet autre programme ? » pourraient être définies de façon intéressante et surprenante
Le point clé a été de comprendre les notions de « wish » et de « claim » dans Realtalk. Dans l’exemple ci-dessus, il faudrait diviser le programme « Dog » en deux. L’un serait un programme qui affirme simplement « je suis un chien », et l’autre un programme qui encode le comportement du chien, du type « je souhaite qu’un aboiement soit joué quand un chien est près de la maison ». Ensuite, on laisse Realtalk se charger de l’exécution effective. Pour ajouter le comportement « Cat », il suffit d’ajouter un programme qui affirme « je suis un chat » et un autre qui dit « je souhaite qu’un miaulement soit joué quand un chat est près de la maison ». Pour faire interagir Dog et Cat, on ajoute par exemple un programme disant « je souhaite qu’un grognement soit joué quand un chien est près d’un chat ».
Un exemple que j’ai appris directement est celui d’un jeu de cartes que j’ai fabriqué. Au final, j’avais 52 morceaux de bristol, chacun étant simplement un programme qui affirmait « je suis la carte X ». Ensuite, j’ai créé des programmes séparés donnant du sens à ces cartes. Par exemple, un programme de style disait quelque chose comme « je souhaite que l’As de pique soit imprimé sur la carte 1 », tandis qu’un autre disait « je souhaite que la somme des valeurs numériques de toutes les cartes situées sur cette ligne soit imprimée à côté de la ligne ».
Il m’a fallu quelques jours pour l’intérioriser, mais une fois compris, c’est devenu assez vite amusant. Par exemple, j’ai pu créer un programme qui faisait prendre à Realtalk une photo carrée, puis projetait toujours cette image lorsqu’une carte donnée était face visible, ce qui permettait de « dupliquer » une image du monde réel sur une carte. Comme les cartes ne faisaient qu’affirmer leur identité, je pouvais séparer le design des cartes de leurs règles, et j’ai aussi pu ajouter un programme de « mode entraînement » pour enseigner les bases. Tout était faiblement couplé
Ce qui est certain, c’est que les LLM ne sont pas intelligents et ne pourront pas l’être. Ils sont seulement très bons pour produire des sorties complètement idiotes et incohérentes, qui donnent à certaines personnes l’impression d’avoir été faites par de vrais humains
Si vous cherchez quelque chose de similaire, plus activement développé et dont le code source est public, regardez Folk : https://folk.computer
Il est développé par des personnes qui ont visité Dynamicland ou y ont travaillé, mais celui-ci est entièrement public. Ils organisent aussi des portes ouvertes mensuelles à Brooklyn, où l’on peut aller le voir en personne
https://github.com/janpaul123/paperprograms
Il y a aussi Tiny lands, un projet abandonné : https://news.ycombinator.com/item?id=26751374
Il y a également mes notes sur 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...
J’aime l’ambition et les valeurs de ce travail. J’aime le fait que le programme soit physique, donc partageable et découvrable, qu’on puisse apprendre par le jeu, et que l’objectif soit de réunir les gens.
On dirait qu’ils se sont demandé comment repenser le concept d’« ordinateur » avec les technologies et les connaissances dont nous disposons aujourd’hui, en plaçant au centre les activités humaines les plus fondamentales. C’est toujours inspirant, et cela me pousse à me demander si ce que je fais a vraiment de la valeur.
Si ça peut aider : https://spatialpixel.com/procession/
Je me suis beaucoup inspiré de Dynamicland et j’essaie de créer un kit utilisant une saisie en langage plus naturel, des gestes et de la programmation de haut niveau. Je le fais évoluer vers un environnement/kit ouvert pour permettre aux gens de créer leurs propres espaces programmables. Si vous connaissez des personnes qui créent des espaces ou des initiatives similaires, n’hésitez pas à me contacter.
J’ai toujours une grande admiration pour Bret Victor et j’estime beaucoup son travail, mais d’après ce que j’ai vu jusqu’ici, honnêtement, je n’ai pas vraiment l’impression que ce soit « juste ».
Le monde physique comporte trop de contraintes qui n’existent pas dans les espaces virtuels. Je comprends que des objets physiques puissent participer à l’interface utilisateur, et que les placer dans l’espace 3D puisse parfois être préférable à une souris/un clavier. Mais le fait que le code soit toujours écrit sur du papier, que les projecteurs n’affichent que des images 2D et que les interactions restent primitives me paraît assez maladroit. Devant une table vide, la question « qu’est-ce qu’on peut faire ? » semble aussi difficile. C’est certes une recherche très impressionnante, mais je me demande s’il existe un plan pour résoudre ces problèmes fondamentaux qui apparaissent quand on mélange réel et virtuel.
Le modèle mental que j’utilise est la différence entre la cuisine professionnelle et la cuisine à la maison. L’échelle, les outils et les approches sont différents, même si certaines idées centrales se recoupent. Un chef professionnel peut critiquer le flux de travail et les outils d’un cuisinier amateur, mais les objectifs sont différents.
Une fois sur papier, on ne peut pas partager au-delà de la communauté immédiatement présente, ce qui revient à perdre l’un des grands avantages de l’informatique et d’Internet. Créer des lieux pour des communautés physiques, c’est très bien, tout comme concevoir une expérience utilisateur permettant de partager cette expérience. Mais isoler les idées du reste du monde derrière un pare-feu ne me plaît pas.
Je peux imaginer un monde où ces communautés seraient fédérées : des communautés informatiques locales reliées à d’autres, proches ou très éloignées, un peu comme les villes jumelées aujourd’hui.
Le résultat final n’est pas un produit fini, mais de nouvelles connaissances sur la manière de diffuser ces nouvelles connaissances à tous.
Pour ceux qui ne le connaissent pas, le fondateur est Bret Victor. Il s’est fait connaître chez Apple, à l’époque de Steve Jobs et de l’iPad, pour son travail sur les interfaces humaines, puis a donné en 2012 deux conférences influentes, « Inventing on Principle » et « Stop Drawing Dead Fish ».
La manière dont Bret travaille comme visionnaire/futuriste est intéressante. Il imagine un futur proche dans lequel il aimerait vivre, construit juste assez de prototypes pour pouvoir en faire une conférence, puis présente cette conférence en espérant que quelqu’un dans le public sera inspiré et le rendra réel. Il met ses idées gratuitement à disposition, en espérant être récompensé par un monde où elles se concrétisent.
https://worrydream.com/
Il existe quantité de citations opposant exécution et idées, par exemple : « ce n’est pas l’idée qui vous rend riche, mais sa bonne exécution ». Quoi qu’il en soit, je compte creuser un peu plus ce soir.
La partie intéressante, à mon avis, est qu’on peut facilement créer des interfaces utilisateur avec des objets physiques, ce qui permet de passer outre une partie du front-end numérique et du design pour se concentrer davantage sur le back-end de calcul.
Cela rend possible un codage plus exploratoire et improvisé, utile pour la recherche et l’art, ainsi que dans de nombreuses situations où une interface utilisateur figée est trop encombrante. D’après ce qui a été montré avec le projet de laboratoire de biologie, cela semble étonnamment utile.
J’ai regardé la nouvelle vidéo d’introduction, mais à part le fait qu’il y a énormément de cartes couvertes de points, je n’ai aucune idée de ce que c’est. Ça a l’air beaucoup trop complexe.