CIOs Band Together Against Paying For Software Bugs
gmerideth writes: "This article over at cio.com interviews several CIO's who are sick and tired of spending billions every year on software upgrades simply because the creater tells them to upgrade as they wont support previous versions or they get stuck into lengthy, costly licenses. Quoted from the article "Other companies, such as Ameritrade Holding, are opting for open-source technologies such as the GNU and Linux operating systems, the Apache Web server and Sendmail e-mail.". It's glad to see the open source movement doing it's job."
I think that now they are tied into this "upgrading" so much that they are going to find it difficult to move away from it...
M$ being one of the primary instigators of this...
i.e. the older (M$app) x.x does not work with new (M$app) y.y.
Perhaps this is a chance for open source to shine.. upgrades are... FREE.
Sounds like the software companies are sounding more and more like the electronics and automotive industry.
In the automotive industry, people are encouraged to dispose of their perfectly good cars due to new features on new models and increasing prices of replacement parts... although their car is perfectly fine.
I remember hearing something about GM phasing out model years on cars... but haven't heard anything since, they must have come to their senses.
Or how about when the knob breaks on your stereo and it costs as much to replace the knob as the stereo.
Consumer backlash? People still buy new cars and new stereos...
Fortunately, there are a host of alternative solutions on the horizon, and a growing number of CIOs are determined to make them a reality. They include renewable licensing agreements, in which CIOs purchase the right to use software for two to three years at about 85 percent of the cost of what they'd pay under a perpetual license. CIOs then have the option to renew the license at the end of the term if they're happy with the quality of the product and the support. Subscription licensing agreements are similar to renewable licenses, except the term is shorter, lasting about a year, and CIOs rent the software, as opposed to owning it.
Aren't they just playing into the hands of vendors who want to increase ongoing revenue for product they used to just sell once? I don't get it.
sulli
RTFJ.
Hmmm, I guess the author never heard of the 100s of vendors selling OSS solutions? Maybe this is the "content" that PHBs read and get their weird ideas from.
sulli
RTFJ.
The money that can be saved is not only in upgrades, but virus prevention as well.
The company I worked for wasted thousands of dollars when the Nimda virus struck. To a small business, this cost plus a day's worth of downtime can be a significant hit.
If we used the open-source alternative, we might have saved this money.
That could paragraph could describe the shoddy commercial software, but it could just as easily be describing Mozilla, KDE (or GNOME, to be fair), Emacs, TeX, or the RedHat Linux distro. Open source, by itself, can't solve shoddy software engineering practices.
This problem discussed in the article is better solved by the type of licensing model Microsoft plans to adopt: subscription software. That way, you always have the latest, least buggy version of the software you use without having to shell out for a new copy, and the corporation that writes the software is motivated to eliminate bugs, rather than leave them in so they can sell you the new version. This way, you have all the advantages of open source, yet you can take comfort in the fact that your software is written by professionals.
Slashdot: Open Source, Closed Minds.
Microsoft's changing of its licensing practices has clearly pointed to a flaw in the software sales model -- in small doses, companies will put up with it because it's easier to maintain status quo than to radically change. However, companies are now looking at a tripled technology budget -- and they're looking seriously at how things are working.
They've figured out that some of it sucks.
The problem with the current software sales model is that it is impossible to tell the companies that will support and stand behind their product from those that will rake you over the coals. When companies have the ability to change their licensing agreements overnight, the consumer has no ability to chose the good from the bad.
The good thing from this: people might REALLY take open source seriously.
The bad thing: I think a lot of well-run, fair and supportive software companies are going to suffer because of the greed of the others.
While it is true Linux and other open source software will be successful as long as one person somewhere finds it useful, it is nice to finally see corporate acceptance of this software.
What does corporate acceptance mean? It means we have become cheaper to set up and maintain than the other options for the corporate world, those being Windows and MacOS.
Linux still has its original stability and low price tag, and there are now several versions of all the software that corporate customers formerly had to develop for.
Macintosh lost out to Windows in the corporate marketplace for the same reason so many companies are switching over to Linux now. Installing Windows on a pre-existing IBM DOS box is a lot cheaper, and there were more applications. We now have the same applications, possibly fewer in number, but lower in price, so companies are turning their head toward the other option.
Companies are predictable buggers. If you give them a cheaper option with the features they're looking for, they will jump on it. Every time. Linux developers only need to ask what those features are and include them in the core OS or surrounding software, and we'll enjoy even greater corporate acceptance.
"Look at me, I invented the stove!" -- Ben Franklin
Tech companies are EXPECTED to grow their business/revenues by 20-30% every year. That is feasable when you're starting out in a new market area, but is impossible in a mature market. The only way you can fake it is to gouge/cheat/lie/steal from your customers, and make them pay more every way you can.
This is good for the OSS community however. The more Oracle/Microsoft/etc squeeze to inflate their bottom line, the more people abandon ship and switch to OSS. The more people using OSS, the more people contribute to it. Knowledge is most useful when shared. As the history os science shows, the more you share information, the better we all become.
http://kered.org
The glut of "programmers" on the market is leading some CIOs to think they can undo a generation of unprofessionalism in software -- but the materials with which they are working are now so incompetent they will have to go through another round of noise before they start to grasp reality. It could be a long time for these guys to wake up to reality... too long.
Seastead this.
You can fix it yourself.
Not on a project of any significant size, you can't. Sure, for something simple like Apache, you might be able to do it, but just try to get anyone but a superstar engineer up to speed for major fixes on something like gcc, Mozilla, the Linux kernel, or OpenOffice in less than a few weeks per project. Depending on where you live, a week of programmer time might be between $1000 and $3000+ burdened cost. Most contributors to projects of this size have made a lifestyle decision -- it's not a job for paid mercenaries.
Tim
Case in point: a user of ours was having difficulties saving extremely large PowerPoint presentations. We tried everything we could to get Office 2000 to corporate (including numerous MS Knowledge Base-suggested fixes). The end result: the only way we were going to fix it was to "upgrade" to Office XP.
Was there another solution? Sure. We could have kept the hacked registry keys and crossed our fingers. The user would have never known the difference. The problem here, though, is what is a "bug" and what's an honest-to-goodness limitation of the current version of the software.
Another point on that note: many of the limitations set aside by developers (in the number of pages a document can have in memory, the number of rows a spreadsheet can include) are forecasted not by them but the limitations of the current technology. Sure, if MS used a less pretty office assistant they can save a few megs for that spreadsheet. But the bottom line is, at the time, developers of older versions of software did not, or simply were not able to, think ahead.
Which leads once again to my question: what's a bug and what's a limitation? That will determine whether people will pay for an upgrade.
I don't think this is going to stop companies from releasing software that has bugs in it.
:)
I do believe that market rejection could place tremendous pressure on software vendors to put more effort into bug-testing their product thoroughly before it is used by the client. But bug-testing is a time and resource consuming affair. No software company, no matter how big and fat with cash can throw enough money at a product to make sure that every possible scenario is covered. It is only a matter of time before a bug (perhaps even a significant, critical one) is found.
But still, I appluad the efforts of anyone who is willing to tell their software vendor(s) to try harder to get it right. I sincerely hope this strategy will convince the software vendors that purposefully release broken products to stop assuming we'll upgrade when you release the "professional-special-app-of-the-year-gold-box" edition of the software just because this version fixes that nasty, data-ruining bug in the last version.
I think it's worth noting, though, that only one thing can truly lead to the elimination (or near-elimination) of software bugs: developing for a limited number of platforms/OSes. The more OS/hardware possibilities you bring into the picture, the more bugs you'll have. Guaranteed.
Of course, similar arguments could (and should) be a applied to the PC games industry, but that's another debate.
My sigs always suck.
I think that their are several places here where the licensing needs to change to please businesses. First and foremost, companies should not get rid of perpetual licenses if they server home users. These users are used to being able to buy something (car, radio, computer, microwave, etc) and own it for life. That being said, I think that IT managers would like to be able to lease software again like they could in the mainframe days. Instead of paying a lump sum and then paying a maintenance fee, they will be much happier if they can play money games with their budget so that the costs are stretched across the life of the product and in fact reflect themselves in the operational costs.
The other scheme I would like to see return is the purchase of business logic software WITH the source. Back in the days of mainframes, if you needed accounts payable, accounts receivable, order tracking, etc., you would buy a package of software that would come with all the source code so that you could change the logic to fit your business. This was actually a requirement then because the DB access code was compiled into the program resulting in binaries that were tied to the schema. However, the side effect it produced of giving the source with the product was extremely successful due to the fact that no two businesses are alike. Just because Kraft does their paperwork this way, doesn't mean that GM does theirs the same. Plus, Kraft has to worry about delivery schedules via networked partners such as Sysco whereas GM ships directly to dealerships.
As much as people may hate to hear this, the mainframe guys had it right and business today should start taking notice of that.
Javascript + Nintendo DSi = DSiCade
It's American as apple pie. So is that other American institution -- Suing the B*stards.
What would Rain-in-the-Face do?
I have a real problem with vendors discontinuing support on a 2 year old version of code. Back end systems can live for years doing pretty simple tasks, there is no real reason to upgrade.
Most of my databases are Oracle, and I have to put up with "My shit doesnt stick" attitude. Cant handle some file systems, cant do simple export and imports without hours of of an outage.
Our DBA's spend more time working on upgrading oracle on all our production boxes then fixing bugs. The Oracle statement, upgrading fixes the bugs.
I don't wish to excuse any vendor for delivering crapware. Bad vendors should go out of business.
That's the problem.
If CIOs would cover their damned butts they wouldn't get into these binds.
It's good to hold Oracle's feet to the fire. It's good to make them sweat and to make them deliver.
But...
Why aren't these CIOs demanding reasonable back-out strategies?
Twenty years ago, when I worked for EDS, clients routinely demanded that we use particular technologies so that they could kick us out if they didn't like us.
At another employer, the only patents I've ever had my name on (inventor, not owner. No money for me) came because we didn't want to be locked into AT&T as a long-distance provider. They had a special feature we wanted called Network ACD, but it was patented and no one else could offer it. We spent the time and money to invent our own system and stay free to negotiate with whomever we pleased.
I'm amazed by these people who are talking up subscription software. Nothing wrong with the concept, really -- if you've got a way out. Then it's like a lease-or-buy decision for anything else.
With a lock-in? Come on. Surely they've noticed that Microsoft is moving in that direction without any prodding from the outside. That should tell 'em everything they need to know.
Botton line:
Oracle or nothing, Office or nothing, anything or nothing will leave you screwed.
This article really brought home why Microsoft might be able to succeed with .Net and application subscriptions; vendors will now know that if their software sucks, customers are on a multiyear subscription paid for periodically, and could simply refuse to keep paying if the software sucks.
.Net really need UCITA to work in Microsoft's favor? Hmm....
Personally, I like that idea. Imagine thousands of Outlook users suddenly having credit card companies deny payment to Microsoft because of nasty bugs in Office. Of course, once UCITA takes affect doing so would be illegal. Come to think of it, does
And then it dawned on Seyk why the software and support were so bad: That's the way vendors make money. They push products on the market before they've been adequately tested, demand payment up front and then are often not available to deal with the sequelae of poorly performing products. [...] now many CIOs are beginning to realize that the root of the problem may lie in the economics of the industry. Vendors generate most of their revenues through perpetual licensing agreements, which force CIOs to pay up front for an application. In return, CIOs own the software and the right to use it "in perpetuity." The problem with this model is that in reality, CIOs are lucky if they can get three years out of a product before vendors release entirely new versions of their software.
people here have been bitching about this for ages. Finally these guys are waking up.
I wonder if they could get a lawsuit or something for fraud.
Or maybe, since the licenses are in perpetuity, tech support forever (the length of the License), or for a sight longer than 3 years.
Let's face it, I would not expect Lotus to support me on Visicalc. But I would want Microsoft to stop selling Updates marketed as new versions, when the gui modification is probably the sdmallest part of the code.
heck, cars have 7 years/70,000 miles, and more.
"It is a greater offense to steal men's labor, than their clothes"
Not only that, but if those developers have a conscience, they could release their enhancements back to the OSS community.
John
John
I know of one software company that is being sued for shoving a non-working (or barely working) product out the door. If this starts happening more, software companies may do some testing before shipping a product. Or free upgrades for people who run into their bugs.
I really object to companies that charge you support fees to call in so that you can report their bugs.
Fight Spammers!
We're at a point where Linux and Open Source can do most of the corporate tasks that Windows can do, and Linux can only get better. There is no single company to take Linux down so an investment in Linux is secure and can only grow and get better with time. If Linux and Open Source software does what you want it to do now, it will continue to do it in the future and grow to do it better.
Outdoor digital photography, mostly in New Engl
I'm not impressed that the CIO's in the article are using Open Source Software as a lever against the CSS companies.
Isn't that a little like making a date for the prom with the ugly girl, knowing full well that once you've made the cheerleader jealous, she'll go with you after all? Nobody cares about the ugly girl, she's just being used. And she'll be dumped in the end.
Seems to me this is the wrong reason to be considering open source. The CIO's want a brand name (cheerleader) and if they have to date OSS to get her, they will. But where does that leave OSS in the end?
I think it's great that companies embrace OS projects and software, but at the same time, they should be careful in which apps they are running. For example, you'd be better off if you didn't run wuFTP in favor of something more secure such as NcFTP (okay, it's not free or GPL, but still...) or PureFTP.
Does anyone know of a site which can make recommendations for one type of server app over another based on security, specifically to replace those types of server apps that have been shipped with so many distros for way too long? There are so many things that people really shouldn't run anymore, like wuftp, sendmail, inetd, and so on.
I only post comments when someone on the internet is wrong.
Piracy: "One in every three pieces of software used by businesses worldwide in 1999 was illegal, costing software makers $12.2 billion for the year"
Bugs: "Faulty software costs businesses $78 billion per year"
hmmm... so pirates have $66 Billion to catch up?
Not true at all. A big (BIG) company can afford to keep a staff of those developers for less than the licensing cost (perpetual or short term.)
There is some break-even point there, to be sure, but as you note, it's only at a very large company size (and this is just for bug fixing, not other TCO factors like support and usability). My observation is true for most companies, all but the very largest.
Another exceptional case is when a smaller company primarily relies on only a single open source product of significant size, in which case it may be feasible to keep someone around to work specifically on that product. But in the imaginary OSS-dominated world, this would be the case for no one -- all companies would be dependent on multiple large OSS products.
Tim
Let's not forget that while it seems that way, the corporate world is not a big homogenous mess. Why should GM or Bank of America care whether or not they help with a common... compiler or web server?
Unfortunately, many non-computer companies think that their computer projects are part of their core competencies.
So, what am I saying: there should be lots of companies willing to spend a few bucks for the OSS effort. But as long as the corporate managers do not understand their own business, it could be tough.
Jesus was all right but his disciples were thick and ordinary. -John Lennon
I know this is a great way to get flamed in the midst of a group of developers and programmers, but here goes: Why does software have to be buggy?
I have been writing software for years, and I can't understand this kind of "oh well, all software has bugs" mentality that exists in most of the places I have worked. When I write software, it *doesn't* have bugs. Sure, even a cautious design phase and well-documented specs won't help when you accidentally type "crsh++" instead of "cash++", but other than typographical errors (which can be easily found and fixed), there should be no *logical* bugs.
Personally, I begin to wonder how much of the bug issues these days are either because of sheer human laziness ("I don't need to check the limits on this array, no one will *ever* type in a 257 character string here") or because of intentionally releasing a flawed product ("Quick, slap an installer on version 0.0001733Alpha so we can sell it to Dell!"). Either way, as a programmer, I think it is a terrible thing...
If you are a programmer, and are reading this right now, take a few minutes after every block of code, go grab a cup of coffee, look out the window, read slashdot, something to take your mind off what you just wrote, and then come back to it, go through it line by line, make sure your code is doing what you think it is. Make sure there are no buffers to be overflowed and no shorts where there should be longs. Take pride in your work! Don't be a dime-paperback hack romance novelist! Be a Hemmingway, a Gibson, an Orwell, or whoever you think is a brilliant writer, be Tolkien! Give your programming work the same respect that you would reserve for those people you respect.
If programmers as a whole stopped thinking along the "bugs are inevitable" line and started taking a fresh approach, one where they think perfect, bug-free code is possible, then the software industry as a whole would become a much cleaner place.
No More Code Monkies!
"Your superior intellect is no match for our puny weapons!"
Lets look at this in perspective?
Aside from paying M$ for licenses, is Linux in 2001 any easier to maintain?
If I installed 100 workstations in 2000 (all up to date software/patches/etc.) how easy would it be to maintain them. What if I wanted to install the latest version of Open Office? Would I need to upgrade KDE/Gnome, libraries, the kernel, etc?How easy would it be?
My experience is we spend most of our money on people to support the infrastructure, and things like licenses are small in the great scheme of things? Would I spend any less time maintaining and upgrading my Linux boxes?
With free/open software you need to hire people
who know what they are doing. That has several
disadvantages:
1. Harder to retain => more pay, less leverage.
2. Who wants employees who are notably smarter
than their boss?
I think the latter one is the real reason OSS/FS
has a tough road ahead in corporate environment.
OSS/FS is built on meritocracy while corporations
are usually based on seniority. Can you spell
clash of cultures?
The argument of CIO is that cios will have more leverage over software companies with a subscription based payment model. Buggy software? Ok, cancel the subscription and go elsewhere.
The flaw here is that products like Oracle 11i (cited in the article) usual require a large amount of custom development work and intergration. It is also tightly coupled to Oracle's database. Since these products don't follow any standards (either they don't exist, or they are deliberately ignored to lock the customer), all that investment is lost by switching to a competitor.
All the software vendors have to do is to ensure the cost of switching to another product is higher than the subscription + the cost of living with the shortcomings of the product.
It is called proprietary lock-in, and it can take many forms -- business information in MS Word Documents throughout the enterprise, Oracle ERP that requires Oracle DB and custom development, and many many more.
Having to upgrade is an awful, awful thing in many cases, I agree. But I don't think it can be fully pinned on Microsoft. Last year I upgraded my home machine from Windows 95 to Windows ME (which is really just Windows 98 + some extra junk that you can turn off). Then I found that my video card didn't have drivers that worked with Windows ME, so I had to buy a new video card. Who was to blame in this case? Not Microsoft.
The same sort of problem can easily happen with Windows and Linux. What if KDE 3.0 requires a 1GHz processor and 3D graphics card? What if the Star Office developers decide to change the file format and ignore backward compatibility, maybe because they are behind schedule and they can't find many programmers interested in helping out?
As I see it, the main problem with software quality control is that companies have to get product out by a certain deadline so that they can charge customers enough to stay in business. Remember, 99.9% of software houses are not raking in cash. Most make enough to stay in business, but there aren't a lot of Microsofts or Oracles out there.
If you are going to release bug free products, then you'll simply need to spend perhaps twice as much time, which means half us many new releases.
In other words, you've got to double the price.
Now, just how many CIO's aren't going to seriously consider switching vendors when a software house says they're doubling the price in order to get better quality control...
At least with subscription, the software house no longer has the desperate need to push a product out whether its ready or not.
many of the limitations set aside by developers (in the number of pages a document can have in memory, the number of rows a spreadsheet can include) are forecasted not by them but the limitations of the current technology
Yes, but that wasn't the case in your example. Unless you're somehow suggesting that the size of your partition or network share is technologically limited to be smaller than your RAM. If that's the case, you seriously need to look for another career.
Which leads once again to my question: what's a bug and what's a limitation?
That's an easy one to answer, at least in your example.
With the exception of unregistered cripple-ware, if the software allowed you to create the file, it's definitely a bug if it won't let you save it.
Other companies, such as Ameritrade Holding, are opting for open-source technologies such as the GNU and Linux operating systems...
Um... which operating systems? How much you wanna bet they just use Linux, and some poor reporter was mislead by the GNU/Linux nomenclature? "Among other OSs, we use GNU/Linux..." "What's that? GNU and Linux? Got it!"
Hehehehe.
You put the question the right way: There should be no buggy software.
Buggy software is not the same thing as software that has bugs. Buggy software is software that reaches such a level of poor quality or irrational design that you identify it more by what it screws up than what it does. You may be able to get a lot done, but only because you've memorized a catalog of work-arounds and "don't do thats."
Any ambitious software will have bugs because people are not perfect, but buggy software exists because people don't give a damn.
They're quoting *Sendmail* as an example of well-written, bugfree code? Perhaps they count remote root holes as "remote server management" features?
Now if they said qmail on the other hand...
Tarsnap: Online backups for the truly paranoid
While there is no shortage of shrill people claiming that open source is a software panacea, as a professional software engineer, I do not want to see it completely supplant commercial applications. I make my living developing software as do many of my friends. I don't want a world where I have to flip burgers or sell insurance during the day so that I can write, and give away, software at night.
I am not opposed to open source software. I use it as well as using commercial apps. When a vendor charges a fair price for a quality application, I have no problem with paying for it or recommending it to my clients. When open source is the best software for the job, I'm all in favor of using that. But I think it is morally reprehensible for a professional software engineer to go out of his/her way to avoid purchasing commercial software. If you earn your living by developing software, you should not deny your fellow software engineers payment for their efforts.
Open source software can be a valuable tool to keep commercial prices from spiralling out of control while quality takes a nose dive. I just hope that the commercial vendors wake up in time to keep open source from being the only choice.
From the article:
"So it's in the manufacturer's best interest, at least financially, to make products that need maintenance and that have to be continually improved with successive updates, patches and versions that CIOs pay for up front. In sum, bad software works for the vendors."
' "If software makers see they are losing money to people going the open-source route, then they will change. Until then, it will be business as usual despite appearances." '
This problem is MUCH worse than they are saying.
Microsoft Word, for example, after all these years, still does not have a way to adjust letter spacing on screen. This is required to make headlines look good.
In my opinion, Microsoft Word is quirky and buggy. The fundamental problem may be that the top management of Microsoft doesn't care about Microsoft employees any more than they care for their customers. A lot of the work that comes from Microsoft is sloppy and uncaring.
Open source software solves this problem. You may not get everything you want, but you will be involving yourself with people who CARE. To me that seems to be a good recipe for a happy life: Involve yourself with people who care.
When I use software, I often have some contact with the people who produced it, because I need upgrades or explanations. For me, one of the beautiful things about open source software is that I like the people.
U.S. government corruption: What should be the Response to Violence?
Bush's education improvements were
I have worked with Microsoft software for years. Every time there is a bug, I hear the same chant that it will be fixed "next version". Sometimes it is, but most times it is not. (And a bunch of new ones creep in in the mean time.)
A subscription model does not address one of the bigger problems that Microsoft (and many other companies) have.
These companies take orders from the Marketing department.
Instead of making stable products that work, you have programs that contain stacks and stacks of bullet items and features demanded by the Marketing department. (No matter how nasty it makes things for the programmers or the users.)
And these features rarely get removed.
The advantage with Open Source is that they are not stuck to "getting it out before Comdex or Christmas". The bugs get fixed. (For the most part. The reason Mozilla has so many problems is that it has a HUGE codebase. I am amazed that they can get a grasp on the project itself.) The drive for why a program gets written is different. Open Source programs are written to fill a use. (It may not be your use, but the programmer most likely needed it.) It is functionality driven, not buzzword driven.
Unfortunatly, most CIOs that I have met do not understand what it takes to implement their "solutions". They are not able to figure out that if you are locked in to a single vendor, with no options or abilities to "fix it yourself", if needs be, that the costs to productivity can be enormous.
It bothers me when a decision is made to go with a vendor and then you wind-up figuring out the true cost of what it will take to make it work. (Having to buy an extra license for this, and a license for that, and the extra BDC and PDC licenses, and the extra Exchange box so we can restore the mail spools that get corrupted every so often, and so on and so forth.) You start feeling like you have to keep forking out money just to keep your head above water.
And subscriptions will not make it any better. Instead, if you refuse to pay, then they can just shut you off. (Extortion-ware?) There is no incentive to fix anything. They have you locked in. The only advantage is for the company selling the software. They have a constant revenue stream. They no longer have to worry about "the next big version" to make their revenue for the year. They have a constant stream. There is no incentive to build a better product because you get the money whether or not there is anything new or useful.
And the beauty of the whole thing is that the customer does not own anything. With the current licenses, the company is absolved from any liablility whatsoever.
The customer is just there to pay and pay and pay.
This is the most lop-sided deal I have seen yet. (If UCITA ever gets enacted, you will have even less rights.) And there will be next to nothing you will be able to do about it. (Except for Open Source.)
"When you have them by the software, they're hearts and minds will follow." - B. Gates
"Trademarks are the heraldry of the new feudalism."
This problem discussed in the article is better solved by the type of licensing model Microsoft plans to adopt: subscription software ... This way, you have all the advantages of open source
Umm, no I don't.
I don't have the advantage of actually having the source.
With open source, I can fix any bugs, without having to wait for the official fix (an advantage).
With open source, I can learn from the source code.
With open source, I can adapt the source for my own needs - like adding a feature I want that the vendor doesn't feel is necessary/important.
Software subscription gives you ONE of the advantages of open source, but there's no way it gives you ALL of the advantages.
Paying for 'upgrades' to fix bugs.. yes, it's bad.
In the case of really big, expensive software, this is something that should be explicitly dealt with in contract.
It's when you get to stuff like, well, everything from Microsoft that you get the real problems.
Look at this nonsense with XP.
I predict XP is going to chase a LOT of shops towards linux.
In a subscription model, there is less motivation to fix bugs. In a license purchase model, bug fixes motivate sales. In a subscription model, 'sales' are preordained. Whether there are bug fixes or not, companies must continue to pay the licensor.
Jesus was all right but his disciples were thick and ordinary. -John Lennon
The comments typically go "the software is an insignificant cost of a project, especially switching. The retraining costs are higher."
If this is true (and it depends on the situation), then the cost 'savings' of a subscription model don't factor in.
Jesus was all right but his disciples were thick and ordinary. -John Lennon
Successful Open Source solutions, I think, are general computing applications where the volunteer developers understand the standard requirements of the system in question. Namely, Open Source OS, databases, web servers, email servers, are successful because the developers can all agree on the critical features. They also would tend to agree on what "good solutions" to say, web server functionality, would constitute.
The examples of Lawson and Oracle 11i in question are so called "enterprise applications" or general business applications. Specifically, they discuss Financials & Accounting applications. Let's be clear here, this is not QuickBooks or MS Money level stuff. These are systems designed for "keeping the books" and billing and payments for multi-nationals, conforming to accounting regulations in the EU, Asia, US/North America, and the rest of the world.
My question is, how realistic is it to expect an Open Source solution for a global multinational financial app? Can I really expect the CPAs, international tax experts, the controllers and accountants (who normally make up part of the design team of these financial apps) to join in on the OSS design effort?
What about the other types of "enterprise apps," the manufacturing and resource planning software? The kind of software that, for example, Ford or GM might use to coordinate the sourcing and timing of components from Mexico/Thailand/Detroit? Vendors like SAP (and also Oracle 11i) include these components, designed by programmers, manufacturing shop floor professionals, and "industry expertise." It would be great if someone could prove me wrong, but I doubt Open Source is a viable option in these situations.
It's all a matter of design standards and requirements. Open Source developers know these backwards and forwards for operating systems, web servers, databases, and other general computing tools. When it comes to specialized business apps though, it gets real tricky. The OSS/FS options in these cases are simply not there.
Benbox
I work for a software company and I can tell you that the implication that we might put out shoddy products in order to be able to charge for support is simply not true. We would love to be able to reduce our tech support costs and ultimately have no techinians needed. Of course that will never happen, but for us, tech support is a neccasarry evil, not a big cash cow.
Also, the majority of our tech calls are simply because the user is not able to, or refuses to follow the simple directions we make availabe with our software. Those people should pay and pay handsomly for support. Yes, the software industry is full of many rogue companies, but it's not like there is some giant conspiracy in place. And, the users should be held responsible too. If people would stop supporting companies who make crap software and overcharge for it, well then, the problem would take care of itself. Just my opinion of course.
Does anybody really believe they can work with a product for a two or three years, decide it's not working out and buy something different and somehow still save money? The cost associated with moving to new office suite alone can be huge (in a good sized company) not to mention what it would cost to move entire financial, ERP or email systems.
If they need bug free, no problem! Any decent team of software engineers can create rock solid, bug free code. We simply adopt the same design and manufacturing standards that a company like Boeing has. Sure, it may take years for a word processor to be developed and it'll cost about $250,000 dollars but it will only crash your system about as often as a 747 crashes too. Everyone's happy right?
Wrong! These CIO's say they want bug free but what they aren't saying is they don't want the price to go up at the same time. The extensive testing, debugging, improved up front design work, etc will cost a lot of money and increase the time it takes to get an application out the door as well as it's price tag. Who's going to pay $1000's of dollars for something that's rock solid when they can get it for $100 even though it crashes once a day or has some extra configuration issues that have to be resolved?
There'll be a few that will but if Microsoft has proven anything it that good enough IS good enough. That's how they got their monopoly, by getting the same CIO's to look only at the bottom line and pay modest fee for crappy software.
These guys know it's not good but try convincing the bean counters to spend $1000 for something they can get for $100. Business types can rarely accept the loss of productivity cost associated with the occasional reboot or restart of an application.
Vintage computer games and RPG books available. Email me if you're interested.
For instance, I was part of a team that recently implemented a WMS (Warehouse Management System), and as part of the Statement of Work upon which payment to the vendor was based, we used the results of a scripted demo as our requirement for successful implementation. When we visited the vendor's offices for a demonstration of their product, we had a very specific list of about 300 different function points that we wanted to see - and every one that was successfully demonstrated was required to be up and running in production before final payment was due to the vendor - thus their incentive to deliver as promised. These kind of protections need to be negotiated BEFORE work gets started and contracts are signed, however - simply withholding payment after the fact won't cut it...
Stop by my site where I write about ERP systems & more
I don't care if you are the best programmer on the Earth and every program you write has a formal proof of correctness, you will still get bitten by incomplete and/or incorrect requirements.
There is one reason software has as many bugs as it does: time. Money can only help reduce the amount of time to a certain point, beyond that it takes competent software developers a certain period of time to design and deliver quality work.
CIOs want the latest features now and to spend as little as possible. If a CIO would apply the same philosophy to buying a car he would be driving a moped and complaining it doesn't have power steering.
If they want fewer bugs they must be willing to have patience while the software is created. It doesn't matter if it's Open Source, prioprietary or even Microsoft, you will receive what you're willing to wait for.
I had a friend who used to say that one problem for software developers is that, unlike hardware, the "white wires" where software has been patched don't show. Continuing his analogy, no company would ship a circuit board that had a dozen cut traces, two dozen white wires, ICs with half the pins cut off and three daughter cards soldered on in odd places. Software with the equivalent level of kruft ships all the time.
That's not entirely true. One big consideration in all this is that to provide support for the older products, they must retain programmers who know those older products. They must pay these people to sit around and wait for a support request to come in. If the volume of incoming calls is low, how do you justify hanging on to these people?
You find them something else to do. Probably, since they are intimately familiar with the product, you assign them to working on the new version. When support requests start coming in for the new version, who are you going to turn to? The people who worked on it.
So, now you have these people supporting both the new and old versions. As call volume increases for the new version, which has priority, the old or the new?
At some point, these people are going to lose skills in the old version because of spending so much time with the new version. At some point, you are going to have to decide to drop support of the old version unless someone is willing to pay an exorbitant fee so you can justify retaining and/or training people to provide support for the old version.
This is true for both usage and bug/defect support.
This is where Open Source really makes a difference. How often does a company release the source code to their software, even after they have decided it's no longer commercially feasible to continue providing support for it? With Open Source software, if you can't find someone to support the software, you can hire and train someone to do it for your company. You have the source code available; you can fix it yourself.
One way or another, you're paying for the support. The difference is who has access to the source, and if they decide whether it is worth their time to support it.
Edward Burr
Having a smoking section in a restaurant is like having a peeing section in a swimming pool.
'Cause they don't want GM using the software they helped pay for...
Nicotine free Amish .sig.
K-locs are a VERY poor way of measuring the quality of code. The company that I did some work for this last year had over 50 MEG of code (I have no ide how many lines of code that equals out to), but it was a shoddy, buggy, ugly glom of crapola... With some very intelligent design I was able to recreate the exact same functionality of this monstrosity is around 15k lines, minus the bugs, the inefficency, and the generally poor quality programming.
Enterprise applications do not have to be huge, they do not have to be lumbering, bloated slugs. They can be just as tight and quick as your tiny programs if done correctly.
"Your superior intellect is no match for our puny weapons!"
Bug free software exists: http://www.fastcompany.com/online/06/writestuff.ht ml
Unfortunately, most companies are unwilling to allow the development staff the time required to develop in this manner. The Halting Problem is NP-Complete (it's been a while since I took CS), which sets the bar pretty high for any reasonably complex software. Not to say it can't be done, just saying that it is prohibitively expensive in most cases.
As for why buggy software exists, see _The Rise of Worse is Better_:
http://www.jwz.org/doc/worse-is-better.html
Regards,
Slak
but other than typographical errors
(which can be easily found and fixed), there should be no *logical* bugs.
How 'bout this piece of java:
int clash;
...
public void setClash( int c1ash ){
this.clash=clash;
}
Will compile just fine, but will never be discovered unless you have good unit tests.
-- Another senseless waste of fine bytes.
The article has a section titled "Withholding Payment: The Brute Force Option". Well, that would really do miracles for solving many QA-related problems. I know. Been there, done that.
Scene: The year is 1992. A computer manufacturer has sold a big mainframe to a local bank. There is a glitch somewhere in the interface between a network driver and a particular model of ATM machine. Nobody cares except of course the bank. No resource is available nowhere to debug the problem. Nobody want to pay for it.
So the bank's boss holds a meeting and tells the computer manufacturer that he will suspend payments on the mainframe until said mainframe could talk to the ATM as promised. The cost of the mainframe: a few millions. The look on the sales guys: Priceless. :-)
It took only a few calls ("he suspended WHAT???") to suddenly find the required resources. Mysteriously, money appeared to send people (me!) and debug the problem. Of course, the manufacturer could have sued the customer, but I am not sure it would have been a smart move. Satisfied customers are nice to have, ya know.
That's why I really think this article is an excellent thing. A Revolt of the CEOs is the only thing that can prevent (some) software to be delivered with swarms of bugs on purpose. It's one more step toward making software a science instead of a black art.
And if this revolt could tip the balance towards open source, so much the better.
Here is a slightly more elegant proposal: Network providers have a garanteed uptime. If your leased line or fiber drops below a certain minimum uptime, the provider starts refunding you. That's a standard clause.
How about suggesting such clauses to CEOs for their critical systems?
This is what I hope we will finally start hearing: "We replaced Sendmail with Exchange. Since then, I barely get any email and MS is paying us." Hmmm.
--
Mad science! Robots! Underwear! Cute girls! Full comic online! http://www.girlgeniusonline.com/
You're certainly right that managing big software projects is hard. But the original poster is also right that there is a very lazy attitude in the business. I blame the job market, where there has been such a shortage of engineers that anyone who has seen a computer on a postcard has been able to get a job as a developer, do shoddy work, and not only keep his job but get raises and management responsibility.
I hope the current slump in the industry will weed out most of the bums. I'll gladly take a pay cut if I get to work with serious professionals who care about doing good work.
Street cred: 15 years of professional programming. I produce about 1 bug a year, and I don't think I'm any super genius. I just try hard.
It's glad to see the open source movement doing it's job.
;)
It's glad to see? uh-huh. Me got more gooder grammer than you!
You'll have to pardon my ignorance, but I wasn't aware that the primary purpose of OSS software was to be used as a tool in fighting whatever software giant you're pissed off at this week who has built their company based on several hundred year old capitalist traditions.
If this is the case, then OSS is truly not any better than "they" are.
I was under the impression that is was done not as a tool to fight back, but as a way of sharing and growth through collective encouragement and communal effort towards a better solution. That's a much more noble cause if you ask me.
Too many people fall into that trap of fighting for all the wrong reasons, especially when that fighting is only in the form of words and stress that builds up instead of simply quietly and calmly passing on the word and voting with your wallet instead. I'm not saying that everyone does this, not by any stretch, but I see far too many people that turn their personal choice into a religion and crusade to make sure that the competetors die off.
If God gave us curiosity
Microsoft Word does not have a method of adjusting the spacing between letters while you are looking at the letters on the screen.
Adjusting the letter spacing is called kerning. Kerning is necessary when the letter pair "Aw" is used in a large size, for example. If the spacing between these two is not adjusted, there will be too much white space.
Some font styles have kerning built in, but these internal tables are never perfect in all cases. Some font styles used for large headlines have no built-in kerning.
Good software for producing professional-looking pages has had on-screen kerning for a long, long time. Adobe PageMaker has had it since it was owned by Aldus. Ventura Publisher has had on-screen kerning since before it was owned by Xerox, when was owned by Ventura Publishing, and ran under the DOS operating system. Framemaker has on-screen kerning. Quark Express has it.
Without good kerning it is impossible to produce a professional-looking advertising page, for example.
People who care about the graphical look of their type must choose some other software than Microsoft Word, which is too crude in the way it adjusts letter spacing.
Most people don't use big headlines and most people don't notice when the letter spacing is poor. However, for professionals, true on-screen kerning is considered a basic feature.
This is only one feature that is poorly implemented in Microsoft Word. There are many, many more. Microsoft Word does not handle the headings on tables well, for example.
Mostly, though, Microsoft Word is quirky and buggy, in my opinion. It seems to be an example of managing software development so that there is always a reason to upgrade. That means that Microsoft is deliberately choosing to be your enemy.
Oil company executive testifying to U.S. congress in 1998: "CentGas cannot begin construction until an internationally recognized Afghanistan government is in place." For a link to this and other documents, do a search for the word "Taliban" in: What should be the Response to Violence?
Bush's education improvements were
Yes, but the problem is that you don't always know how formal your document will be when you start to write it. It is better to use software that already has everything you might need.
The point is that even DOS software had this feature many years ago. MS Word has a very poor implementation of it. Microsoft knows this is important, but they have not upgraded their implementation.
Do you really want to buy and learn two software packages, one for everyday documents and one for formal documents? No, you want a software provider who gives you what you need.
Bush's education improvements were
Or, heaven forbid, the people making the presentation could use a little common sense and not use a friggin' 10MB, 600DPI image, scaled down to 3"x3" on a page that will only be viewed on a projector. But by all means, throw more memory, software, hardware, whatever at the problem instead of making the users do things the right way, saving everyone time, money, and aggravation.
Are these CIO's banding together to form collaborative Open Source development projects to meet their mutual software needs? If not, they sure as heck should be. It would do a lot more than complaining.
Oh yeah? When I was the IT department for a small business, we had a problem with Windows NT... seems that there was a memory leak in a Microsoft driver... one that, when heavily used, would cause slowdown and eventual freeze of the server in question.
This machine did a lot of things for us... providing local web services, e-mail, and caller-id for our multiline phone system. The other thing it did was maintain our large (20,000+ record) customer/contact database. When this machine was down, our business couldn't function.
When I located the module that was causing the problem, I called Microsoft. Now, after finally describing the problem to the person at the other end they said "this is referenced in knowledge base article number..." whaterver it was. At any rate, I looked at the article and sure enough, it described the problem, and said "this is a known issue with Windows NT 4.0 and all service packs" and as far as I know, they have NEVER fixed the problem. Another service pack came out, and it was STILL there.
As near as I can tell, they don't plan on fixing it because it's not an issue for 95+% of their customers, and besides, NT is obsoleted by Win2K. But, it pisses me off. They knew about the problem, and did nothing to fix it.
Oh, and we were billed for the service call. So, it seems I can nullify one of your arguments.
Furthermore, open source has a huge advantage if a company employs a coder or two. (but not a humble one, I seem to have developed a distaste for those just now.) If a bug is discovered, there is a chance that it can be fixed in-house, because you have the source. When was the last time you heard of a customer patching a bug deep in the bowels of a giant piece of software like Windows NT or Oracle?
Open source may not be a magic bullet, but it's a bullet nonetheless.
"Alcohol, Tobacco, Firearms, and Explosives" should be a convenience store, not a government agency.
An SAP salesman told me that the ratio of license to total cost was 1:8. That's right, they paid $8 in services (implementation/integration) and customisation for every $1 in licenses.
And that's why 'subscriptions' don't work. So, you pay Oracle a fee each year. Great. Changing the system is still prohibitively expensive because implementing a new system is far more expensive than just paying a new subscription fee.
Nor does open source help. (Much). Software that automates business processes is generally designed by people that work (and know) the relevent industries really well. It is a business not a technical issue. These people generally don't want to share their knowledge with their competitors. Or at least not without stock options .
CIOs and the like need to concentrate on:
(a) Getting software vendors to take some degree of responsibility for systems. (Success fees are a good idea.)
(b) Defining exact needs from the start. How many software projects start with... 'i think i know what i want but i'm sure i'll work it out as the project goes on'?
*r
--- My dad's political betting
...glad to see the open source movement doing it's job.
It looks like the closed source community is doing the job.
The open source movement just has to sit back and watch!
// Alan Porter
It's funny you should link that, because I was going to cite it as a reference for why all software does have bugs. Read this quote from the article:
But how much work the software does is not what makes it remarkable. What makes it remarkable is how well the software works. This software never crashes. It never needs to be re-booted. This software is bug-free. It is perfect, as perfect as human beings have achieved. Consider these stats : the last three versions of the program -- each 420,000 lines long-had just one error each. The last 11 versions of this software had a total of 17 errors. Commercial programs of equivalent complexity would have 5,000 errors.
Notice how they said it was bug-free, but then they immediately contradicted themselves. Yes, the software is very close to being bug-free. BTW, for those not familiar with the article, it's a description of the highly disciplined process that NASA goes through to develop software for the space shuttle. Indeed, this is a case where "mission critical" is to be taken quite literally, and they still can't achieve perfection. Nobody is perfect.
For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
Ever hear of a dead-man's switch? It's a little device on a locomotive engine that will engage the brakes automatically if the engineer doesn't tickle it like clockwork.
So the bank's boss holds a meeting and tells the computer manufacturer that he will suspend payments on the mainframe until said mainframe could talk to the ATM as promised.
And the very next machine sold had a little bit of hidden circuitry or source code that "expired" shortly after the contract should have been renewed. The company using the machine had to keep supplying those payments like clockwork or the whole thing would grind to a halt. Without the schematics, would your technicians know how to adjust the device? Would you be sued for using the machine without paying for it?
And this brings us to the Open Source philosophy: (1) no dead-man's-switch business model, and (2) you can prove it.
[
"It's common knowledge that people don't know how to use 95% of the features of their word processors. "
Actually that's a common myth rather than common knowledge.
Although I welcome you to prove otherwise by listing even part of the features in word processors that are never used by anyone.
The problem is that the current way of selling software (the mass-produced version, at least) does not account for this. The consumer thinks to buy a finished products corresponding to some quality standard (DISCLAIMER clauses notwithstanding), but actually it is only buying in a 'support service' which uses the software as a tool. Worse than that
- :
- there is no warrantee about how long the company will keep the support service going.
- there is no formal way to verify that a perceived software failure is actually a bug.
- even if a software failure is proven, there is no law to force the company to release the patch (remember the DISCLAIMER clause?). There is only the company good-will to keep good PR with potential customers.
So, if software cannot be sold as a product (because 'bugs are inherent in software') at least it should be honestly sold as a service (which similar condition and warrantees one gets in a contract for custom software development).Ciao
----
FB
- :
- big company sees that a piece of OSS covers 99%
of its requirements;
- big company hires some developers to work to the remaining 1% and release all the 100% as open source.
This could happen (and maybe did happen sometime), at least if the company doesn't see the software as strategic for its business (I guess web servers and office products aren't strategic for a car manifacturer). The problem is that before that, someone should have developed the 99% of the software and released its source. And sometime the 1% of developing a piece of software might still costs more than paying licences for an equivalent close source software.Ciao
----
FB
The large companies also have the ability to dominate the viewpoint of the software vendors. The number of marketroids we had in here once we mentioned the "L" word (Linux) was staggering. All of them spreading the very same FUD I'm reading in this column. They're relentless, too. We still get sh!t from the Microsofties. Sure, it's decorated in "Oh, hey, John, be sure to come to the .NET informational presentation. We'll have food."
They did, too. It was a religious revival, it would have been more appropriate to hold it in a tent. They spoke in tongues ("C#", "MSIL", ".NET") they raised their voices to the Gates of heaven, and I almost thought the presenters were going to break out in hymns.
I walked out of there with tracts (renamed "White papers"), a full belly, and a mind full of the benefits of .NET.
John
John