I started learning computer science / programming a year ago (December 2010).  This past week, I've built two very different web apps and everything is clicking.

I'll write more posts on the apps when I launch them but one enables people to give away cool product/app/website ideas and the other (in collaboration with Chris Maury) is a data visualizer for Reddit users (shows them what subreddits give them the most Karma).

I built both projects in Node.JS and used these other tools:

  • Express (MVC framework for Node)
  • MongoDB (NoSQL database)
  • D3 (data visualization tool)
  • Twitter's Bootstrap (web design)
  • jQuery
  • Jade, Stylus and countless other Node plugins

A few techniques I've picked up along the way

  • Using (and understanding!) callbacks in Node for asynchronous functions
  • Using http.request() to pull JSON from Reddit and using recursion to keep getting info from Reddit (this was fun!)
  • Creating/transforming JSON objects into the perfect form for data viz
  • Intermediate jQuery for all sorts of DOM manipulation
  • Quickly digging through documentation to understand 3rd party modules
  • Using GitHub (for collaboration w/ Chris)

Everything is clicking and it feels great.  I've had a lot of fun and now feel like I can build just about anything I dream up.

It's hard to believe it's already been a year of coding... can't wait to see what I learn in the next one.

Stay tuned for posts when I launch the new projects... They'll also be up on GitHub.

Update: you can find the post about the Karma App here