Classic is good food
nagromme said:
I'm not sure if you're responding to
this post of mine, but if so, you misunderstood it.
While my posts weren't specifically in response to yours, the fact is I just don't agree with it. Compatibility with older software of the sort that Apple does with Classic or Microsoft does with DOS or Win16s conveys no downside. Your position (echoed in your most recent post with that the statement "I didn't say Classic caused legacy bloat, nor that PPC on Intel wouldn't. I said that Microsoft's strategy, which you thought Apple should follow, carries that price") that compatibility environments of this sort causes bloat or instability and that we are best starting with a "clean slate" is simply not true of these environments anymore than having a Java VM installed is going to make your system worse off simply by its very presence. Frankly, there is no downside to these environments other than they take a small amount of disk space (my "iPhoto Update" to 5.0.3 took more room up on my harddrive than MacOS 9.x), which is hardly a reason to nuke them given today's large cheap hard drives and given the tons of wasteful things Apple installs that are substantially less useful than a compatibility environment (do you personally really need all of these language packs??)
The bloatware/stability argument, generally used to support the "clean slate" position you used, is relevant to Apple's support of native PPC MacOS X apps. They actually DO have the potential to misbehave. Classic, like the DOS and Win16 environments on XP, doesn't.
nagromme said:
You originally called Classic pathetic (because it's optional instead of enabled by default) but still better than nothing...
I consider this a different discussion, but you seem amused by it, so here goes:
In a previous post you had made some statement about what a grand achievement Classic is. Having seen how well compatibility environments work on some other platforms (XP and OS/2 had really *good* compatibility environments), Classic is a pretty sad little beast:
* Not installed by default. Sure, "Classic" is but not MacOS 9.x is not. Apple even makes you go buy the 9.x CDs separately---for an obsolete OS that is vastly inferior to X? (Why not just post the code on the internet, like Bungie did with the old Marathon game. If it isn't a seller, it is good PR to give it away.) Both should be there preinstalled and with a pre-selected "classic" system folder. That is the user friendly thing to do; Apple is *supposed* to be good at that sort of thing. Power users can always throw out this environment, deinstall those language packs, whatever rocks their boats to save a few megs of disk space. But when my folks double-clicked on one of their existing Mac apps and had to call "Tech support" (me) that is poor usability. It should "just work". On MacOS X, running a classic app does NOT just work. On XP, DOS and Win16 apps DO just work and work well. Apple could learn a thing or two.
* A nit to be sure, but Apple didn't think this out: there shouldn't be a "separate" MacOS 9.x "System Folder". It confuses users to have a "System" folder and a "System folder". Apple could have placed MacOS 9.x in its own folder inside of "System". And this shouldn't have been a vanilla install of 9.x but a streamlined version of 9.x that redirected calls to X services. More on this later.
* Extensions/printers etc. Honestly, I don't expect these to work too well on Classic and many don't. I don't even care that other compatibility environments support low level drivers much better than Apple managed to. However, some basic X services from Classic should have been enabled but weren't. Big example of this is printing: Ever print from a Classic app? You need to install a printer driver for OS 9 and ANOTHER print driver for X. For the SAME printer. It is nice that you can but it is pathetic that you must---if you want to print from both Classic and X apps. Even VirtualPC has a Printer compatibility mode that allows you to select a generic priner from within VPC---without having to install another Windows printer driver unless you choose to---and the output is routed to a Mac printer driver. Apple could have done this and it would have made this a far superior environment.
I would like to have seen a lot more mappings between Classic calls and X services. Apple supports only cut and paste and a few Apple events. A truly great compatibility environment would have replaced most everything MacOS 9.x needs with things that MacOS X can do. But Classic isn't truly great, so let's move on...
* Lack of extensions management. A well-designed compatibility environment would have had integrated extensions management for the Classic environment, like the venerable MacOS 9.x Extensions Manager. With Classic, this was more important than ever because Apple could have provided Sets of their own MacOS 9.x extensions that *actually work* work in Classic. Trying to figure out what works and what doesn't is such voodoo and Apple could have done the right thing here, but didn't make the effort. No kudos for doing things halfway and on the cheap.
* The hardware abstraction is somewhat severe. I have seen a number of apps which don't talk to the hardware fail to run simply because of Apple wrote the environment. They could have done better if they had created a *version* of 9.x just for Classic. Heck, they killed 9.x booting so what was the holdup?
* The transparency is pretty cool. Apple did a very clever hack by showing the app in the Dock and overlaying the Quickdraw layer. No downside to this, though when you use Classic enough you realize how superficial this is. Classic and X are not very well tied together beyond the Dock and cut/paste. Not a remarkable achievement however---Win16s are even more transparent under XP (actually can use more native XP services) than Classic is on MacOS X. Win16s ran great on OS/2 too, and transparently. Some OS/2 users were unaware their favorite apps weren't OS/2 apps! Classic is so clumsy to use I am very aware of it.
* Why isn't there a user configurable setting in the Classic control panel for when Classic goes to sleep? It should be very granular. Frankly, you don't expect most Classic apps to multitask when in the background and I would like to be able to set the sleep to less than a min or even seconds.
* Never understood why Apple chose to run a complete copy of MacOS 9. And a vanilla copy at that. It should have been modified to work well within X---given how fast they killed 9.x booting, nothing other than apathy was holding them back. Windows XP doesn't use a copy of Windows 3.1 or a full copy of DOS which are booted on the host computer. Microsoft actually thought about what needed to be emulated, and put these in a compatibility environment. Apple on the hand chose an approach more akin to VirtualPC, as if they didn't already own both OSes.
Classic IS better than nothing, which is why it should remain in MacOS X despite Apple's deliberate effort to marginalize it since the very first release of X (in Tiger, there isn't even a Classic control panel unless MacOS 9.x is actually installed!!! yIKES!!) And I think emulation is an acceptable solution to the dilemma...but is Classic a "remarkable achievement" (as you have stated in an earlier post)...*cough* Um, no. It is "better than nothing" to be sure, but not in the same league as similar solutions that the other guys have come up with. (And Apple actually DELAYED the original release of MacOS X a full year just to make their Blue Box environment "transparent"...yeah, they did Carbon too in that extra year.)
nagromme said:
...expressed anger at Apple because they've said they won't sell machines that support Classic after 2007 (when PPC Macs last ship).
Yeah, consumer unfriendly policies piss me off.
nagromme said:
But it is NOT vital for Apple, in 2008, to officially support apps for an 8-year-old OS. That's too extreme...
I don't give too flying hoots if it isn't "vital for Apple". It is important to a lot of Mac users, though I know many power users could care less. They must have money to burn and upgrade $oftware often.
But why it is "too extreme"? I think this is a silly statement. There is no downside to supporting it from the "bloatware/stability" point of view you used earlier. I think it is "too extreme" to terminate the ability to run over 20,000 Mac apps written prior to 2000 just because they might have to hire a summer intern to port some existing code. Oh right -- I forgot the "precious resources" argument. Apple would rather spend them on recreating Desk Accessories in the (for me anyway) useless Dashboard gimmick than in writing an OS that actually ran their own (older) software. People WANT Dashboard; no one WANTs to run their older software. Sure. Got it. I must not be people and what I actually want must not count.
As I wrote before, let Apple Open Source Classic and MacOS 9.x it if they don't have the balls to put an intern on it. Apple used the "tight resources" argument when it came to supporting older Macs with X, and as fate would have it a Canadian laywer, in his spare time, has managed to write support for all of those machines and for every release of MacOS X. Boy, I bet that was sure hard; I'm not sure Apple is to snuff to Canadian lawyer programming skill levels. But Ryan Rempel wouldn't have been able to write XPostFacto without opened sourced Darwin. Then Apple can reincorporate Classic for Intel and take credit for it later.