Happynerds – Programming Links for Kids

by Satish Talim on December 21, 2009

Happynerds – Programming Links for Kids

A guest post by Michael Kohl.

Michael KohlFor quite some time I was planning to create an online resource of programming tools for kids, because I think developing software is a beautiful and rewarding experience which is a perfect fit for children’s natural curiosity. Alas time is always short, so up until recently all I did was to collect links on delicious and wait.

Then two weeks ago I went through my personal todo list and realized that this idea has been sitting around for way too long, so I decided to finally do something about it. Thanks to the wonderful tools the Ruby community provides us with, all it took was this initial spark of motivation and an afternoon of free time to finally create Happy Nerds.

Happy Nerds is a very small and simple site, so it seemed like a perfect match for the wonderfully elegant Sinatra DSL for web applications. I’m constantly amazed by how productive and fun development with Sinatra can be, especially when used together with the right tools like Shotgun and Haml.

Before starting to code I obviously also had to decide where to host the site once it’s finally done, and Heroku just seemed like the most natural choice, due to its excellent support for everything related to Ruby web frameworks (Need gems? No problem!), a very streamlined git-based workflow and excellent command line tools. I also wrote a patch to add the –heroku option to sinatra-gen a while back, so I was literally up and running within seconds.

Now all that was left to decide was the data store. MongoDB had been on my radar for a long time and I got myself an invite to MongoHQ‘s beta program some weeks back, so this seemed like a good opportunity to finally give both of them a try. As it turned out, they are as fun to work with all the other projects mentioned so far!

Once I decided which exact tools to use, creating the actual application was almost too easy. I started by writing a small Ruby script which fetched the appropriately tagged bookmarks from delicious (where I stored name, URL and description) and fed them into MongoDB. After that all it took was a couple of very simple Sinatra “controllers” and the actual views, which thanks to Haml also were breeze to create.

So even as somebody who usually doesn’t do web application development, I had a first functioning version within an afternoon and a finished site within two. Granted, Happy Nerds is very simple at the moment, but I just wanted to finally get the idea out into the open. I do have a couple of ideas for the future though and thanks to the used technologies I feel confident that implementing them will be easy and fun once I get around to do it!

Technorati Tags: , , ,

Posted by Satish Talim

{ 3 comments… read them below or add one }

Willian Molinari December 21, 2009 at 6:25 am


Really cool! Congrats Michael! :D



Chris Conrey December 21, 2009 at 10:03 pm

we’ve had a lot of success with the Scratch framework as an entry point for kids into development, also Hackety-hack from _why is a good resource as well.


Michael Kohl December 22, 2009 at 5:53 pm

Thanks for your feedback Chris! As you may have seen Scratch is already on my list and I think it really is great. When I collected links I decided against adding HH because I wasn’t sure about the project’s future after _why’s disappearance, but seeing that some other projects I listed aren’t really actively maintained I may actually add it in.


Leave a Comment

{ 19 trackbacks }

Previous post:

Next post: