Tuesday, March 27, 2007

The Apple TV

I must admit that the success of the Apple TV has taken even me by surprise. Even before the unit shipped I noticed quite a groundswell of negativity. I understand many of the reservations that some have. The Apple TV won't play every codec known to mankind (without help) but it seems to be able to play many out of the box without a little work. I plan to get one primarily because I want to have a centralized store of music and videos and photos. If I could consolidate everything to one large multi-terabyte NAS device with easy access from my "client" software I'd be happy with that. My hope is that Apple will eventually allow this somehow. That all your media reside in one area (appropriately backed up via Time Machine of course) yet each client software like iTunes/iPhoto manage the metadata at the client level as well. Then the Apple TV could just be pointed at this media server most of the time and if you wanted to stream some data that wasn't on the media server you'd of course have that option as well.

I think the Apple TV is presenting more value via extensibility. It took less than 24 hours to find out that the Apple TV drive could be removed and the Quicktime partition accessed to add Perian a program that enables Quicktime to playback more codec. Upgrading the hard drive is proving even easier. The 40GB hard drive is going to be fine for many but the larger your hard drive is the more local content you can stuff on the Apple TV. I guess this defeats my aforementioned Media Server concept as the Apple TV would in essence become your server. We'll see how that pans out in the future.

Eventually I see Apple offering 720p HD downloads which will improve the picture quality of the offered movies greatly. It has been confirmed that the Apple TV is in fact running a flavor of OS X so I expect evolution to happen in this area as well. Who knows there might be a Apple TV running Leopard in the near future. Time will tell.

Here's a site where you can track some of the "hacks" to improve your Apple TV. The appropriately named Apple TV Hacker ran by Mike Curtis. The program that allows you to run more codec in Quicktime is Perian.

Monday, March 19, 2007

Future Mac apps may become Leopard Only quickly

I've always enjoyed tracking unreleased Apple Operating Systems. I am certainly looking forward to Apple's forthcoming OS X 10.5 Leopard release. One surprise that I have come across is that many Apple Developers are considering making their next release "Leopard" only. I was fortunate enough to take advantage of MacHeist bundle which included the very interesting Delicious Library and Textmate. Both very popular applications in the MacWorld. Both developers have decided to make the impending 2.0 versions of their applications Leopard only.

Wil Shipley of Delicious Monster says this in their blog:

Delicious Library 2 is indeed being written. This should not cause you concern if you are thinking of buying Delicious Library 1. First off, because there will be an upgrade price available (sorry, but it won't be free -- we've already provided five or six free upgrades to Delicious Library 1 with major, major functionality, which is why we're at version 1.63 now). Secondly, we're still quite a ways out on actually shipping Delicious Library 2 -- it's going to ship on Mac OS X 10.5 "Leopard" only, and we honestly don't know when Leopard is even going to ship. And, meanwhile, we're trying to write our software for an unfinished OS, which is like trying to perform an appendectomy on a patient who is awake and actively slapping your hands away.

They don't exactly go into the reasons why they are supporting Leopard only but I think Allan Odgaard the developer of Textmate makes it quite clear on his blog:

First of all, 2.0 is a free upgrade, so I won’t miss out on any upgrade fees from people that want to stay on Panther or Tiger.

Secondly, roughly 90% of my users are early adopters and have in all likelihood upgraded to Leopard within a few months of its release, so by keeping compatibility with older operating systems I am catering to less than 10% of my users.

Thirdly, it has a significant cost to stay backwards compatible, this price is paid in the form of:

Time spent debugging (and sometimes making workarounds for) issues only present on the older OS version.
Time spent implementing stuff that Apple offers for free on the new version of the OS.
Not being able to make use of features only present on latest version of the OS when it’s too impractical to conditionally make use of them.
Code complexity, because it needs to do different things on different versions of the OS.
Is eliminating those costs worth a 10% drop in sales? You bet they are! The reason why I have kept Panther compatibility for this long has nothing to do with additional sales and all to do with me just not liking to cut people off.

But by requiring Leopard I get all the Tiger stuff I have reluctantly ignored, all the new Leopard APIs which I look forward to use. I can render text with the faster CoreText which hopefully is free of the various ATSUI rendering bugs (like ignoring your drawn bold/italic font variant unless you flush your font cache regularly, or not doing proper anti-alias on bright text with a dark background), etc.

There is also Objective-C 2.0 with garbage collection, I don’t think anyone realizes how much work it is to manually unbind stuff from nibs when disposing them to avoid retain cycles (and thus memory leaks). There is a new Interface Builder with some much desired improvements — both of these things will require my stuff to run on Leopard, should I embrace them.

I happen to agree very much with his ideology and have highlighted what I believe to be his most salient parts. As a Mac user my computer is more than "just" a tool. I love the ethos of Macintosh users and developers. There is an art to this platform that attracts millions of people and I find that many users will indeed upgrade their OS once they feel "safe" that things will work. With each new version of OS X Apple adds more improvements that simply cannot be back ported to prior versions. As Mac users and application lovers should we settle for backwards compatibility and the limitations that it imposes on current software design or do we pledge ourselves to remaining as current as feasible and improving our computing lifestyle with each new OS X version? I frankly hope that more developers decide to move to Leopard only applications and embrace the new API that Apple has created. I will certainly be moving to Leopard as soon as possible for reasons I'll highlight in other post.