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

Reply via email to