Projects


Node.js Stream Playground

This summer I had the opportunity to attend NodeConf and it was a fantastic experience. I really appreciated how every session was a hands-on coding session: I felt like I walked away knowing how to put a bunch of advice directly into practice. One of my favorite sessions was the one run by James Halliday […]

Comment · Posted: November 15th, 2013


i18n Module for Node and Express.js

As a follow-up to my post from last week on a strategy for i18n and Node.js I’ve published my module for handling internationalization in Node and, specifically, Express.js. The module is now available on NPM and can be installed by running: npm install i18n-2 The code and documentation for the module is available on Github […]

Comment · Posted: January 15th, 2013


Redefining the Introduction to Computer Science

I’m incredibly excited to take this opportunity to announce a new project that I’ve been leading here at Khan Academy: Khan Academy Computer Science. We’re releasing a completely new platform that targets people with no programming knowledge and gives them an engaging and fun environment to learn in. Over everything else we wanted to emphasize […]

Comment · Posted: August 14th, 2012


Khan Exercise Rewrite

Today we’re pushing live a complete rewrite of the Khan Academy Exercise framework (live demo). A big push at Khan Academy has been to write more-and-more exercises for students to practice with. Naturally, to increase the number of exercises that we have, we needed to make it easier for team members, and casual committers, to […]

Comment · Posted: July 28th, 2011


Pulley: Easy Github Pull Request Landing

I’ve created a simple tool for landing pull requests from Github, which I’m calling “Pulley“. Landing a pull request from Github can be annoying. You can follow the instructions provided by Github (pulling the code, doing a merge) but that’ll result in a messy commit stream and external ticket trackers that don’t automatically close tickets. […]

Comment · Posted: April 21st, 2011


Revised JavaScript Dictionary Search

After my two previous posts discussing dictionary lookups in JavaScript and JavaScript Trie performance analysis even more excellent feedback came in from everyone. Out of all the results two techniques seemed to be most interesting – and promising for reducing general memory usage and load time. String-based Binary Search The first technique proposed was left […]

Comment · Posted: March 22nd, 2011


JavaScript Trie Performance Analysis

After my last post discussing dictionary lookups in JavaScript the unanimous consensus seemed to be that utilizing Trie would result in additional space savings and yield performance benefits. A Trie is a relatively simple data structure. At its simplest form you’re building a tree-like structure where each final leaf results in a complete word. This […]

Comment · Posted: March 17th, 2011


Dictionary Lookups in JavaScript

I’ve been working on a browser-based word game, naturally written in JavaScript, and have been encountering some interesting technical challenges along the way. I’ve written up my thought process here for others to learn from (note that most of this happened over the course of a month, or so). I’ve often found that while a […]

Comment · Posted: March 15th, 2011


« Previous entries

Secrets of the JavaScript Ninja

Secrets of the JS Ninja

Secret techniques of top JavaScript programmers. Published by Manning.

John Resig Twitter Updates

@jeresig / Mastodon

Infrequent, short, updates and links.