-> Technical

Automated tracing for javascript

I made blunt-instrument primarily to help visualize the execution of algorithms. You can paste code directly into the web app and see the value of every expression. It's a bit like a time-traveling debugger, but values at all points in time are shown in a table, rather than requiring you to step through the code line by line.

To build this, I needed a way to faithfully serialize a javascript object graph. Serializing to JSON isn't good enough, because that wouldn't handle cyclic references, doesn't record information about object prototypes, doesn't support all data types, etc. I wrote the object-graph-as-json library to fulfill this purpose.

Backup tooling

Programming challenge walkthroughs

Conference notes