I’ve been meaning to blog about this for about two months, so here’s a bit of background.
Back in October, a friend (and coworker) of mine and I decided to start playing around with simple electronics in our spare time. We both bought the Arduino starter kit from Adafruit and during our first meeting, quickly worked through the first few tutorial lessons at ladyada.net. It didn’t take long before we decided to meet every Tuesday for lunch and hack on our new hobby.
Just after 1:30PM today, I finished up my implementation of the first milestone of the NDWall project. The best part was trying to figure out to construct the request to post new messages. Here are a few screen shots of the app:
It really doesn’t do much other than the two required features. I haven’t profiled it to make sure there are no memory leaks, but I’ll do that soon. The manual memory management of the iPhone is definitely odd for someone like me who’s done mostly garbage collected languages in his career.
The best way to learn a new programming language/environment is to make something practical with it.
To that end, Dave and I started a little side project called (at this point) NDWall. It’s an implementation of a “wall” where new messages can be posted and the 10 most recent can be viewed. The server-side api is very simple. Just two methods (GET and POST) on the api resource. The data transport is JSON, the lingua franca of web APIs.
One of the things that’s been on my mind recently has been optimizing my work life so that I can either spend less time doing the same stuff or accomplish more in the same amount of time.
In the back of my head has always been Joel’s test, and in my feed reader the other day, I found a similar list; the humorously titled “Your Doing it Wrong if…” I had to laugh hard at the fourth entry on that list, as I have written my own database abstraction layer (hereafter DAL).
As evidenced by my runnerplus page, I’ve reached one of my goals for 2008: I ran 500 miles. It happened right after the last long training run before the marathon. I definitely didn’t expect to hit this milestone so soon in the year, but training for a marathon and logging more than 30 miles a week certainly got me there.
And speaking of the marathon, it was a lot of fun.
What Ruby on Rails is to web programming,
and Capistrano is to deployment,
now Castanaut is to screencasts:
#!/usr/bin/env castanaut plugin "safari" plugin "mousepose" plugin "ishowu" launch "Mousepose" launch "Safari", at(20, 40, 1024, 768) url "http://gadgets.inventivelabs.com.au" ishowu_set_region at(4, 24, 1056, 800) ishowu_start_recording while_saying " Tabulate is a bookmarklet developed by Inventive Labs. You use it to open links on a web page. It's meant for iPhones, but we'll demonstrate it in Safari 3.