John Plocher schrieb: > We used to think that incompatible changes to interfaces found in/on > Solaris were always Bad, and that evolutionary stability was always a > Good Thing. What we found was that, while stability was desirable, > being different/old/stale from what was available elsewhere was even > worse. > > The key in my mind is "available elsewhere" - as on Linux distros, > sourceforge downloads, etc. I don't think anyone is arguing that we > should relax our stability expectations for core OS things that make > it possible to do distributed development on drivers, OS modules and > subsystems - those things are somewhat native to our system. >
> Things like Gnu tools, desktops, middleware and the like are another > matter - we live in a heterogeneous world where platform differences > cause severe developer and end-user problems. The users of these > programs/libraries are already well aware of the evolutionary > stability -vs- perceived value tradeoffs, and resent efforts on our > part to arbitrarily or artificially manipulate their options. > But ISVs may not resent them. And neither may users that buy ISV software. I've been mostly working on unbundled software, available for (at least) Solaris and 'Linux', so even from within Sun I perceive the platforms as an ISV would. Due to the considerable amount of truly volatile interfaces, an ISV can typically only support a narrow subset of all the Linux distros out there, for example the 'enterprise' distros, which feel at least as different/old/stale to users of bleeding-edge versions. But even there we have seen our software broken by patches. Some other software manages to support more platform variety, but usually that takes substantial development effort - or building+distribution effort, if you simply rebuild for the dozens of platforms that are 'Linux'. For the user POV I can only offer anecdotal evidence. My wife runs a Linux desktop. We bought a third-party spell checker that is significantly better than competing no-cost (FOSS or not) offerings. After the first distro-upgrade, it took manual surgery that would have been beyond most users to reinstall that software, but - almost surprisingly - it still worked. I still need to redo that work for the latest update - for now that paid software stays unused. And I fully expect it to break sooner or later with such an upgrade. When that happens, we'll have to wait for the vendor to support the new platform version (if they ever do) and pay again, just to get back the same functionality we already bought. The reason for such breakage will most likely be some change that has no clear benefit for my wife, like an ABI incompatibility in the (C++) toolchain. Knowing the ISV side of this, I can't really blame the vendor, as most users would. This really is the fault of the platforms. And that many users don't know that and blame the ISV, doesn't change this. The way FOSS tools and desktops evolve, works really well only in a world where all software is free and can be sucked into every distro (or at least be rebuilt by community enthusiasts). But I don't think that this is a goal or even a desirable state. (I also know that some people disagree.) There is and will continue to be non-FOSS software, and neither the developers nor the users of that will be happy, if the stable parts of the platforms aren't large or truly-stable enough to sustain it. - J?rg > In my mind, ANY FOSS project that doesn't support the concurrent > installation of multiple versions on a system is fundamentally broken. At best this applies to libraries or similar interfaces. But where system-wide configuration or services evolve incompatibly, neither the user nor the developer will want to deal with multiple simultaneous (and non-interoperating) instances. -- Joerg Barfurth Phone: +49 40 23646662 Software Engineer mailto:joerg.barfurth at sun.com Desktop Technology Thin Client Software http://www.sun.com/software/sunray/ Sun Microsystems GmbH http://www.sun.com/software/javadesktopsystem/ Sitz der Gesellschaft: Sun Microsystems GmbH, Sonnenallee 1, D-85551 Kirchheim-Heimstetten Amtsgericht Muenchen: HRB 161028 Geschaeftsfuehrer: Thomas Schroeder, Wolfgang Engels, Wolf Frenkel Vorsitzender des Aufsichtsrates: Martin Haering