I’ve become quite the fan of Processing. When I first started to dig into the Arduino world, I turned to my old friend Perl to deal with Arduino<->Computer communication, but quickly discovered that Processing was an ideal environment for such a thing.

Perl is great (you know, IMHO and all that) but the main appeal for me has always been in Perl’s data processing capabilities, and having CPAN and a module for almost everything. Perl is fun, but it’s not FUN. I’ve dabbled with generating graphics with Perl using GD and SVG modules, but it’s not anywhere near the area known as fun.

Processing, in my mind, is built for fun. So what is Processing?

Processing is an open source programming language and environment for people who want to create images, animations, and interactions. Initially developed to serve as a software sketchbook and to teach fundamentals of computer programming within a visual context, Processing also has evolved into a tool for generating finished professional work. Today, there are tens of thousands of students, artists, designers, researchers, and hobbyists who use Processing for learning, prototyping, and production.

Processing sometimes gets called a “multimedia programming language” and is used quite a bit by artists and designers, and probably much less by hardcore software developers. Check out OpenProcessing for some great example sketches.


My own sketches are not very impressive yet, but as I said, Processing it a lot of fun. It’s reminiscent of the olden days of graphics on the Apple ][ where you plotted things out in HIRES graphics mode but, you know, way more advanced.

It’s pretty easy to build Processing sketches that respond to sensors connected to a microcontroller like an Arduino (see Accelerometer Art) and that’s something I’ll definitely be exploring more of in the future.


Processing runs on top of Java, or is a subset of Java, or whatever. This is great because you can easily create a Processing sketch that can run on Mac OS X, Windows, and Linux, and even create a standalone application for each platform. (It’s that promise of Java we had long ago!) But the real excitement is that the latest version of Processing lets you target Android as a platform. Supposedly you can build an app in Processing and get it into the Android Marketplace. (I’m not aiming to get anything into an ‘App Store’ but just want to run my own apps on my own devices, as mentioned in my Android vs. iPhone post.)

And speaking of the iPhone, it looks like iProcessing and Processing.js may be able to get Processing sketches running on iOS… neat! (Processing.js is also on my TO DO list. I’ve toyed with it briefly and it’s pretty amazing.)

One of my complaints about this “new world of Apps” on phones and tablets and non-traditional devices is that there is too much of a barrier to entry to building things that run on them. I’m hoping Processing might help bring that barrier down a bit.

Update: It seems May is Processing Month. I didn’t know! Now I feel compelled to do more.


Android vs. iPhone

I’m often torn between the elegance of the Apple User Experience and the freedom offered by, well… pretty much anyone but Apple.

As you probably know, I’m a pretty big supporter of open source (hardware and software) and I’m also a Mac user, and more recently, an iOS user. Apple is pretty damn good at providing a great user experience with their hardware and software, and as it’s often said, most time things “just work” which is important to me, because I use Apple products to make a living.

As far as the freedom thing, I love freedom, and Apple isn’t the leading provider of freedom, so I live a life of conflict. Most of us do in some way… so be it.

As for the iPhone, there’s a lot about it to like, and truth be told, there are things to not like. I’m currently running an iPhone 3G, and I’d probably be a bit more up on the iPhone if I were running an iPhone 4. (The other day someone was recommending an iPhone to someone and said “It will change your life” which may sound far-fetched, but depending on how you use it, this can be true.)

The Android platform does hold some appeal, but I’m not sure if it’s enough for me to jump ship. I mean, Android has it’s issues as well, so I don’t even know that it can easily be said that one platform beats out the other.

Wired’s got an article about How the Android Ecosystem Threatens the iPhone which is worth a read. The graphs are worth commenting on.

Android vs. iPhone

As my disclaimer, I am not a “switcher,” and by that I mean, I was not a Windows user who eventually replaced it with a Mac. I’ve been using Apple hardware since the early 1980s and my first Mac was a IIvx. That said, I lived through the dark times of Apple in the 1990s, including Amelio, the clones, rumors of Apple’s death, etc. With that perspective, these numbers don’t look scary. There were (and are) way more manufacturers of “PCs” than “Macs” and 90% of the “PC manufacturers” made crap. Cheap crap that competed on price, each trying to be a bit cheaper than the other because they were all basically the same. Some were bigger/better than others (Dell) and most of them got around to following Apple’s innovations in hardware eventually. So the real question is, out of those 170 devices running Android, how many are awe-inspiring, and real competition to the iPhone?

Android vs. iPhone

Again, I’m no financial wizard, but to me I assume that 30% that goes to Apple helps maintain the iPhone ecosystem, the cost of running the App Store, future R&D, product development, etc. Plus, people hate carriers. I want as little of my money going to AT&T, Verizon, etc. as possible. If Apple gets it, I think I prefer that. As for the Android App Store, it goes to Verizon. What has Verizon ever done for you? What if you are a competitor to Verizon? And who runs the Android App Store, Google? Does it cost them nothing to run it? No, they’re just making their money elsewhere… (Advertising? Yup, we need more of that.)

Android vs. iPhone

This is the one I may be the most “meh” about. It seems to show the number of apps for Android increasing, until someday it will surpass the numbers of the iPhone. Again, if you’ve lived in the Apple world long enough, you probably remember back when the argument was “Windows has more applications!” and it was true, but it was also true that 95% of them sucked. Sure, there were 200 text editors for Windows, and if you were lucky, 2 or 3 of them were good enough to use. Meanwhile, Mac OS had BBEdit and tons of devoted fans. There were other text editors, but we had one really good one. It wasn’t rare to read a post saying “I’m being forced to use Windows at work, is there anything even close to BBEdit on Windows? Please??” This repeated elsewhere, and I think it shows the whole Apple cares more about quality than raw numbers when it comes to doing things. Sure, they want to sell a lot of computers, er, I mean, iPhones, iPods, iPads, but they also want them to be the best devices out there. I think it’s rare that the most popular thing is the best thing, and I think Apple knows that, and they’re fine with it. As for Android apps, I’ve read a lot of complaints about the quality of them, and the dubious nature of some of them (there’s money to be made with apps you know!) but hey, they say the price of freedom is eternal vigilance, right?

I’m eligible for an iPhone upgrade later this year, about the time the iPhone 5 is rumored to be released., but Android does have some appeal to me… I’ll get into that next time.


Your iPhone is tracking you!

Oh yeah, time to freak out, because your iPhone is tracking you! Well, it’s tracking itself, or cell towers, or wifi access points, or… something of interest, but sadly, it’s not doing a great job at it.

For some people, this is “Big Brother” type of scare… and for others (fans of geo-tracking) it’s not quite good enough.

I grabbed iPhone Tracker, and dug through some of my files, and took a look at the SQLite database, and was fascinated by the data (I tend to get fascinated by data) but I didn’t feel like alerting the media about it…

Will Clarke has a nice blog post about this as well. It’s worth a read.

Here’s some data that was marked 2010-12-29. I’m not sure what that date refers to, but this seems to show my trip taken on 2011-01-01. I find it interesting to see this data. Back in mid-2010 I wrote some code to make an archive of my Foursquare data, with the thought I would map it all out at some point. Sadly, I’ve collected a lot of data, but haven’t done anything useful with it yet. Maybe it would make more sense for me to just get my geo-data directly from my iPhone. I mean, I don’t even have to check in and it knows (roughly) where I’ve been!

This seems to do a poor job of showing where I was. I mean, I’m pretty sure I wasn’t in all of these location. Maybe it was just my phone connecting to towers in all of these locations…

A nice table view of some of the geo-data the iPhone records. Now to figure out how to use it for something good. Or bad. Or somewhere in-between.


iPod Review – Five Years Later


I got an iPod for Christmas in 2005. I’m going to review it now. Wait, 2005… Is that a typo!? No…

I’m still using the first iPod I ever got. My wife gave me the 5th generation 30GB iPod with video. And yes, I did review this iPod back in 2007. So what? I’m reviewing it again.

I love this iPod. I have not felt the urge to upgrade or replace it. It works as well as it did 5 years ago when I got it. The interface is simple and easy to use. It does one thing, and it does it well.

I use this iPod almost every day. At least, every day I drive. I’d guess that 98% of its usage is in my car as an audio player connected to my car stereo. I have no desire to get an iPod touch, as I actually think the interface would be much more difficult to use while driving. In my previous review I did mention something about this:

The iPod interface also requires you to look, or at least be able to feel around and guess where to push. Other players (with actual buttons) allow you to memorize where the buttons are and what they do. I could operate my Rio while driving and never take my eyes off the road. This seems to be a big concern with the iPhone as well, it will require visual attention to be able to use it.

Maybe it’s because I’ve been using the old iPod interface for so long, but I feel much more at ease using it to navigate for music playing than I do for my iPhone. It’s all spin and click, no typing or swiping.

I still on occasion have an issue with the iPod not turning off, but it happens seldom enough that it’s not really a bother. Battery life also seems a bit shorter than it used to be, but hey, it is 5 years old and has been used a lot. The battery does hold a charge, so that’s good. The only really bothersome thing is that at some point it got confused and started showing the wrong artwork for some of the files on it. So I’ll be listening to Sleep and it shows album cover art for Cat Power. I’ve gotten used to it. A restore might fix that, but I’ve never had the energy to do one.

I don’t need apps, or wifi, or a camera, or anything except a music player, so as long as it holds out, I’ll keep using the 5th generation 30GB iPod for my automotive audio needs.

(And yes, I do realize that by posting the sentence above, it will somehow cease to function within a matter of weeks. I’ll let you know when that happens.)


The Obsession with Easy


Being involved with technology may have tainted my opinions for the past 30+ years, but it seems like now more than ever, there’s this push to make thing easier to use… maybe it’s always been this way, but the last few years (perhaps fueled by the iPhone/iPod) it’s been all about making things easier, and I find it slightly annoying.

Matt recently talked about ease of installation explaining that there may be (gasp!) 4 steps involved in installing an application. How does anyone even succeed at such a Herculean task? 4 steps! It’s a wonder we all don’t just stick our heads in the oven and turn on the gas. (There’s probably too many steps involved.)

For people that just want to “use” software, I suppose they do want it easier, I mean, who wants to spend the time to learn something when there’s cat pictures to look at.

My point is, while it’s good to simplify things, and make things easier, you may still need to do some work… and that’s OK. In fact, it’s a good thing, and should be encouraged. I wonder if brain surgeons bitch about “how hard” brain surgery is, and wish that it were easier, and someone would come up with a better way to do it that just required pushing one button or performing less than 5 steps.

I had to learn to use a lawnmower, and a screen press, and how to drive a car, and gift wrap a box (I’m still learning that one) but the point is, you still have to learn things, and if you have to learn how to use an iPhone, or an iPad, or a computer, or any piece of technology, I think that’s fine. Things will advance, but we still have to learn. Compare programming a VCR to programming a DVR. We are making progress, but yes, you still need to learn.

By the way, do schools teach kids how to learn yet?

(See Also: The Dumbing Down)