Submitted by Tommy.S (not verified) on Wed, 2009/05/06 - 13:09.
"This means that high-maintenance, bleeding-edge Linux distributions, while very useful to the selected few, are not a nice fit for 99% of the market because they change too often, require work to update them and change often spurs breakage, instability or behavioral change."
99% users can stay all times up-to-date easily, without problems and secure. ALL THE TIME!
What longer you stay on one version, more features will come to new version and the bigger and more problematic the change will come. What means more teaching, more time and at last, more money spend to new version. If user stays always on the newest version, (6-12month release cycle) there ain't big problems, only small ones. You can keep your current settings without touching them and you get new features.
Every task, can be made better. You can need features what are missing or you do not even yet notice how things could be made better.
The users, normal users are DEVELOPERS as well as all software engineers who code the software. The users (99%) are those who gain experience from the software and they notice what is done well and what is done wrong.
The software engineers should listen the users and they should develop the software to meet those needs what users wants, and more important, _what they need_.
This means that the information from users to engineers is needed to happend in daily purposes. Software engineers should get statics what are problems of the software so they can improve it, bring needed features and do what users want.
And this means that users need to have access to use the upstream version of software. So they can get the improvements and they can get the features what they need. All that makes the users life much easier than stick in years on the old version.
There is lots of problems on the old versions of applications. You can not always fix security/feature bugs on them like you can do on newer version. What older the version is, that harder it usually comes. And that means the old version and the newest version comes too different that maintaining those comes very complex, if not impossible. Longer you use old version, more you slow down your self because you do not get the secure, maintained and improved software. And more money you will spend in long run when you ain't upgrading in short periods what takes just small amount of maintenance time.
The typical transfer between 6-18 month release is not a problem at all. But switch between releases what is longer than 3-5 years, comes very complex. I have not yet seen any good transferr between Ubuntu LTS versions or Debian stable versions. All companies and projects has have more problems on those than the companies what upgrades every 6 months.
They have spend more money to teach users to new features and they have missed A LOT of time and money by using old version of software what does not have features what speeds up their working time and adds features what improves their workflow.
Only lazy IT-support person will suggest to stick on the long term supported version. Corporations etc lives on quartertimed world, where year is sliced to 4 periods. They usually do not plan longer than few periods and in max few years. They can not see the problems what comes on the long term usage because they just think they will save money when they skip versions and do not pay licenses etc.
We all know that corporations and users do not run just the applications what are preinstalled on system. They do not use the predefined settings what is set to applications. They customise the system and application configurations and in long time, there comes lots and lots of the things what need to be transferred seamsly between old and new release of distribution what is few release newer than current one. And things just gets broken because of that.
Software developers makes sure that newest stable is working without problems with the last stable. But they can not make sure that newest stable works well with much older stable version. There might have happend so many changes that you need to reset your configuration files, reconfigure the new version and adapt the new features and that just makes the whole stuff more complex than it could be.
"If it ain't broken, don't fix it." applies in the consumer and enterprise market very well (unless maybe when you make money by fixing)."
Do not use that wrong way! That means it when you code, you do not change the code what is working, so you can maintain the backward compatiblity.
Improving software _ain't_ fixing it. Fixing has nothing to do with the adding features.
Those like you, who use that wisdom wrong way, slows down the development and slows down the whole world because the information between users and software engineers comes very complex, the information comes too old and it ain't valid anymore. Users do not have anymore the correct and newest information what would help software engineers to develop sofware to fill needs what all the _USERS_ need.
There is the wisdom what is the point and over rules what you say. "Release early and release often".
When you update your software to every version, you get new features, bugfixes and security fixes right away. In long run, you do much less task to maintain the software and learn the new features than those who waits years.
Right now you are suggesting that most users in the world, should use old versions of application, old standards and leave out new features.
In contrary, it's like you are saying that Windows users should stay on IE6 and web-developers should make their sites for it.
The softwares gets more features, improvements and fixes and so does all the standards. And you can not get newest standard to old software if it is implented to newest version of the software. You are just in loophole where you can not work together with the world what is going on edge of the development.
Lazy people say "It is better to use this version next 3-7 years so we save lots of money and time". They just slow down the whole world and makes everything more complex what ain't needed.
Lazy people ain't wise enough to plan and design the IT-systems that upgrading is easy and takes no time.
Smart people plan everything and deploy systems so that you can just press a button and upgrade all systems without problems (or just with small unique problems what are easy to repair)..
I work for two company. In other we have over 1300 desktop computers, few hundred of those are around the world (laptops etc) and in other we have littlebit under 500 and only small amount of those are laptops what are outside of office longer than few days.
We use Linux bretty much all of them (there is few Windows XP systems because of photoshops and few other special applications) and we have mainteined now on both corporations, since 2004, all systems without big problems every 8 months. In that time, we have 2 months time to plan the upgrade of systems and wait important fixes for new releases. And almost biggest problems of all, is that we need to get computers to Internet and stay there for few hours. Both companies have saved lots of money by this way and our task is much easier because it just works.
One of my co-worker tried two times the 18 month cycle on simulated environment and it failed on both times. Too many problems all the time.
And yes... I do exactly this for my mother computer too. Every 8 months I just give few commands and after 1-2 hours the system is upgraded and her computer has worked flawlessly since 2005, not a clitch at all. Problems have be very basic stuff... Level of "How do I get added attachment to this email?", no single technical problems at all... (and no, it does not run Ubuntu!)
But, I would not recommended bleeding edge distribution (Fedora) to any normal user. Cutting edge is fine and typical distribution is just perfect, like Mandriva and OpenSUSE. Ubuntu is out of it's class, too much overhyped.
Bleeding edge vs Cutting edge
"This means that high-maintenance, bleeding-edge Linux distributions, while very useful to the selected few, are not a nice fit for 99% of the market because they change too often, require work to update them and change often spurs breakage, instability or behavioral change."
99% users can stay all times up-to-date easily, without problems and secure. ALL THE TIME!
What longer you stay on one version, more features will come to new version and the bigger and more problematic the change will come. What means more teaching, more time and at last, more money spend to new version. If user stays always on the newest version, (6-12month release cycle) there ain't big problems, only small ones. You can keep your current settings without touching them and you get new features.
Every task, can be made better. You can need features what are missing or you do not even yet notice how things could be made better.
The users, normal users are DEVELOPERS as well as all software engineers who code the software. The users (99%) are those who gain experience from the software and they notice what is done well and what is done wrong.
The software engineers should listen the users and they should develop the software to meet those needs what users wants, and more important, _what they need_.
This means that the information from users to engineers is needed to happend in daily purposes. Software engineers should get statics what are problems of the software so they can improve it, bring needed features and do what users want.
And this means that users need to have access to use the upstream version of software. So they can get the improvements and they can get the features what they need. All that makes the users life much easier than stick in years on the old version.
There is lots of problems on the old versions of applications. You can not always fix security/feature bugs on them like you can do on newer version. What older the version is, that harder it usually comes. And that means the old version and the newest version comes too different that maintaining those comes very complex, if not impossible. Longer you use old version, more you slow down your self because you do not get the secure, maintained and improved software. And more money you will spend in long run when you ain't upgrading in short periods what takes just small amount of maintenance time.
The typical transfer between 6-18 month release is not a problem at all. But switch between releases what is longer than 3-5 years, comes very complex. I have not yet seen any good transferr between Ubuntu LTS versions or Debian stable versions. All companies and projects has have more problems on those than the companies what upgrades every 6 months.
They have spend more money to teach users to new features and they have missed A LOT of time and money by using old version of software what does not have features what speeds up their working time and adds features what improves their workflow.
Only lazy IT-support person will suggest to stick on the long term supported version. Corporations etc lives on quartertimed world, where year is sliced to 4 periods. They usually do not plan longer than few periods and in max few years. They can not see the problems what comes on the long term usage because they just think they will save money when they skip versions and do not pay licenses etc.
We all know that corporations and users do not run just the applications what are preinstalled on system. They do not use the predefined settings what is set to applications. They customise the system and application configurations and in long time, there comes lots and lots of the things what need to be transferred seamsly between old and new release of distribution what is few release newer than current one. And things just gets broken because of that.
Software developers makes sure that newest stable is working without problems with the last stable. But they can not make sure that newest stable works well with much older stable version. There might have happend so many changes that you need to reset your configuration files, reconfigure the new version and adapt the new features and that just makes the whole stuff more complex than it could be.
"If it ain't broken, don't fix it." applies in the consumer and enterprise market very well (unless maybe when you make money by fixing)."
Do not use that wrong way! That means it when you code, you do not change the code what is working, so you can maintain the backward compatiblity.
Improving software _ain't_ fixing it. Fixing has nothing to do with the adding features.
Those like you, who use that wisdom wrong way, slows down the development and slows down the whole world because the information between users and software engineers comes very complex, the information comes too old and it ain't valid anymore. Users do not have anymore the correct and newest information what would help software engineers to develop sofware to fill needs what all the _USERS_ need.
There is the wisdom what is the point and over rules what you say. "Release early and release often".
When you update your software to every version, you get new features, bugfixes and security fixes right away. In long run, you do much less task to maintain the software and learn the new features than those who waits years.
Right now you are suggesting that most users in the world, should use old versions of application, old standards and leave out new features.
In contrary, it's like you are saying that Windows users should stay on IE6 and web-developers should make their sites for it.
The softwares gets more features, improvements and fixes and so does all the standards. And you can not get newest standard to old software if it is implented to newest version of the software. You are just in loophole where you can not work together with the world what is going on edge of the development.
Lazy people say "It is better to use this version next 3-7 years so we save lots of money and time". They just slow down the whole world and makes everything more complex what ain't needed.
Lazy people ain't wise enough to plan and design the IT-systems that upgrading is easy and takes no time.
Smart people plan everything and deploy systems so that you can just press a button and upgrade all systems without problems (or just with small unique problems what are easy to repair)..
I work for two company. In other we have over 1300 desktop computers, few hundred of those are around the world (laptops etc) and in other we have littlebit under 500 and only small amount of those are laptops what are outside of office longer than few days.
We use Linux bretty much all of them (there is few Windows XP systems because of photoshops and few other special applications) and we have mainteined now on both corporations, since 2004, all systems without big problems every 8 months. In that time, we have 2 months time to plan the upgrade of systems and wait important fixes for new releases. And almost biggest problems of all, is that we need to get computers to Internet and stay there for few hours. Both companies have saved lots of money by this way and our task is much easier because it just works.
One of my co-worker tried two times the 18 month cycle on simulated environment and it failed on both times. Too many problems all the time.
And yes... I do exactly this for my mother computer too. Every 8 months I just give few commands and after 1-2 hours the system is upgraded and her computer has worked flawlessly since 2005, not a clitch at all. Problems have be very basic stuff... Level of "How do I get added attachment to this email?", no single technical problems at all... (and no, it does not run Ubuntu!)
But, I would not recommended bleeding edge distribution (Fedora) to any normal user. Cutting edge is fine and typical distribution is just perfect, like Mandriva and OpenSUSE. Ubuntu is out of it's class, too much overhyped.