When Apple first coined the phrase “Carbonized software” a few years back, it unfortunately evoked mental pictures of Han Solo baked into a lump of metal. Not the kind of imagery one would want for the next generation of Mac OS software, but there it is.
While a more effervescent metaphor would’ve been a better choice, what ultimately matters is the software itself. But what distinguishes Carbon versions of software from Classic ones? And more importantly, why should you care?
Not as Easy as They’d Have You Believe
When Apple announced OS X, it declared the new OS to be the future of the Mac. At the same time, though, Apple didn’t want to force its developers to scrap their existing apps and rewrite them from scratch.
So it introduced the idea of Carbon, whose application programming interface, or API, is similar enough to the methods of creating software for the Classic Mac OS that it should be familiar to existing developers. With Carbon, developers would be able to produce applications that take advantage of Mac OS X’s new and improved features such as memory protection and preemptive multitasking, or so the story went. At the same time, Carbon apps were also supposed to run on Mac OS 8.6 and later, so — theoretically, at least — the same app should run in both Classic and Mac OS X.
Apple also claimed that converting existing applications from Classic to Carbon would be easy, bordering on trivial. Were that the case, we would see a deluge of Carbon apps released on March 24. But we won’t. Converting Classic apps to Carbon isn’t nearly as easy as Apple would have everyone believe.
As a result, don’t blame the developers if your favorite apps aren’t available in Carbon versions soon; it’s highly unlikely that it’s their fault.
Besides all the programmer-level challenges that greeted developers moving their software from Classic to Carbon, there’s an additional big hurdle: Aqua. Despite Apple’s protestations to the contrary, Aqua’s various controls — buttons, dialog text, and other user interface widgets — are different pixel sizes than their counterparts in the Classic Mac OS interface. While Apple did make some changes to keep the vertical size of Aqua’s controls much the same as Classic’s, the Aqua user interface elements are consistently wider than their Classic predecessors.
For developers, this change means they have to lay out all their apps’ windows, dialog boxes, and alerts anew. Since Mac apps pride themselves on their user interface, this translates to quite a lot of time-consuming effort.
So, in addition to all the shiny, rounded translucency that Aqua brings us, it also will make everything bigger. Many of the gains that we got from having larger screens are going to be lost again solely by switching to OS X.
But What Is It Good For?
Still, Carbon apps are critical for the success of Mac OS X; without them, no one has any incentive to switch to the new operation system since non-Carbon apps would have to run inside the Classic compatibility environment anyway, thus negating much of OS X’s benefit.
However, the theory that a single Carbonized application will run just as well on Classic and Mac OS X has proven to be false. Many developers actively working on Carbon versions of their apps will be shipping Carbon versions for Classic and Carbon versions for OS X. Evidently, Apple’s guarantee that the Carbon environment on both platforms would be identical is not as ironclad as one might have hoped.
Users debating the switch to Mac OS X will face two critical decisions: Is Mac OS X stable enough for me to do my work on? And, are the applications that I need to get my work done available as Carbon versions?
During this Mac OS X launch week, the latter answer likely is no. But hopefully that will change soon.
The initial release of Mac OS X is a first, small step on the path of migrating to a new operating system. It’s clearly not all that we were promised when it was first announced several years ago, but it should provide a rich enough substrate that applications should flourish over time.