On Thursday 21 February 2008 07:47, Helge Hafting wrote:
> Steve Litt wrote:

> > Makes perfect sense to me, and I couldn't have said it better myself. A
> > person should not have to upgrade their distro every few months in order
> > to compile the latest apps.
>
> If you want to compile the very _latest_ apps, then you will sometimes
> need the _latest_ tools and libraries too. If that is inconvenient,
> stay with an older version of the app a little longer until the
> distro catches up.  That's what I do. I compile my own LyX and a few
> other programs - but the wast majority of my software stays
> at the debian testing level. I.e. not the latest.

[clip]

> A fine philosophy - but some people don't make the extra effort of
> following it
> to the same extent as you do. LyX don't force you to use the
> latest TeX or qt, but doesn't work with arbitrarily old versions either.

Hi Helge,

I think what we're discussing is a matter of degree. I certainly don't want to 
saddle developers with 5 years of backward compatibility. I doubt you'd 
approve of requiring a tool that just came out a week ago -- everyone would 
have to upgrade their tools just to compile your app.

So the question is -- how much backward compatibility?

I think the answer depends on two factors:

1) How much of a hassle is it for the developers to go with an older tool?
2) How much of a hassle is it for the user to upgrade his tool?

Hypothetically, if the tool is larrysLittleOutline that nobody's heard of, the 
user will have absolutely no problem installing larrysLittleOutline, always 
assuming larrysLittleOutline doesn't have nasty dependencies of its own. In 
that case, why not use the latest and greatest tool?

But if the tool is Qt, or gcc, or pyGTK, upgrading puts the user in a 
spaghetti bowl of entangled dependencies, and on many distros the likelihood 
is the upgrade will fail, or worse, break some of his existing software. In 
this case, backward compatibility should be the priority.

How much backward compatibility? Here's my belief:

Age of tools when distro is created:  6 months
Age of distro when installed:         4 months
Time between distro upgrades         24 months
                                   -------------
Desireable backward compatibility:   34 months

Yeah, I know, most people upgrade their distros more often than every 2 years, 
but there are many that wait 2 years, and I don't think that's outside the 
realm of reason, assuming they have a good firewall and are on a standalone 
machine or a very trusted LAN.

Dependencies aren't fun for anyone. By going back a little farther with 
backward compatibility, especially on packages that are completely interwoven 
with large numbers of programs in the distribution, the application developer 
can make it much easier on the user who needs the features of the newer 
program (in my case, outline view).

Thanks

SteveT
 
Steve Litt
Author: Universal Troubleshooting Process books and courseware
http://www.troubleshooters.com/

Reply via email to