Tomas Petricek and I submitted a paper to the Programming Journal: Baseline: Operation-Based Evolution and Versioning of Data arXiv, Playable demo. We got good feedback from one reviewer but the other two were unsympathetic. We ve been asked to make major revisions , which are mostly the usual demands for more evidence and evaluation . I m not sure Continue reading "Major revisions"
Submitted to Substrates-25 Workshop Jonathan EdwardsMay 12, 2025 What is a substrate? I define a Substrate as: The canonical examples of a substrate are Smalltalk and LISP systems. HyperCard and Flash were much-beloved beginner-friendly substrates. Spreadsheets are by far the most successful substrate, and an inspiring existence proof that alternative programming experiences are possible.…
New paper Many improvements to programming have come from shortening feedback loops, for example with Integrated Development Environments, Unit Testing, Live Programming, and Distributed Version Control. A barrier to feedback that deserves greater attention is Schema Evolution. When requirements on the shape of data change then existing data must be migrated into the new shape, Continue reading…
Abstract of a talk I just gave: It would be useful to have version control like git but for data structures, particularly the data structures we call spreadsheets, databases, and ASTs. Operational Version Control observes changes to typed data structures by recording high-level operations performed in a GUI or API. These operations can change both Continue reading "Operational Version Control"