Sketches from CDG

May 2, 2020

CDG (later known as HARC) was a short-lived research organization, founded by Alan Kay, where I was privileged to work from 2014-2017. As part of Alex Warth’s team, my research was mostly focused on creating new kinds of programming interfaces.

The practical side of our research produced Ohm, a library and language for building parsers, interpreters, compilers, and more. Besides contributing to Ohm itself, I also created the Ohm editor/visualizer to give people a better way to understand and debug their grammars. I’m proud to say that Ohm was a minor success, yielding a couple of conference papers, and even becoming part of the CS curriculum at Loyola Marymount University.

Another more ambitious thread of our research asked: what if programming were more like sketching on a whiteboard? What would it feel like to build dynamic, visual models at the speed of conversation?

Unfortunately, our funding ran out before we could make much progress on that work. But I recently discovered a folder full of gifs and screenshots that I made around that time, and figured I’d post them here for posterity.

For more about CDG itself, check out Vi Hart’s wonderful post about the history of her research group and the CDG SF lab.

Smart resizing of hand-drawn arrows. Note that the arrowhead retains its aspect ratio and scales non-linearly in relation to the body.
A hand-drawn checkbox. The checkbox’s behavior is specified by the code on the right.
A “feedforward” layer to preview the effects of the code.
An implementation of logic gates inspired by Etoys.
An implementation of the Toolglass concept.
A prototype interface for @jonathoda‘s Transcript.
A sketch of what a stack-based programming in Dynamicland might look like.
Exploring the relationship between values in a constraint-based spreadsheet.