Jonathan Edwards's Avatar

Jonathan Edwards

@jonathoda.bsky.social

Dissident computer scientist

1,111 Followers  |  120 Following  |  63 Posts  |  Joined: 18.08.2023  |  1.7259

Latest posts by jonathoda.bsky.social on Bluesky

Substrates 2026 - Substrates-26 - ‹Programming› 2026 An increasing number of researchers see their work as interactive authoring tools or software substrates for interactive computational media. By talking about “authoring tools”, we remove the divide b...

Bring Your Own Substrate to Substrates-26. Submission deadline Feb 20. 2026.programming-conference.org/home/substra...

20.01.2026 18:11 — 👍 5    🔁 1    💬 0    📌 0

AI coding agents still need humans in the loop, so the bottleneck will still be human intelligence.

09.01.2026 03:03 — 👍 0    🔁 0    💬 0    📌 0
Post image

The open access version of Cultures of Programming is now available online. Just in time for the holiday break!

Read it here: www.cambridge.org/core/books/c...

If you prefer a real book, use PETRICK26 for a 20% discount (valid until January 31) at: www.cambridge.org/9781009492348

19.12.2025 10:18 — 👍 41    🔁 13    💬 0    📌 1
Exhibition

Cultures of Programming Exhibition tomasp.net/cultures/exh...

16.12.2025 00:26 — 👍 2    🔁 0    💬 0    📌 0
Post image

this too shall pass

15.12.2025 02:26 — 👍 1    🔁 0    💬 0    📌 0
PX/26 - ‹Programming› 2026 Welcome to the 12th Edition of the Programming Experience Workshop Abstract Some programming feels fun, other programming feels annoying. Why? For a while now the study of programming has forced i...

Some programming feels fun, other programming feels annoying. Why? Submit papers, essays, and demos to PX/26 by Jan 9 2026.programming-conference.org/home/px-2026...

12.12.2025 20:33 — 👍 8    🔁 3    💬 0    📌 0

Help me @disconcision.com you're my only hope

12.12.2025 19:04 — 👍 4    🔁 0    💬 1    📌 0

Formulaic papers and mechanistic reviews have been ruining research for a long time. I'm glad AI is giving it the final blow, so we can, again, focus on we're good at: debating whether something is important or not.

12.12.2025 14:58 — 👍 2    🔁 1    💬 1    📌 0

Time to face the final boss: structure editing 😱

12.12.2025 18:58 — 👍 7    🔁 1    💬 1    📌 0
Post image

New paper with @tomasp.net. Baseline: Operation-Based Evolution and Versioning of Data alarmingdevelopment.org?p=1886

11.12.2025 16:24 — 👍 8    🔁 3    💬 0    📌 0
Post image Post image

What defines a correct program? What education makes a good programmer? The answer depends on what culture of programming you subscribe to!

This has been a long time in the making, but my open access book on the history of programming is available for pre-order!

www.cambridge.org/core/books/c...

09.12.2025 09:52 — 👍 85    🔁 24    💬 8    📌 1
Post image

In the last part of my tiny systems course, we get to implement a tiny version of the world's most widely used programming language!

TinyExcel: www.youtube.com/watch?v=ghRA...

08.12.2025 22:16 — 👍 41    🔁 7    💬 1    📌 0
Preview
The Philosophy of Copy and Paste I have a new paper out with Tomas Petricek: Interaction vs. Abstraction: Managed Copy and Paste, to appear at PAINT’22. [Demo video] I have mixed feelings about this work. I’ve been tal…

I love this idea! Related noodling: "Managed Copy and Paste": alarmingdevelopment.org?p=1653
Also see Variolite: dl.acm.org/doi/10.1145/...

08.12.2025 15:07 — 👍 1    🔁 0    💬 1    📌 0
Dynamic Dataflow Templating The missing function-like semantic for dataflow programming. Why? There is a reusability gap with notebooks (and spreadsheets for that matter). When you express a complex chain of computation, they bu...

The missing semantic in Dataflow languages: Dataflow Templating. Clone subgraphs as an analogue to function calling.

observablehq.com/@tomlarkwort...

07.12.2025 20:23 — 👍 3    🔁 1    💬 1    📌 0
Preview
DWeb Seminar Talk Why is Collaborative Data Hard? (Is it?) Matthew Weidner DWeb Seminar 2025 Internet Archive, SF

More on this simple path to collaborative apps, as an alternative to the Operational Transform / CRDT rabbit hole, in my recent DWeb Seminar talk: docs.google.com/presentation...

05.12.2025 20:35 — 👍 7    🔁 1    💬 0    📌 0
Substrates 2026 - Substrates-26 - ‹Programming› 2026 An increasing number of researchers see their work as interactive authoring tools or software substrates for interactive computational media. By talking about “authoring tools”, we remove the divide b...

Software Substrates Workshop. Submission deadline Feb 20
2026.programming-conference.org/home/substra...

20.11.2025 03:53 — 👍 9    🔁 5    💬 0    📌 2
Preview
Write your own tiny programming system(s)! - YouTube The goal of this course is to teach how fundamental programming language techniques, algorithms and systems work by writing their miniature versions. The cou...

I'm teaching 𝗪𝗿𝗶𝘁𝗲 𝘆𝗼𝘂𝗿 𝗼𝘄𝗻 𝘁𝗶𝗻𝘆 𝗽𝗿𝗼𝗴𝗿𝗮𝗺𝗺𝗶𝗻𝗴 𝘀𝘆𝘀𝘁𝗲𝗺(𝘀)! again. I'll be posting the videos & tasks on YouTube too.

In the first lecture, I explain what's a tiny system, why write one and show plenty of demos!

🎞️ Playlist: www.youtube.com/playlist?lis...
👉 More info: d3s.mff.cuni.cz/teaching/npr...

07.10.2025 21:18 — 👍 50    🔁 18    💬 1    📌 1

Submitted. Now what?

01.10.2025 17:30 — 👍 2    🔁 0    💬 0    📌 0
An Open Letter to Everyone I've Butted Heads With - Andrew Kelley

andrewkelley.me/post/open-le... via @stuffwithstuff.com

01.10.2025 17:28 — 👍 3    🔁 0    💬 0    📌 0
A split-screen figure shows a cross-reality collaborative space in Spatialstrates. The left side presents a first-person augmented reality (AR) view in a physical room, where a user interacts with floating 3D molecular structures, sticky notes, and analytics panels. A blue cursor line on a red sticky note represents a remote collaborator's position in 2D. The right side displays the same space in a 2D desktop interface, where 3D objects are flattened into a 2D layout: sticky notes and the analytics elements are having a very similar appearance compared to in 3D. The molecules have a different representation, displaying a table of atoms in the molecule instead. Black avatar icons indicate the projected position of the AR user's headset and controllers. The mouse cursor rests on the red sticky note.

A split-screen figure shows a cross-reality collaborative space in Spatialstrates. The left side presents a first-person augmented reality (AR) view in a physical room, where a user interacts with floating 3D molecular structures, sticky notes, and analytics panels. A blue cursor line on a red sticky note represents a remote collaborator's position in 2D. The right side displays the same space in a 2D desktop interface, where 3D objects are flattened into a 2D layout: sticky notes and the analytics elements are having a very similar appearance compared to in 3D. The molecules have a different representation, displaying a table of atoms in the molecule instead. Black avatar icons indicate the projected position of the AR user's headset and controllers. The mouse cursor rests on the red sticky note.

Next week I’ll be at ACM UIST 2025 in Busan, South Korea, where @maski89.bsky.social will be presenting our work on Spatialstrates. In this project, we address the gap between everyday laptop-based computing and immersive experiences with augmented or virtual reality headsets.

26.09.2025 15:46 — 👍 14    🔁 5    💬 1    📌 2

The operations are the edits. Operational Differencing generalizes on Operational Transformation, so there is a second-order semantics of how operations operate on operations. There may be a useful analogy with Calculus (of continuous functions) but I've been avoiding it as it sounds pretentious.

30.09.2025 21:45 — 👍 2    🔁 0    💬 0    📌 0

Subtext ~> Baseline
Jonathan Edwards programming language exploration journey in pursuit of escaping the current local maxima we've found ourselves fallen into. Yes-code, but pleasant please.

30.09.2025 14:13 — 👍 2    🔁 1    💬 0    📌 0
Post image

I'm at #uist2025 presenting our new work with @jonathoda.bsky.social!

𝗗𝗲𝗻𝗶𝗰𝗲𝗸 is a computational substrate for end-user programming that makes it easy to implement programming experiences like programming by demonstration, collaborative editing and more!

tomasp.net/academic/pap...

30.09.2025 06:13 — 👍 30    🔁 17    💬 1    📌 0

Do you use the codegen tools or just rawdog the boilerplate?

29.09.2025 21:49 — 👍 0    🔁 0    💬 1    📌 0
Subtext Retrospective

Subtext Retrospective www.subtext-lang.org/retrospectiv...

29.09.2025 19:39 — 👍 10    🔁 3    💬 4    📌 1

Kudos to @stuffwithstuff.com

29.09.2025 16:43 — 👍 1    🔁 0    💬 0    📌 0

Dart feels old-fashioned now. The last and best OO language. They've managed to cram pattern matching and algebraic datatypes (messily) into it. Needs codegen in places. But I've swallowed worse to work with JS. Flutter is beautiful and well designed. I HATE HTML/CSS/React. Never-ending struggle

28.09.2025 17:43 — 👍 0    🔁 0    💬 2    📌 0

Dart & Flutter have made enormous progress. Getting to be a viable alternative to Browser Hell.

28.09.2025 17:13 — 👍 3    🔁 0    💬 1    📌 0

12 exciting live-programming projects will be presented at LIVE this year. It's free, online, and coming up soon!

Sat 9/27: Videos premiere
Sat 10/4: Q & A and discussion over Zoom

Details on projects are up already at liveprog.org; more schedule & links coming soon.

Hope to see ya there!

20.09.2025 00:33 — 👍 33    🔁 14    💬 0    📌 1
Companion Proceedings of the 9th International Conference on the Art, Science, and Engineering of Programming (Programming 2025)

Companion (Workshop) Proceedings for ‹Programming› 2025 are now available! Co-edited with @jonathoda.bsky.social and @tomasp.net. Thanks to the awesome OASIcs publishing team for getting this over the line.
drops.dagstuhl.de/entities/vol...

17.09.2025 14:55 — 👍 6    🔁 3    💬 0    📌 0

@jonathoda is following 20 prominent accounts