Wednesday, February 18, 2009

A little bit of spaghetti...

You know, I've always been a huge proponent of open source software…to me the open source spirit is the spirit of the internet. I've been benefiting from open source software for years and I've learned a lot from looking at the source. The only thing is that I've always had to reconcile one problem: I'm a leech…I have never contributed to an open source project. Well, there was this one time….back in college…..

It was the Spring semester of my senior year, I was almost ready to graduate but I caught something…infectious…Hardware. I had spent 3.5 years avoiding anything silca related but I guess my will wasn't strong enough. Something about making a light flash on a circuit board was just so cool; I was hooked to the Arduino. I started attaching more light, and then more lights until I had attached all of the light that I could…and then came the accelerometer and well…you get the idea.

In the flurry of wires and LED's that I was tossing around I did poke around the Arduino source code (I am a CS major…after all)…I even made some changes and added a kind of packaging; simple but it was there…I needed it to keep track of the gadgets I was making and, being a poor college student, I would reuse the same parts over and over again so nothing stayed the same. I had such a hard time keeping track of things with so many open sketches and transferring things to the wrong board etc…that, in the spirit Larry Wall, I just created a tool to help me keep track of things. It was a simple file format that would load into the Arduino IDE and allow me to switch between things…nothing fancy but fully functional. I would've continued working on my little enhancement had I not graduated and become victim of the 9 to 5….






Flash forward to an Alumni two months ago where I ran into my old lab buddy Mike and my excitement when I found out he's still playing with Arduinos. After getting into a discussion about open source he asked me what ever happened to that edit I made of the Arduino IDE source. The source was on my old computer that was collecting dust in the basement and…well…long story short he convinced me that the community was in need of something like this and I figured this was my chance to stop being such a leech…so I dragged my computer out of storage and fired up my Java juices (and a pot of coffee)!





I was a little slow at first getting back into coding a Java app, but I took a strand of code here, a little bit over there…tossed in some of the updates that had been made since the last time I had coded and viola! The Aardvark Release. Why the Aardvark? Because I'm a sucker for alliteration and African noctournal mammals of the Orycteropus genus.

In the sprit of open source and social coding I've committed everything to gitHub. By the way, github is awesome, I can't even call it version control because it is just so cool to work with. Chris and I had a lot of fun collaborating together on this and I want to see more commits so we can do this flashy disco light thing so please if you've got an idea, go ahead and stick a fork in this angel hair :)

Head over to the App Exchange to get a copy!

And now for a little screen scrape action...






4 comments:

Matt said...

no way. first of all, nice! second of all, nice video too... very cool. it definitely makes sense though. it's a huge time saver so i don't have to keep dealing with the tools menu if i don't have to. but that still works, right?

you should do a blog post on how would you improve the arduino ide. i have a ton of ideas...

Mike Gionfriddo said...

Omar, i'm impressed... I just downloaded your upgraded ide. This is great for keeping my projects organized! Matt, I hope you don't mind if I convert your app and Chris' app into one?

The apps from your last blog...
http://antipastohw.blogspot.com/2009/02/getting-started-with-gamepack-in-3.html

Mark said...

Are you going to update the mac version as well?

Mark

electricFeel said...

Mark, the mac version is in the works an everything looks good (visually) just ironing out some of the wrinkles...Its going to be uploaded soon!