Skip to main content

The troubles with dinosaur and close technologies...

Posted by fabriziogiudici on April 3, 2008 at 6:14 AM PDT

Adobe has just announced that it will be impossible to have the next Photoshop to support 64 bits on Mac OS X systems. The reason is that Apple notified, the past June, that it won't support 64 bits for Carbon, so Adobe has to rewrite it on Cocoa and this would affect about one million (!) LOCs.

While in the past Java has had big troubles for supporting the desktop, and nowadays still a few issues remain, it appears clear how big is its advantage in such scenarios: with Java you can get 64 bit support almost for free (supposing you have a good 64 bit VM support, which happens in Windows and Linux).

It's also appalling to me to learn that strategic software manufacturers such as Adobe (I don't think Apple would have been so successful in some marketing segments that were strategic in the past without the contributions of superb products such as the Adobe Suite) don't get early warnings from Apple about its close technologies such Carbon and Cocoa (Adobe's statement refers to WWDC news). This makes me understand even better how important is to work with open technologies.


Well, I'm not bringing up any conspiracy theory (for this time :-). I'm only pointing out what kind of costs can be related to technologies not based on indirect execution (such as Java or C#). Before somebody comments too quickly, I stress the point that I've not said silly things such as "Adobe should have written Photoshop in Java or C#". I'm just saying that developers evaluating a desktop technology _now_ could learn something from this story.

BTW, ArsTechnica has also a good article on this:

Apple had actually announced and shown 64-bit Carbon at WWDC 2006, then announced at WWDC 2007 that Carbon wasn't going 64-bit after all. Considering that the new OS (Leopard) was already late, it may have been something that wasn't working well and that they gave up on in order to not slip further, but I'm sure the crowd that sees Nefarious Skullduggery in all of Apple's moves will attribute it to an evil plot to force(!) developers to move to Cocoa (never mind that Apple also gets burned on its legacy Carbon codebases, like iTunes and Final Cut).

Honestly, Carbon was always advertised as a transitional technology, to get apps from the old Mac OS to OS X, while picking up modern features like preemptive multitasking and modern memory management. Apple only developed it after Adobe and everyone else balked at having to do a ground-up rewrite for "Yellow Box" (nee NeXTSTEP, later Cocoa) back in the late 90's.

So, Adobe got a pass for 10 years. And completely ignored the hardware-accelerated "Core Image" framework that provides a lot of Photoshop's power to smaller developers... meaning a lot of users can skip Photoshop and use the much cheaper Acorn or Pixelmator. Whether Adobe decides to switch to Cocoa and possibly Core Image now, or instead coast on their existing codebase, is entirely up to them and their rational self-interest.