Grok Programming's


  • Space Wyrm: 3D Snake is a game for iOS and Android. Tracing its roots back to the lowly 8-bit Snake, in this version you pilot a dragon through space. While the goal and perils are essentially the same, the gameplay is transformed by the steering mechanism. You pilot not with a joystick, but by simply tilting your device up and down, left and right.
  • My current project is called RiffTube. Inspired by the show Mystery Science Theater 3000 and its progeny, the idea of this app is to allow users to riff or otherwise add commentary to any video on YouTube. This is the first app I have made using React. Development is taking place in collaboration with Joscelyn Owen.
    Live Demo (alpha)
The power of programming is astounding. Programming is like a secret code: a language that only a few understand. But more than that, it's a language that actually brings about change in the world. In a very real sense, it's like magic.

The meaning of grok prog is to get beyond a basic understanding. To grok is to understand intuitively — in a way that leaves behind the need for words — while maintaining the ability to explain your reasoning.
My earliest exposure to programming was through a language called Logo, which was designed especially for teaching children to code. The idea is that the commands drive a digital robot, which can draw lines on a computer screen. The original project actually used a physical robot (link to WikiPedia). I've made several implementations over the years; here are the two most recent:
  • Logo Redux
    • This interface is designed to help the user see how lines of code are evaluated and executed. The language borrows from BASIC to declare variables and functions.
  • Nugo
    • This interface is designed for code to be entered by clicking buttons and adjusting sliders and other graphical input controls. Textual input is not necessary, although it is possible. Loops are supported, but more advanced features such as variables and functions are not yet.
Miscellaneous and sundry.