For a few years, I thought that the shame was only on financial companies to have dragged us through the economic mess. Whether the mess is now affecting our software industry or if it is the new attitude of software companies, remains to be seen. Three different pieces of software that I use for teaching and research in a large university in the Southeast USA, have serious flaws which the companies are taking semi-seriously or as a matter of “life goes on”.
One of them is a finite element program. Running the input file in a new version gives segmentation fault and the company acknowledges that it is a problem. To stop wasting our time and not having to use the features of the new version, we requested that they give us the license for the older version until they fix the problem. It took more than a couple of weeks of reminders (what else our IT group had to do) to get the older version. Then they did not give us the parallel version of the program and we are still waiting for that.
Second is a program that makes interactive quizzes for mathematics courses. This software gives the result as incorrect even for correct answers if the correct answer is a negative number. This makes the program useless for what I want to do. Their take on it – we cannot update it right away. Hey, this is making your program useless to me – wake up. Even after pointing out to them where the potential bug can be (without looking at the program) and which it was, they still did not help me. I even told them how to fix it. Only after much wrangling and waiting for two months, they are promising the update in October. I hope they test it with the test file I sent them; otherwise, I am at square one until December.
Third is a computational package. They updated their symbolic package with a different package and my students now get two different sets of answers using two different versions. The answers are correct but one version gives only one solution while the other version gives multiple solutions. I need the multiple solutions so that students can pick the most appropriate answer. What I heard from them was -“That is the way it is”. Only after much wrangling and calling their reply a “cop out” did they acknowledge it as a problem and gave me an alternate solution. See I am teaching the first programming course to engineers and I cannot teach them to work around the bugs of the software itself. Their confidence is shaken and I have to be extra vigilant now – is it the software or is it the students. Nothing can be taken at face value anymore. And these students are the future industrial users of the software.
Bugs are part of life for any software but when you are making millions of dollars of profit, you have an obligation to work on the bugs that make your software unusable. What I am finding out is the software companies attitude is that they are safe in treating their customer any way they like – they may not be “too big to fail” but they are “too entrenched to fail”. Good day!
_________________________________________________________________________________________________________________________
This post is brought to you by
- Holistic Numerical Methods: Numerical Methods for the STEM undergraduate at http://nm.mathforcollege.com,
- Textbook on Numerical Methods with Applications available from the lulu storefront,
- YouTube video lectures available at http://nm.mathforcollege.com/videos and http://www.youtube.com/numericalmethodsguy
- Subscribe to the blog via a reader or email to stay updated with this blog. Let the information follow you.
I do also seem to experience similar quality problems in the software industry, and have the clear impression that they are escalating. Every day I seem to be reminded of the seemingly decreasing quality of software in my professional life as IT manager for a medium industry!
Probably there are many factors that have been contributing to that negative quality trend. To name a few: increasing overall complexity of the systems, increasing pace of the market, and lower organisational commitment to the realm of software engineering. Most companies and development teams are apparently forced into early releases after a hasty design process in order to keep market expectations on top. Otherwise competition may get there earlier or the internal budget stream may dry.
My preferred solution for this problem of low quality for proprietary systems is to try to move towards open source solutions. In my opinion open source is more resilient in the long run because total number of brains around each interest cluster is often bigger that the limited size of teams for particular software companies. A good peer community that has reached above a certain criticall mass may produce very interesting products.
The proprietary solutions may offer faster results and have more bells and whistles. But in my experience they will not offer stable solutions unless you keep a lot of money flowing towards the vendor and their support consultants. Larger companies may not listen to small customers and smaller companies may merge of disappear, undermining the continuity of products.
My choice to push for open source on professional environments requires a lot more energy but has been giving good rewards upon finding excellent products with open licences.
Respectfully yours,
A. Macchi
PS: My latest discovery for my hobby around numerical methods is Sage (sagemath.org).
I do also seem to experience similar quality problems in the software industry, and have the clear impression that they are escalating. Every day I seem to be reminded of the seemingly decreasing quality of software in my professional life as IT manager for a medium industry!
Probably there are many factors that have been contributing to that negative quality trend. To name a few: increasing overall complexity of the systems, increasing pace of the market, and lower organisational commitment to the realm of software engineering. Most companies and development teams are apparently forced into early releases after a hasty design process in order to keep market expectations on top. Otherwise competition may get there earlier or the internal budget stream may dry.
My preferred solution for this problem of low quality for proprietary systems is to try to move towards open source solutions. In my opinion open source is more resilient in the long run because total number of brains around each interest cluster is often bigger that the limited size of teams for particular software companies. A good peer community that has reached above a certain criticall mass may produce very interesting products.
The proprietary solutions may offer faster results and have more bells and whistles. But in my experience they will not offer stable solutions unless you keep a lot of money flowing towards the vendor and their support consultants. Larger companies may not listen to small customers and smaller companies may merge of disappear, undermining the continuity of products.
My choice to push for open source on professional environments requires a lot more energy but has been giving good rewards upon finding excellent products with open licences.
Respectfully yours,
A. Macchi
PS: My latest discovery for my hobby around numerical methods is Sage (sagemath.org).