Friday, August 18, 2006

The Counter

A new burger place just opened up near where I work called The Counter. It's totally awesome. That is all.

Wednesday, August 16, 2006

ACE up my sleeve?

I received very humorous email yesterday (although I'm not sure the sender found it funny) asking me about the build process for a cross-platform networking, communication, etc, library called ACE.

From the email:
"Something realy interested me in what you said. I understood you actually compiled ACE on a Mac Intel OS 10.4.6."


What's funny about this is that me and a coworker spent over a week of our lives trying to get this "cross-platform" library to compile on an Intel Mac. It was one of the most frustrating experiences of my life. One of the reasons being that ACE simply takes about 30 minutes to attempt a build on a 2 GHz Intel iMac.

This post is not an instructional post on how to get ACE to compile on an Intel Mac (although if you need help feel free to contact me, the ACE guys are quite unresponsive unless you fill their forms out exactly). Rather, it's a warning to consider your options carefully when deciding on using a cross-platform library. Now, I don't have much experience using ACE in code, although I do hear it's tricky to get it right. I simply speak from integrating such a thing into our Mac build.

It seems as though all the libraries we use that claim to be cross-platform have a deficiency on one play form or another and we often end up having to use #ifdefs in our code anyway (the very thing we're trying to avoid). The other thing that is very disappointing to me as a Mac developer is that the use of cross-platform libraries encourages a particular way of thinking in that we want to maximize code reuse, and thus we must target our code at the lowest common denominator. With all the rich technologies available to us on the Mac in Tiger and the amazing things coming in Leopard, it's really a shame that we can't take full advantage of them (I'm sure Windows and Linux have some great features unique to the platform, I just don't know what they are).

It's great to have a core platform that compiles on every OS under the sun, but at what point do we start to realize that the computing experience is different on different OSes? And that we should start coding differently and taking advantage of all that our respective environments have to offer.

Sunday, August 06, 2006

Bonzo Project

Aaron Hillegass's most excellent idea of a central repository of reusable cocoa code. Check it out.