One random train of thought that's been going through my head today is why designers don't pick a platform and try their dangest to milk it for all it's worth. I've seen projects, take Firefox as an example, claim that they *need* a particular version of the operating system to solve some particularly difficult bug or to fix some nasty, untraceable behavior. What would they have done had OS X 10.4 (for example) not been released? Or if the latest and greatest didn't fix the bug? Why not develop for an older platform and stay committed until its lack of forward compatibility is shot? Why is it always that people rush with the bleeding edge and make decisions from the opposite direction, waiting until things get so ugly that they feel they have to leave the older version behind?

Does that make sense? The consideration for when to cut ties with an older version of a platform is always taken from the point of view of when there's something in the newer version that's so spiffy that it must be used at the expense of the older -- rather than continuing to use the old platform until whatever functionality the program's trying to provide absolutely can't be done. You'll notice the stacked deck. Outlook Express on OS 9- still does email about as well as any consumer mail handler. The only reason you'd trash it is because it lacks forward compatibility. There simply aren't enough OS 9 users, and the codebase is useless on Intel Macs. But that's not the case with Firefox created with Objective C on OS X 10.0. There's very little inherent to the 10.0 zeroes and ones that makes it an unusable platform.

Anyhow, obviously this train needs more time in the roundhouse, but there you go... today's worthless exercise in thought unrelated to what I'm actually working on finishing.