Writing software is a wonderful thing. When done properly, the source code can look like a piece of art and the application is smooth, responsive and meets all requirements for the target users. When done poorly … well, we’ve all had experiences with programs that were more of a headache than necessary.
At work today I was forced to use a old technique called DDE (Dynamic Data Exchange) in order to provide a small utility to bridge the gap between a 10 year old version of GoldMine to a MySQL database hosted on a server somewhere on the planet. For the last few days I’ve been struggling with undocumented APIs to make this little utility work without resorting to DDE, as this older technology is too slow to be effectively useful on a grand scale.
When I asked why we didn’t simply upgrade the base software (GoldMine) to a newer version that supported running on a current SQL database, the answer came back “We don’t need it. Half the functions in this old application aren’t being used, either.” Which made me think of today’s title.
Quite frankly, I’m surprised that there is so much software available on the market. I’m surprised that there are so many software developers that are making a living off their skill. It’s not that I don’t believe that people should have several options when selecting software, as I believe that MS Word has been better than WordPerfect ever since WordPerfect started writing Windows software. Having a varied market certainly keeps vendors on their toes, and helps provide a stronger reason for developers to deliver consistent levels of quality.
The thing that really surprises me is that we don’t have enough options to choose from, yet. For most software applications, people really only know how to do the bare minimum of the application. People who know 20% of the functions in any given program are considered “Power Users”. People who know more than 40% are often technical trainers or application documenters.
Do we really need an update to Microsoft Office? How many new functions could there possibly be in Word or Excel? Will non-elite’s even use these functions?
Microsoft Office was perfect (in my opinion) with their 97 release. The whole Office 97 package was compact, efficient and easily usable. Since that time the User Interface has become more cluttered, functions have become buried in excessive menu lists, and features that 1% of the user base cares about have become standard. Why does this software package need constant updating?
Some custom software packages can have this same argument. When a business is content with the packages that they have now, why would they want to pay money for needless upgrades and the requisite training cycles?
My work is currently in the middle of determining whether it would be worthwhile to replace much of our core software with an off-the-shelf package from a large vendor. We currently have software in place that does everything the company needs to do, and over half of it lies unused because the users just haven’t found the need to use the extra functionality. Why spend money, time and resources when the energies can be focussed elsewhere?
For the last four years, I’ve been pushing really hard to bring the software at work up to 1999 standards. In some areas I’ve succeeded, and in others we’re still using DOS. Perhaps I need to ask myself the same questions that I’ve posited here. If it works now, why change it?