Blog archive

Follow the blog!

Architecture vs. Implementation Reviews

Tuesday, December 2, 2014
In a previous post, I opined on the virtues of having every code change be reviewed before it gets deployed to production. That was almost two years ago... (more)

The operation queue: A content editing pattern for JavaScript

Friday, May 9, 2014
I recently gave a tech talk for the Khan Academy dev team describing the latest iteration of our infrastructure for saving edits from our content editors to the server... (more)

Reinventing the wheel: A new content store for Khan Academy

Friday, January 3, 2014
Over the past two years, I've been working largely behind the scenes at Khan Academy on the infrastructure the content team uses to upload and publish content (videos, exercises, articles, and interactive programs) to the site... (more)

Implementation: A new content store for Khan Academy

Friday, January 3, 2014
This article provides more implementation details for our versioned content store. To see the motivating challenges and overall design for building a versioned content store in App Engine, see the companion blog post. (more)

Coding for review

Thursday, March 14, 2013
This past Friday, I shipped about a month's worth of extensive refactoring to the content editing infrastructure of the site. As with many refactoring projects, the best possible outcome would have been that no one would notice I'd done anything... (more)

Going Back to Work

Tuesday, October 9, 2012
About a month ago I had the great fortune of having an amazing new person stumble into my life, ready to challenge by his very existence the way I think about myself and my role in the world.... (more)

Progress vs. the Law of Useless Numbers

Wednesday, May 2, 2012
There is a trendy practice being advocated in a number of software development teams, which is to measure everything and A/B test radical ideas... (more)

Today's topic? Topics!

Wednesday, February 22, 2012
Last week we at Khan Academy revealed the first pieces of a long-term project to reorganize the content on the homepage and throughout the site... (more)