X has issues...
ok, I've seen a lot, and I will refuse to take sides. I will say however, that a good many things don't work on X because apple's architecture changes have made several issues apparent in anything that can require low-level access to hardware, and the system. this, I think, is the biggest reason so many drivers for any peripheral, internal or external, has been so problematic. many applications suffer because of the lack of ability for low level access to hardware. take VPC for instance. in 9, connectix was able to custom make a very optimized Virtual Machine & Virtual Machine Monitor for the OS, and that is why it ran so well. with X, however, apple is very reluctant to allow third, or even second party developers of hardware or software to have the ability to manipulate data and the machine at very low levels, to the point of controlling system rescources like the processors and chipsets; and rightly so.
Apple's biggest marketing point for X, is and always has been it's stability. having something that "does not break" is what apple is legendary for, and they have made breakthroughs in ease of use. the only problem is that you trade things off.
In order to protect their trade secrets, as well as their ability to keep their significant edge over other systems in stability, apple has to be like a dictator, instead of a democracy of developers with the company as their government.
they have to oversee everything that goes on which can possibly harm their system's stability and their engineering advancements. this rings very true for the development of quark and the drivers/Xtentions that run on nine. because quark is not able to have near the freedom to control system rescources, and talk directly to the hardware, this can be problematic at best.
now, I am about to say something radical that may piss a lot of people off, but so be it. I think for myself and if that rubs your fur the wrong way, then know that I will never go along with any group until I have fully understood why and how they do what they do.
It is truly much more the fault of APPLE than of any developer, and bumping back the X only launch is, IMHO, something apple can do to save face in their vintage developer community. The developers cannot reverse engineer the innerworkings of the OS that is not open standards based without suffering a hefty lawsuit and legal actions, and Apple has only so many employees, and having to work with every major developer of hardware, and anything that talks directly to hardware is not realistic. especially in an economy slump. Apple has bit off more than it can chew, and has put hardware developers between a rock and a hard place. bumping back the OS 9 kill date is the least they can do to ease tensions.
Secondly, the vintage development community, took years of working with extentions in every system before X, and built up an extensive mastery of working with both the system, and understanding from experience how to fix problems without apple's asistance. with the release of X, all of that decade and then some years of experience is lost in the blink of an eye and developers have to re-learn how to produce things for a system that is still being born. expecting anyone to get a decade and a half worth of experience and knowledge in a matter of three years is ridiculous. even if X has been out for three years, it is still very young. we got spoiled on the performance and ease of use with 9 and previous operating systems because it had evolved and been perfected over a long period of time. in retrospect, what apple has done, is essentially go back to system 1.0 of the mac OS, and they are doing amazing things in shorter times, but three years cannot bridge the gap of 15 years that apple has had with the classic OS.
and finally, there is things which interact with the system at the core level, like colorsync, which have been radically redesigned. the way the code for a CMM for colorsync in X is written is different enough that porting every CMM in a short amount of time is proposterous. so there is a generation gap. we have on one end, the vintage developers which have market experience and know what customers want and how things need to work, but are unable to apply that knowledge to a new operating system; and on the other end, we have the brand spankin' new Mac OS X code writers who are savvy as anything at writing code and knowing the system's innards, but don't have a damn clue about how the market works compared to the vintage developers.
I hope this gives you guys a new respect for what true change really means. -Dibbs