Software's Clarion Call for Soft Skills
Improving Software Means Addressing More Than Just The Software
Every Business Is A Software Business
In 2011, American entrepreneur and early browser luminary Marc Andreessen declared that "software is eating the world". He meant that software was disrupting all areas, even those outside "traditional" technology. Marc powerfully captured how increasing amounts of compute, mobility, and data - the stuff of software - were transforming business.
Since then, we've repeatedly seen how those companies that excel at software, that "go digital", outperform their contemporaries. Done well, software allows companies to operate more efficiently, attract more talent, retain more customers, and demonstrate more agility when responding to the unexpected. From Amazon to Netflix, better software (however that is defined) translates to better business.
Despite Everyone Doing It, We’re Still Pretty Bad At It, And We’re Not Getting Better
Despite the importance, most companies' software improvement falls far short. The numbers vary: a 2020 report estimated that around 66%, or two-thirds, of software projects fail. Other research estimates failure is closer to 70%. Those unsuccessful projects translate to approximately $260B of waste in the US alone, with the total cost of operational failures caused by poor software quality costing an additional $1.56 trillion.
The problem in software change efforts, ironically, is an over-indexing on the software. As stated in the article "Digital Transformation Is Not About Technology":
"-most digital technologies provide possibilities for efficiency gains and customer intimacy. But if people lack the right mindset to change and the current organizational practices are flawed, DT [Digital Transformation] will simply magnify those flaws."
There is no silver bullet - no open source project to install, no external vendor's product to purchase - that will, on its own, "fix" poor software.
Improving Software Means Improving People
Instead, as I've learned, change hinges on people - the organization, the processes, and the culture. Successful software change initiatives set aside traditional hierarchal decision making in favor of loose coalitions; those collaborative peers aligned toward common goals. They provide a shared sense of purpose for the participants. Further, they establish self-correcting mechanisms based on the learning provided by continuous experiments.
Companies must address the deficiency of soft skills to change their software story. If we are going to improve the current state of software, we don't need yet another "digital transformation" effort. What we need is analog upskilling.
Writing a book is one of the hardest, most sustained endeavors I've ever committed to. Given the size of the problem, however, it is also one of the most potentially impactful ways of spending my time.
Time to get back to editing.