original source code:
Eloquent Javascript
(desktop keyboard required)