We all know the recent news - a software and electronics giant Apple, Inc. released an updated version of its new operating system only to receive severe backlash from users installing it on their phones, which often stopped performing their primary function of making phone calls. Apple quickly recalled the update but the question remains - why would a preeminent software company engage in such embarrassment in the first place?
There is a wonderful book on project management titled “The Mythical Man-Month” by Fred Brooks. Among many fascinating things covered by Mr. Brooks, who was in charge of major programming projects at IBM in the 70’s, is the concept of testing and quality control. He described a very regimented process, involving large teams (plural), with documentation group alone busy trying to keep up with producing and distributing to various groups on the project the freshly printed reams of project documentation that accurately reflected current state of the project with resolved and still outstanding issues. The complexities of that production / quality control stage alone are fascinating.
And then something miraculous happened - a company called Microsoft decided to streamline this convoluted quality control approach by releasing “mostly done” software on the market and having product users act as beta testers. If product users found bugs with the code, Microsoft no longer would recall the product, instead they would just release a security patch. The process that was previously internalized by the software company was now shifted to end user, dramatically shortening product development time and giving Microsoft an edge over their competition. Success!
This novel approach had implications to industries beyond software development, though that is where it manifests itself most clearly. For anyone using a WordPress website CMS, the mind boggling amount of constant module and core updates is a testament to quality control process that essentially consists of WordPress developers releasing code that they think works and then continuously releasing patches to address issues reported by product users. The complexities of modern world and trying to accommodate them have jaded even large organizations, as I personally found out some years ago reporting an issue with Cisco’s WebEx iPhone app, only to be told by Cisco tech support (almost verbatim): "we do not test for iPhone 4, only iPhone 3. Let me see if anyone in my group has iPhone 4 laying around". Had Mr. Brooks only imagined the world in which Cisco tech support is wandering around the office looking for a relatively modern device to test their already released commercial software...
So, do not be surprised the next time a major company recalls a highly anticipated new product; we are living in a world where marketing has taken control over development and products are being rushed to market to meet artificial deadlines. That is why a corporate IT department will not touch a new product for two years after its initial release, letting the manufacturer work out all the bugs and that is also why I’m not waiting in a line snaking to the local Apple store. I don’t know about you, but I am not getting paid to be their beta tester.