Being a software developer I’m pretty ophey with the term ‘bug’. In fact, I do believe the term is used daily within my day job. Historically this term had an entirely different meaning outside of software development. However, in parallel with the app explosion the term has made it into the mainstream. An even more disturbing trend is that consumers now seem to accept that software has bugs. I am not convinced this was always the case! I remember spending hours of my youth bashing away on my Amstrad CPC464 attempting to conquer the latest 2D game. I do not remember these crashing or the need for me to upgrade to version 1.x and beyond. Does this mean that software programmers of yesterday were a smarter animal than today’s crop?
I’m being a little unfair comparing the developers of the 70s and 80s, against those practising today. Technology has moved on. Theoretically programming should easier as memory limits are no longer an issue (yes debatable) and processors are a lot faster. The available development tools have also increased and the feature set within each are far richer. Unfortunately, these technological developments have not simplified the programmers job. In fact, the shear number of development tools, target platforms and hardware devices available to a programmer can actually hinder the project. In my opinion this makes the job harder. Also, each tool set promises to greatly improve the development process, but, forgets to mention the 101 things it will not do. There are far too many options to be considered!
The pace of technology also moves a lot faster. The latest development methodologies jump out of fashion as quickly as they came in. Although programmers are expected to learn and adjust their craft at the same pace. With time, adjustment is possible; but, time is not a resource granted generously in the software industry. If you snooze you lose: meaning if you don’t ship your latest product your competitors will.
Another factor in making the term ‘bug’ mainstream is the tendency to push the boundaries. We want our computers to do more. This means the programs we write are far bigger in size, complexity and features than those resource limited programs of yesterday. By resources I mean RAM and disk-space. There is great beauty in simplicity, so I am not sure the race for bigger and better systems is a good thing. Though, we all reach for the stars. This and the aforementioned issues all mean there is a far greater chance that software has bugs.
The following screen shots are what prompted me to write this post. Every time I update my PC, iPhone or iPad the updates nearly always include some sort of bugs fix. You’ve got to question whether there is something wrong with the way we develop software. Now for the evidence.
Next time you update your smart phone, or, tablet take the time to check for the word bug.