While I totally agree with your overall assessment. The question "Do you know how long it would take to rewrite and debug over a million lines of code?" is a bit off base. Rewriting the code is not necessary. It's just a port. Granted porting a million lines of code and making the adjustments needed to take advantage of 64 bits is not remotely trivial. Just making the point that it's not really a re-write of a million lines of code.
Exactly. Only a small portion of the code needs to be rewritten.
Because Apple will switch them over when they need to, and on top of that, there aren't any real limitations on these apps due to being Carbon. Being Apple's own API, they know how to use it better than anyone, but I expect to see everything in Cocoa by 10.6 as Carbon's deprecation is looming. Adobe needed to a long time ago and never did. Now they're hitting a wall and still wont switch over.
For some things, Cocoa is irrelevant. Do you really need a 64 bit Finder? The things where it matters have already been converted.
If Adobe was too blind to see that Apple has been trying to kill Carbon for so long, then it's not apple's fault for coming out and saying Carbon64-bit was not going to be in Leopard. Adobe should have already been migrating towards Cocoa. It's called planning ahead. If you know there's going to be a transition, you start working on it as early as possible so when the day comes, you aren't caught with your pants down.
I don't know why they didn't start the Cocoa rewrite when they took it Universal.
Or when Apple released OS X.
I do work as a software developer. a million lines is what I concider the border between large and "really big". It is where managers earn their pay. But I hope they don't have to re-write all of those one million lines. One would hope Adobe has a layer of abstraction of the Carbon API and that their core image processing cose is not hopelessly intermixed with calls to Apple's GUI library. If Adobe has this kind of horrable code then this is a great opertunity to toss it out. I would bet on them being smarter after all they already suport two platforms the move to cocca is like adding a third platform.
Exactly. If the code is properly written, only a small amount needs to be rewritten. And with the capabilities built into OSX, chances are that much of that code could be eliminated entirely.
If Apple wanted to take over the Photoshop market, wouldn't it be a better strategy to just buy Adobe? Really, Apple's developers have so much on their plate right now -- witness the delay of Leopard to get the iPhone released in time, the delay in getting the iPhone SDK out, etc. Why saddle the Apple developers with such a huge task that may or may not succeed?
I doubt that buying Adobe would make sense. The price would be immense - and they'd probably have to rewrite a major portion of the code anyway. For a tiny fraction of the cost of buying Adobe, they could introduce a competitive (or superior) product.
Just goes to show that you can't keep kludging along forever. The move to Cocoa started nearly ten years ago, and many devs kept putting off rewriting their code. Now the plug has been pulled on Carbon and panic sets in.
It's hard to fault Adobe in this situation, though. Apple pulled the 64-bit Carbon support at the last minute without warning just like they pulled features from Leopard (resolution independence, fast Boot Camp switching, Home on iPod). Apple itself doesn't even use Cocoa for many of their apps, and hardly any are 64-bit. If Apple want everyone to move to 64-bit Cocoa, they need to start setting an example.
Why? For example, why should TextEdit be 64 bits? Apple has moved the stuff that matters.
Furthermore, we don't know what has been going on behind the scenes. No one outside of Apple knows how hard Apple has been pushing Adobe to drop Carbon (or, alternatively, how much Apple has reassured Adobe that Carbon would be 64 bit). We also don't know the reason for the change. Perhaps Apple found that it had a drastic impact on the performance of the system and had to change. Or maybe they simply changed their minds. Without knowing that, it's hard to know how much to blame Apple.
But it HAS been known for 10 years that Carbon is eventually going away and Cocoa is replacing it, so Adobe clearly had plenty of warning.
I agree! Adobe products is what made me make the switch to mac! Two versions is ridiculous. Thats like 4 year gap considering the product cycles of CS.
I wish Adobe would make their own computers!
Great. Just what we need - they'd be selling 400 MHz 486 computers with the Adobe logo for $4,995.
1,000,000 lines over 10 years(-ish). They had to change
1 line approx. every 5 minutes 15 seconds.
That, of course, assumes that ALL the code needs to be changed (which is clearly false). It also assumes that Adobe has only one Mac programmer (which might be true given the speed that they've adopted Apple's technologies over the past decade).
No offence but I think you are being far too generous towards Adobe here and being overly conservative in regards your estimates.
Adobe's code is real crap and the porting to Cocoa will indeed take them a long long time, but starting over fresh using Cocoa can be remarkably fast. Witness Pixelmator. I know a lot of folks are going on about how Pixelmator has not got close to the wide PhotoShop feature set, but for most users all the basic stuff is already there, already Cocoa, and it only took two guys a very short time to do it. You also have to figure in all the bloat that is in PhotoShop and CS suite (hundreds of gigabytes of absolutely unnecessary garbage), and realise that all *that* stuff doesn't actually have to be ported.
I think Adobe has
completely "lost it's way" in terms of knowing what to do, what will sell, what it's
customers actually want, and even
who it's customers are.
It's painfully obvious that this is the case and that it's a company-wide problem. No company with those kind of problems will ever produce anything noteworthy, and my prediction is that others will step up to the plate in the interim.
All true. However, it's also important to remember that there isn't a single group of Photoshop customers so the job is even easier. You don't need to have 100% of Photoshop's capabilities to get a significant percentage of Photoshop users. Presumably, someone will come out with something with, let's say, 30% of Photoshop's features - that will satisfy 80% of their cusotmers - and gradually increase the number of features over time.