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 hope this works. It would be nice to see the end user winning.
-onepoint
if you see me, smile and say hello.
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.
What difference does it make, you either pay for the closed source company to spoon feed you the latest bug fixes in their newer software, or you pay someone on your staff to stay up to date, and keep all your open source software up to date... End result you still have to pay lots of money to get the bug fixes. (Arguably, the bigger the company is, the more specialists it will need to pay salary, to keep up with the open source fixes...).
---
Programming is like sex... Make one mistake and support it the rest of your life.
Once again, follow the money...
OBNonCynical: It is good to see awareness moving up the corporate hierarchy - Previous large companies I worked for always seemed to have the local IS/IT people running apache and trying to keep the CIO from forcing them to run Netscape-Enterprise or IIS...
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.
Yeah, why pay for new bugs when you can get them for free?
On behalf of the OSS crowd:
SILENCE YOU FOOL!
Takahashi Rumiko made beats! DON, taku, DON, taku. . .
the US cannot run a military campaign to save themselves
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.
The end result of this, however, will likely not be widespread use of open source. It will probably just lead to better corporate licensing policies. Which isn't really a bad thing in iself, however.
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
Its kind of like the whole Batteries Not Included scam. Except it would be things like Stability Sacrificed If You X (where X is most actions). Why would you want to buy a new engine because Ford sold you a truck with an engine that barely works? Its quite stupid if you ask me. The BBB should step in and kick major ass. If you buy something, you've bought it, its yours. Maybe you don't have the right to rip off the design (or code as in software) and sell it to other people, but the ideas should be free to use. Now we have 10 billion commandments we have to follow just to play Solitare in relative peace. And we have to patch it two and a half billion times because the company didn't release a complete version, but a pre-alpha test program that sold for $500.00.
Job? I don't have time to get a job! Who will sit around and bitch about being broke and unemployed then?
This is why open source software makes better business sense, and it should be heralded wall to wall, company to company. Print this article out and mail it to every company in your city/town/village. E-mail the link to formidable and small-time CIOs and CEOs.
We geeks can debate distributions, licensing issues, and window managers, but we have to come together when it comes to making open source software (of which most of us champion) viable to the corporate bottom line.
Ok, now CIO's are in a bind due to the fact that the booming 90's are over with. The big magic pot of money that had been sitting in front of their desk for IT is now gone.
The old way of getting their software SUCKS. They spent a lot, and didn't get much, and now they can't afford to do that anymore. Sure, they say the words "Open source" but you'll notice that they go to extreme measure to stay with their current software providers. Hell, they're looking FOWARED to being soaked every year with a subscription service! "We can move if the service sucks." HA! You'll continue being the bitch and you'll LIKE it.
They'll switch to open source when they're forced to, and not a second sooner.
Democrats or Republicans. They are both taking us to the same place and they are not afraid of us anymore.
It's still working, with several MS apps even. I guess it didn't phone home and get the message to break everything. About the only thing it doesn't support is the new media player, but there are plug-ins for the old one to access all the new video formats.
I guess I didn't get the message that I HAVE to upgrade either. Darn.
First of all I'd like to open with that "I Love OpenSource". It does for me practically out of the box what no commercial product does. For example I own a silly Mac only non-postscript deskwriter. With Linux and Samba and Atalkd my Windows and Macs can both print to it. SFM and other products like it only seem to support postscript printers.
...or does it's simply balance out? Can anyone give some examples?
Anyway that said, I notice that many people toss around the idea that OSS saves money. Now certianly it saves me money when I use Samba instead of shelling out for Win2K Server. However in a corporate environment (where you're probably going to buy a support contract anyway). Do the numbers really add up?
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.
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 sobad: That's the way vendors make money.
As it has dawned on geeks as soon as they enter the labor force:tech management (often/usually) doesn't kn ow what the hell they'redoing. CIO? An excuse for a big salary and hectic work schedule.
In this example the first thing Seyk did was pay money for a piece of software that didn't work. And he got paid to do that?
OK, maybe Seyk is a good 'ol geek who got burned but for every good geek there's a dozen dim bulbs and two dozen sleazy companies to take advantage of all of them.
"Where's my other sock?" - A. Einstein
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"
Call Eric at 877-251-5558 and he will give you bootleg copies of any software title you desire!
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.
Remember, we're probably talking servers here. Users are *still* very dependent on the applications they use. Admins can make it nearly completely transparent for the end-user as to the hardware and software they connect to, but the front-end will probably have to stay Windows-based until they can be weaned from the teat of M$.
Not that this isn't a Very Good Thing(tm). But this isn't going to put Micro$oft out of business overnight.
der dee der.
This article only touched briefly on Open/Free source, but here's an idea I've wondered about for a long time. Why don't large companies fund Free software.
Big business (non-computer businesses) might find that in the long run its better to fund open source development than to continue funding commercial software development.
For instance, lets say Ford uses Linux/Apache from Windows/IIS (no idea what they use now). Now, lets say they figure this saves them $2 million. Why not see the future and say "Hey, lets invest half of that money in Open Office and maybe in a few years we can completely drop MS Office and save $10 million a year" or whatever the numbers are.
The point is, big companies who aren't directly involved in computer software could have an enourmous impact. Why should IBM/Sun/etc. be the sole funders of development for software that they are just going to give away.
Besides which, Ford could use this as leverage to get the features they really want.
This is probably the only way we will ever see certain types of free software be competitive. (Business accounting comes to mind.)
I find it interesting that so many people think that [all|most] commercial software companies specifically leave or put bugs into products so that they can make money down the road. My entire professional career has been with commercial software companies, covering a fairly broad range. Never during this time did I see evidence or even hear of anything that backs this kind of idea. Maybe it does happen at Microsoft (I haven't worked there), and maybe at some others, but it seems libelous to speak such sweeping statements about commercial software companies. It should also be noted that many Linux vendors are really commercial software companies as well - they happen to sell a product that is open source, but they're still a commercial endevor. Even if you change "commercial" to be "closed source", I still have yet to see evidence of this apparent common act from software publishers.
Having said all that, I do think there are plenty of crappy licensing situations. It is great if these companies turn to various open source products as a result, but honestly, many of these companies just seem stupid for not doing so sooner, regardless of licensing issues. Why anyone would choose to run IIS for their web server is beyond me. You could make Apache cost money, and I'd still prefer it. This doesn't hold true for all products, but I think aside from licensing there are plenty of other reasons. Maybe it takes something like licensing to make these companies pull their head out and truly examine what their choices are and make a decision based more heavily on quality of product, as opposed to say ease of purchase or that the company's name is recognizeable to some high up (e.g. CIO) who has only heard of Microsoft and hasn't heard of Apache, for example.
Whether these decisions save them money or not is to be seen. In general I would expect it to cost less, but it depends. The purchase price of the product, as pointed out is rarely the biggest cost, and just because an open source product is free, doesn't mean it costs nothing to support (but in the same note, that doesn't mean you shouldn't spend that money, or even spend more - as the quality all around may be worth far more than the potentially increased (or decreased) cost).
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?
If end-users weren't so hungry for features, the software wouldn't be so bloated, and the support wouldn' cost as much because there's less code in the product, thereby dictating that fewer bugs will exist. The mere fact that a given program is open-source will NOT help. Their support bills will be lower because they get no support - at all - period. The only benefit they will have over non-open-source apps is that the app won't cost them anything either.
>>> ...and the corporation that writes the software is motivated to eliminate bugs...
Umm, how exactly does the subscription model motivate them to eliminate bugs? They already have your money, and their business model assumes they will maintain monopoly status so you won't have anywhere else to go when your subscription is up - so how is there any more motivation under this business model?
Seems to me the only thing it increases is guaranteed cashflow and a more predictable revenue model for the corporation.
It's not like an HMO where if you come down with more bugs it costs them more for the treatment - in fact I think it's the opposite - the less they spend on bug fixing, the more of your subscription dollars they get to keep.
paul
Silly Rabbit, sigs are for kids.
I think one of the most irritating things about the whole Microsoft monopoly, is that they release a product with huge security holes. Then the consumer has to buy a expensive virus protection program to feel safe when opening emails etc. So, the consumer not only gets the pleasure of getting virus, but even have to pay extra for the favour. I know MS release patches sometimes to try to stop the virus flood, but in a way they also owe the consumer a program to deal with the viruses that too many times get through.
Well, thinking about it, I guess if they included a virus program with their Windows XP, it would be another example of bundling and uncompetitive practice :).
--- guns don't kill people, people with guns kill people ---
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!"
I like it even better when a spell checker does its job.
sulli
RTFJ.
What do you want to bet that the reporter saw GNU/Linux and thought that it was referring to two different operating systems?
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?
You seem to be forgetting that any company can do any project using only one tool. Yes, that's right EMACS! Now with wireless digital video editing capabilities!
We could also use something that says you're free to upgrade on your own schedule. I took a slam working on a CS degree when M$ expired the curriculum for Windows NT. Not only are they reigning in support, but they're reigning in the ability of others to train support for aging software.
And need I mention the handshaking going on between the software and hardware industry? How's this for dialogue?
Software Vendor: "You Need to upgrade XYZ app to version D... We will no longer support version C or lower"
Customer "But my hardware won't run version D"
Hardware Vendor: "We have solutions for you that support XYZ Version D! it only costs..."
Customer "Screwed again..."
Hardware and Software Vendor (to selves): Repeat again in two years!
If I can't see it in Lynx I'm not interested.
CIO's can bitch all they want to, but the simple fact is that CIO's are the ones who *started* the 'planned obsolescence' movement. It's called doing business and satisfying your stockholders.
It's *also* called making sure your software is updated along with changing times.
Do you like paying for updates? No? Then you *should* be looking at Open Source solutions. Just remember they aren't exactly a nirvana, either. Open source is great, but not if the open source software you use has been abandoned by those who could do updates to it.
If you want open-source package 'A' to be updated and it's been abandoned then *you* could be the one funding that effort - in which case paying for the commercial package *may* in fact be cheaper..!
Polymorphism -- It's what you make of it.
Isn't it true that open source applications bring out new versions of their software as well? And that when this happens they no longer provide bug fixes to the old version? Of course, the upgrade is also free, but apart from that the process is the same as commercial software.
So, isn't this artical really just about people who want their software to be free?
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?
Dont use powerpoint. Make jpg images instead and show them as a slide show.
You don't need to take the DB offline to export it. Just run global queries. That's your incompetence, not theirs.
And if you think the product sucks so bad, don't buy it. Download MySQL, or IBMs DB instead. Or were you deluding yourself that MS's SQL is better?
Perhaps if your code monkeys bothered to read up on the DB they're SUPPOSED to be coding for, you'd have worked around known bugs.
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.
you forgot the last half of the fairy tale: even though ignored, the plain girl (OSS) will remain an honest and loving person, and when you (CIO) finally get the attention of the cheerleader (CSS) you'll realize that she ain't all that, especially without her makeup, and you'll see that you've really fallen for the other girl (OSS) because she's a much better person. so you (CIO) will grow from the experience, and stay true to your girl (OSS), while the cheerleader (Microsoft) ends up living off welfare in the trailer park.
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.
In fact, Crowell plans to start buying software from Microsoft on a subscription basis in two years, once he finishes receiving all the upgrades he paid for two years ago.
So what he is saying here is that he won't be buying subscription based software from MS?
Slashdot is an anagram for Has Dolts, and I am Dolt number 468543
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
you can always turn to its help desk, however incompetent.
Please! Can I call the incompetent help desk, oh can I?!?!? Pretty Please?!? Oh, it's been so long since I had the urge to hit my head against the wall until I slumped into unconsciousness!
Somehow, I'm guessing the person who implies that an incompetent help desk is a good thing doesn't work in sales.
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.
They tend to put out easier! lol...
Businesses could use the FFRL (Fed Funded Research Lab) as a model. They pay a non-profit institution to do development on a specific request just like they would any contractor. The lab would exist as a non-biased skunk-works. The development lab could require that the client agrees that all work (or agreed upon pieces) will be published under the open source license, thereby adding to the library of open source software. Any profits would be funneled back into further software development or grants to independent developers. Such an institution could do for open source software what Los Alamos did for nuclear science or Sandia does for solid state physics. Battelle Memorial Institute is an example of such an R&D non-profit that works for the government and companies. Think of the geek heaven it would create also!
It is by the juice of the coffee bean that thoughts acquire speed, the teeth acquire stains. The stains become a warning
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
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.
If a company wants to go Open Source and they pick Linux, Apache, and PostgreSQL database using PHP and Java, they can pick their support for each product between dozens of vendors, and if one fails them they can switch (provided the contract is negotiated that way).
Open Source Support has the advantages of Closed Source Support: professional help. It has the additional HUGE advantage that you can switch support company without changing your product. And for the icing on the cake, your in-house IT people could actually look through the code for the causes of the bug/ new features to add.
Unless there is a feature you absolutely cannot obtain open source, why stay closed source?
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 maintain 20+ servers as part of my job and I can tell you I'd rather maintain the 15 linux servers then the 2 MS.
/usr/local libs and the other 90% of the software I don't want to care about on the rest since "apt-get upgrade" does it for me.
It's all a matter of chosing the right distro. Sure RedHat or SuSE are good on 1 or 2 home desktops but I'd be a fool to run them here simply because Debian is much easier to keep updated.
Software I need custom compiled to
I *might* have to answer some questions but unlike
Windows 2000 I won't have to reboot 3 times per update. (yes that's a HUGE improvement over NT4 but it's still annoying)
I've often wished MS had a dependency system. It's my single largest gripe with the OS. If they had one that could automatically update libs when some software needed something newer app writers wouldn't try to include the needed DLLs, and in turn wouldn't try to blindly overwrite what happens to be there alreaddy.
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.
Then someone else will make it work properly. That's what OSS is all about. Sure, there's some timelag sometimes, but life is pain in any case.
Or, if it's really important to you, you can pay someone to fix it. For a large enough corporation with enough seats of a package, this can be a money saver over the upgrade pains.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
One would have to wonder how long your programs are. I've written small programs (read: very small) and had them come out bug free. Then again, I was the only person using it. The fact of the matter is that "bugs" aren't necessarily always lazy or illogical... there are so many ways a small logically correct sequence can suddenly fail when given a specific set of circumstances. Consider also that the kind of software this article is talking about contains hundreds of thousands (dare I say millions) of lines of code... hardly conducive to eyeing out bugs. I've rarely seen a software house that released perfect software in the beta phase (by your logic, good programming should be bug free at the beta phase.) The idea would seem to me not to "lock in" bugs as a beta expires, but to not finish the beta until all bugs have been seen and fixed. Does that mean bugs will be gone if everyone dilligently pushes their software through a harsh beta phase? Nope, it just means the bugs will tend to be rarer, so you end up pissing off less people. I would put forth the idea that bug-free software isn't impossible... it's just becomes more unlikely as you add lines of code.
Well, actually, my retail store runs on a couple of 386s with c.a. 1991 point-of-sale software (MaxPro 4.53) and some special applications built on FoxBase 2.10 (1988)... on DOS 5.
And my 1985 Volkswagen Golf has 205,000 miles on it... and counting. But then I've been called a cheapskate. :)
isn't sendmail notorious for holes - qmail... that's different.
anyway, the point is that they are switching to open - that is good.
ideally this will allow other companies to use them as a point of reference (so ideally the community helps them out so that they have a successful run with it so that it doesn't make it looks bad).
right now, most corporate slobs I know see things as "the more expensive the product, the better it is - if it is free, then it must be really bad"
even one of our IT guys here at lunch told me that he hated our Vertical Sky/MKS source control system (for good reason - we all hate it), and he knew it was cheap - so therefore, if we switch to CVS (what all the engineers want), then it is free - so it must really suck.
I wanted to smack him. he is an idiot with other stuff too though (I can count on more than one hand the number of times he has seen a preview for a tv show or a movie and then misinterpreted it as the news and then proceeded to tell us about it the next day at lunch), so I suppose I should have expected it.
There are some odd things afoot now, in the Villa Straylight.
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!"
In fact, I'll take your argument even farther:
End users found green screen terminals easier and faster to use than "modern" GUIs.
People look at me like I'm nuts when I say something like that. What most people don't realize however, is that the end user does not need to understand how to do a scandisk or a defrag, or learn how to back up their mail folder, or for that matter even understand how to use a #%%@ start button! Green screen terminals worked because they presented a concise list of everything they were allowed to do on the system. Even more to the point, the interface was often customized to an individual department/user group. Once they understood "key in between the delimeters" and "hit transmit to submit" everything else was pretty easy.
At a previous job I worked at, we took this philosiphy to heart. For our "PCs" we used a Citrix server and a bunch of thin clients. The Citrix server was one of those NT 3.51 boxes. We had the program manager lined up so that when users logged in they were given about 10 options right in front of them. There wasn't anything they needed to do beyond that. We even had it configured so that after logout the server would undo any interface changes they made! Certain departments had special software (e.g. Marketing had DHL software) that noone else could see. Let me say that our user support was extremely low compared to most shops. Nearly all of our support calls were for the few PCs that remained.
Javascript + Nintendo DSi = DSiCade
just because he's calling OSS bloatware, doesnt mean he's a troll. He's pointing out an unbiased opinion of a few OSS products. And just because he's showing priase for MS, does not make him a troll. Once again, he's making an unbiased judgement and speaking his opinion. All the reasons comments that are unbiased end up being marked Insightful
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.
What took so long for these guys to speak up? I just hope the sentiment spills over to the consumer market.
First of all, there is no conspiracy among software companies to intentionally ship buggy code with the intention of making money off support/upgrades. I have worked for a number of "shrink-wrap" software companies & I know people who have worked for others, and I've never heard of a case where a product was intentionally shipped with bugs. Obviously, bugs exist in software. Software is a complex thing, and it is very difficult (if not impossible) to test every single possible usage. Anyone who took an elementary course in software engineering knows this.
It is corporate suicide for a company to release buggy products and then ask you to pay to fix these bugs. Most companies (including the evil empire) bend over backwards to resolve issues, deliver timely service packs and patches, without charging a dime for their time. If you call Microsoft's support line and your issue is related to a bug, you don't get charged for the service call. I guarantee you that they are losing money on this, not making money. Anytime anyone tries to use a "conspiracy theory" to explain something, it is usually total bull droppings.
Also, to suggest that the subscription model is the way to keep software companies honest is also complete nonsense. The thing that the article is missing is the fact that once you start using a particular piece of software, it is hard to switch to another piece. This is called "lock-in" and I'm surprised a magazine aimed at executives didn't mention this once. You can threaten to cancel your subscription all you want, but if the vendor knows that it will cost you X million dollars to switch over to another product, you lose all of your leverage. It doesn't matter if you pay for your crack in one lump sum or if you pay for your crack on a monthly basis; you are still addicted to the crack.
Finally, to tout open source as the solution to these CIOs' problems is garbage. The pieces of software mentioned in the article are big time accounting packages. There is no open source equivalent for these things. Even for things where there is an OSS equivalent (web server, database), just because it is open source doesn't mean that all the bugs are going to go away. All software, whether it's open or close source is going to have bugs. To suggest that open source is the "silver bullet" of software development a la Fred Brooks is silly.
It is scary to me that CIO actually are going to read this drivel.
------
www.moneybythenumbers.com
Win95 probably doesn't have the proper copy protection built-in. Maybe it's a good idea to stick with '95...
Is MS still making updates (like security patches) for Win95 though? Eventually they'll stop, and you won't have to upgrade, but if there's a severe security bug you might not have much choice.
It is not neccessary true that by subscription model software providers would have incentive to eliminate bugs. Without competition, subscription model is just another method software providers that could suck your $$$ in.
Open source didn't solve it neither, but at least, you are not locked in.
Though I wonder whether you really have experience in using some real good software, when TeX is called bloated.
Software is much cheaper than the price of a good car (except Oracle/other expensive software...) You must also take into account that the car industry has been around close to 100 years and there are multiple laws and regulations that force them to perform recalls.
The problem is not that CIO's should be willing to pay double the price. The root cause of this problem is that, as you in fact say, it takes twice as long to build quality software.
This delay has a huge factor in today's market, and results in an inacceptable price hike. The fact is, building good software should only take you 10% longer.
I propose that the fied needs to mature (better practices, better tools) so that quality software becomes easier to build. At that point, the market forces will cause companies to buy quality (because it'll be worth it economically speaking) and then (but only then) will software quality stop being an oxymoron.
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/
They seem to think they are bigger than the government. Don't be surprised if they sue anybody who promotes a boycott. We'll see if they really believe in the free market.
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
I wouldn't hold Micrsoft harmless. You left out that Win98 is really Win95 with 1000s of bugfixes and few new features. M$ was all too happy to take out $89 to 'upgrade' from 95 to 98, when it should have been a FREE bugfix. Ditto that for ME.
Also, look how M$'s continual 'upgrade' cycle caused you to buy new hardware. Imagine this across an enterprise -- you get the 3 year hardware turnover most IT depts get to deal with. Bugfixes disquised as upgrades drive not only software sales, but hardware sales, too.
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
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.
Comes with a drop dead date..
Dumb CEO's - their data is also locked up - they cant move .
Federal laws say some data got to be kept 7 years.
So the company cannot use legacy archive tapes, and must suddenly convert terrabytes of data locked up in a propriety format - to something else.
That is not an option - Y2K proved most orgs had no idea about their data holdings and fields.
This is not an option, and the laws need changing to say you have the right to use unlicenced software for the purposes of meeting minimal and statutory requirements - and requests from law enforcement agencies and the like.
Lucky for the terrawrists, that old w3.1 database records may have been lost, because backward compatibility is MS's worst aspect . Something to be said about clunky flat files, and non OO access methods.
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
The short version: Writing a large software system is like nailing jelly to a wall.
The long version:
Show me a client who knows what they want before they ask for it.
Show me a client who won't change their mind after you've started building.
Show me a client who accepts that the "state of the art" will rocket along independently of the development of this current system.
Show me a client whose business practices don't change - even slightly - in six months.
Show me a client who will pay up the full price of development to the agreed-upon specification, when it takes nine to twelve months to get the system fully developed to that original specification.
Show me a client who is willing to wait for the system to slowly grow over 12 months, as my development team releases features as they are ready.
Show me a client who is willing to believe that a system isn't ready to go the moment it's plugged in and switched on.
Show me a client who is prepared to pay up to 20% of the development cost of the software every year just to maintain it - cleaning up the rough bits, polishing the interface, optimising the flow of data, updating the system to take into account new legislation, business practice or monetary units.
Then...
Show me programmers who can spell.
Show me programmers who have professional pride.
Show me programmers who can do what the System Architect tells them to (and only what the SA tells them to).
Show me programmers who can write neat maintainable code, instead of trying to out-hack Duff's Device.
Show me programmers and architects who are willing to review each others work, without taking criticism personally.
Show me technical staff who can speak English in lay terms.
Show me programmers who are happy to maintain another programmer's code in the same style as the original programmer.
Show me programmers who are happy to write their code (semantically as well as syntactically) to an external specification.
Then and only then do I have half a chance of delivering software that doesn't have bugs or mis-features in it.
The even longer version: Go read this book (it's been reviewed on Slashdot by Jason Bennett).
I feel that the CIO's are battling the wrong foe. Too many have gone the way of ERP systems because the vendors are big and powerful. They have been suckered into paying huge amounts for what is essentially garbage. Monolithic garbage. Companies are not monolithic so why should the software be?
These CIO's are poorly clued into how their business works, and even less well able to understand what their own departments are doing. For the most part these CIO's sound more like the political wannabes that other professions have thrown up for years (look at the number of CEO's that are former sales people).
By not being bright about the software they bought in the first place, these CIO's seek to parry their failure by blaming the vendors for poor quality.
Tish!
What is the largest program you've ever written? Have you proved that it was correct? And I do not mean tested - but provided a mathematical proof of correctness?
In the real world programs are written to someone's requirements. Just figuring out what the requirement is probably the hardest part of the job - as everyone who has an interest in the program thinks he knows best.
What happens most often is that the requirements and the code are developed in parallel, as otherwise we'd never finish anything, and when things are left unclear programmers must improvise.
To be pedantic a bug is where a program doesn't follow it's specification. If no precise specification exits, there are no bugs!
If programmers really cared about quality of their code we'd all be coding in Eiffel (just a plug for my favorite language)...
...richie - It is a good day to code.
...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
"doing it's job"
Look, go back to 2nd grade for a week or two and learn all about how the possessive form of it DOES NOT call for an APOSTROPHE !!!!!
What a friggen' idiot you are, Hemos.
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"?
Buggy software is a legal problem not a technical one. When the day comes that a software firm can be class-actioned for defects the same way Ford was sued for the exploding Pinto gastank, is the day that software companies will organize their development efforts to avoid bugs in the first place. And not a day before.
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.
>>Now if they said qmail on the other hand...
how about http://www.postfix.org
This.
In one place it says: "The most important things the shuttle group does -- carefully planning the software in advance, writing no code until the design is complete, making no changes without supporting blueprints, keeping a completely accurate record of the code -- are not expensive."
And in another: "on a dollars-per-line basis, it [the group is] among the nation's most expensive software organizations."
Of course, those things are exactly what make it so expensive. It doesn't sound expensive because it's just work. Only, it's a vast amount of work, done by highly-paid professionals. Another bit mentions a change to 6366 lines of code, that was specified by 2500 pages of documentation.
The subject of their efforts is 420,000 lines of code. They've had over 20 years, with a budget currently at 32 million dollars per year. That's enough money for man-weeks for each line of code!
...and they still have bugs.
"It's glad to see the open source movement doing it's job."
Actually this has less to do with what the open source movement is doing, and more to do with what the open source community is NOT doing, and what companies like Microsoft ARE doing.
The reason that CIO's are making moves to open source software is because there is absolutely no business ambition in the open source community, very little (NEW) innovation (referring specifically to the linux communities focus on the desktop, when the desktop war is over, and they should be focusing on enterprise backend services) AND because they know that they are going to be getting not only a cheap(er) software ride for their money, but will also be attracting more nerds and geeks who won't work for anyone that doesn't have at least one linux installation.
This is not a rant, I'm just highly opinionated
The productivity loss and IT staff hours during the conversion (and the little gain) for each upgrade is the reason, at least for large and medium corporations. The license fees are peanuts compared to that.
Actually the halting problem is not solvable.
It is impossible to write a program that can deside if another generic piece of code will stop or not.
- :
- 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
Cheers!
Maybe this is a different view of it, but, the problem with discrete versions is that you are forced to reinstall and basically start from scratch. You instantly get into the upgrade game, because Winblows XP5 doesn't work with your ancient (2 months old) video card. If M$ wants the rental model to be successful for industry, which has a ~3 year cycle for their PC purchases, then M$ has to maintain the software in such a way as to keep it working on the installed user base. You can imagine the crap and lawsuits they will get if they eol a piece of hardware that a major customer uses and 33% of the customer's computers suddenly stop working.
Personally, I would have to evaluate the rent/buy decision based on how much I typically pay for OS software. I think the biggest complainers are people that have Winblows illegally installed on >5 of their boxes at home and don't want M$ coming up with a strategy that makes them pay individually for all five licenses.
One point about the auto industry. Leasing or buying is dependent on preference. If you feel like paying $X a month and always having a shiny, new car and don't want to deal with the hassle of selling it yourself, leasing is probably the best way to go. People that want a brand-new shiny computer every two years will probably do better to lease, while those that choose to run them until they die will probably want to buy (and M$ will want that too, because they don't want to support 5+ year old computers on their latest, bloated OS). I think that M$ will discover that the renting model isn't as beneficial to their bottom line as they might initially think - due to the extensive testing and support required, IMHO.
No it cant :-), but NP-Complete problems are a class of problems that have not been proven
to be i P but neither proven to be not i P
( P is the set of probles that can be solved in polynomial-bounded time (and space??) )
Also all NP-complete problems can be transfered into any other NP-Complete problem, so if you can prove one NP-complete problem to be in, or not in, P you have also proved it for all other NP complete problems.
"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."
That is such bullshit. You must write bugger all code, or its not tested, or its not used.