For those of us who remember the 90's, two lessons stand out that would be wise to heed in today's highly interconnected technology kitchen:
With performance pressure ratcheted sky high, and second place no longer an option, the quality of choices a company makes determine economic survival. Take for example Apple's early operating systems that were built for Motorola processors; they were essentially iterative. Like a chocolate layer cake - OS 9 was created atop OS 8. OS 8 atop OS 7 and so forth. Successive layers of code defined every new feature and almost a generation of APIs and software support grew from the slim and trim early Mac SE's into the plumper iMacs, whose translucent blue skin seemed symptomatic of a lack of oxygen in the bloodstream.
The reason? Code bloat.
Around the time the iMac was introduced, Microsoft was experiencing its own eating disorder. The company's products were notoriously unstable and highly prone to causing indigestion and ulcer-like conditions . Early versions of Microsoft Office arrived on a dizzying number of floppy disks that took hours to load. They required every bit of RAM the early Macs could muster. Apple's machines ran Microsoft programs far more slowly than Intel PCs. Apple's problem was not fixed until Steve Jobs, following his exile from the boardroom, implemented UNIX in the competing NeXT OS.
Upon his return the product was refined as OS X. It had been a complete top to bottom rewrite. Microsoft completed a similar reboot with NT.
Examples of code bloat debilitating IT systems today include overuse of object oriented (OOP) constructs, such as classes and inheritance, leading to messy designs that take many more lines of code than necessary; implementation of a declarative programming style in an imperative or OOP language; and naïve implementations of the template system employed in C++.
This arterial plaque is often defined as "technical debt." On this blog we've defined it as the cost of repairing issues that should have been addressed in the build process. To put a dollar figure on that, based on an average cost of $2.82 per line of code, an average-sized application containing of 374,000 lines of code yields just over $1 million in technical debt per company...that's just over $1 million in IT costs that could have been avoided had due diligence been performed and the issues discovered prior to deployment (NOTE: Gartner last year placed the cost of this at $500 Billion globally and estimated it would increase to more than $1 TRILLION by 2015!)
Code, Soothe, Relieve
The trick to avoiding a grotesque, nauseating build-up of technical debt likes in catching issues with the software's "health" - such as security or performance - earlier in the development cycle, when they cost less to address.
Because software projects and maintenance have been deferred, the recent economic downturn has exacerbated the debt. Given uncertainty about the global economy, executives are holding back on expanding operations. Companies are stockpiling cash. And because cash isn't returning the rates that investors expect, there's been a resurgence of mergers and acquisitions (M&A)...but what sclerotics lie hidden within the organization being acquired?
The best way to find out is for buyers and sellers to take mutual responsibility for the amalgam of IT systems and perform a structural quality analysis of their software portfolios before a merger or an acquisition begins.
Companies like American Express, sitting on a mountain of cash, are well aware of M & A opportunities. On the company's OPEN Forum, author Mike Periu writes:
During the second quarter of the year… over 2,000 M&A transactions were successfully completed. The value of these transactions exceeded over $260 billion. For the first half of the year, the total exceeds $620 billion across 4,100 transactions. It’s expected that the remainder of the year will see similar levels of M & A activity. Yes, lawyers and investment bankers have been busy.
Software integrity and elegance is a big part of today's business reality. Learning from the Apple/Microsoft competitive legacy means taking that to heart. For potential buyers and sellers, they must focus on reducing the risks associated with M & A and help level the playing field.