Live-Coding Notebooks, SDF Spreadsheets, and a DIY Pen Plotter
Hi!
Today marks my three-month anniversary at Replit ↗!
Going from 10-ish person research lab to 100-ish person startup definitely is an adjustment. For one, it's impossible to know about everything that's going on. Two, small details matter in addition to the "big vision". With exploratory research, it's often a good idea to hand-wave at things that would be solvable with additional engineering time, here, you have to do the "additional engineering" too, which changes the pace (and focus) of the work quite a bit. And three: you actually have feedback from real users and the outside world, and while sometimes emotionally difficult, it dictates a real goalpost to go after.
Working at Replit sometimes feels like building an IDE, and sometimes like iterating on a new operating system. I'm excited about how integrated the product can become, about blurring the line between working alone and collaborating, and between developing an app, deploying, and debugging production issues.
We're growing and hiring actively across the board ↗, feel free ping me if you have any questions!
Smaller Projects
I managed to publish two projects since the last newsletter issue that you might have missed:
- Live Coding Livebook — an exploratory work into enhancing Elixir ↗'s Livebook ↗ with probing, tracing, and live test feedback
- SDFSheets — a nerd-snipe from Avi Bryant ↗, an experiment in combining spreadsheets and signed distance functions for 2D modeling
For both, there's more info in the linked write-ups, and SDFSheets even has a live demo ↗ that you can play with!
DIY Plotting
I've also been very slowly noodling on an extremely over-engineered pen plotter, with a hope to later turn it into a CNC (hence the overkill of motors and supports).
I don't really have a need for a pen plotter, or a CNC for that matter, but I missed making things with my hands (again), and this project is a good excuse to do that.
I'm also doing this completely from scratch, and it's a good excuse to learn about designing more complex machines, and how to use a grown-up CAD software in the process (previously I only used SolveSpace ↗, which is great, but not enough for a project like this one).
So far I'm almost done with the first pass at the design, and starting to print initial test parts to see if they actually fit (nothing ever does on the first try). I'm hopeful that this thing will be able to draw something with an actual pen by the end of the year.
Worth Checking Out
What I've been reading lately:
- two different perspectives on early computing history:
- activity theory ↗ and its overlaps with HCI:
- and a bit on media theory: Amusing Ourselves to Death ↗, and I'm in the middle of Conscientious Objections ↗
On the web:
- Positional Control in Node-Based Programming ↗
- a great (as always) in-depth tutorial from Amit on making objects draggable ↗
- You Can’t Predict a Game of Pinball ↗
- Tyler ↗ has a cool paper coming up, here's a preview ↗
- a cool exploration of movement in visual programming ↗ — some Hest ↗ and Crosscut vibes
- Supporting Programming with Interactive, Contextual, Structured, and Visual Logs ↗ and Multi-level Visualization of Program Execution ↗ from the same group
Fin
Have a great summer (touch some grass!), and catch you in a couple of months.