For decades, industries have been disrupted by those that figure out ways to deliver products better, faster or cheaper. They harnessed natural resources, improved manufacturing processes, refined craftsmanship, deployed assembly lines, perfected supply chains or sourced lighter, stronger, better raw materials.
Today, industries are being disrupted by a new force – software. We read about it every day, how software is eating the world. New software-driven products and experiences are impacting virtually every industry you can name – from retail (Amazon) to cable TV and movies (Netflix) to music (Apple and Spotify) to cars (Tesla).
Software is driving today’s innovation and disrupting entire markets. At the core of that disruption are equally new and innovative delivery methods for the software itself.
Companies are enabled to create new business models not only through the features developers code into the software, but through their ability to build and deliver it rapidly, reliably and repeatedly. They can get value to the customer faster and get feedback to help in making it better. They can deliver software via over-the-air updates (OTA), Software as a Service, across multi-platforms, as rolling updates and live betas. They’re shaking things up by controllering continuous integration, continuous delivery and DevOps. Without these processes, innovators like Airbnb, Tesla and Uber wouldn’t be the disruptors they are today.
So, what makes software itself so disruptive? At its core, software democratizes innovation and frees it up from the rules of physics. Innovators used to push against the boundaries of physical resources. Now, anybody with knowledge and skills can dream about creating an app that will change the world. In my case, that’s what attracted me to software development as a teen.
Software became more of a disruptor over time, as programmers perfected its ability to codify tasks that traditionally had to be performed by humans. But it didn’t truly free innovation from the laws of physics until it freed itself from the physical constraints of processing power, network connections and storage. Over the past decade or two, developments in networks, storage, mobile and the cloud have changed the game, opening things up for more software-driven innovation and enabling nearly everybody - from my 94-year-old grandmother to my five-year-old niece - to access that innovation, on-demand.
But, as stated above, creating software doesn’t tell the whole story. It’s one thing to come up with an idea and create a killer app to improve the way you book accommodations or hail a driver to take you across town. To truly disrupt a market, you have to do at least two additional things: scale and sustain. You have to be able to reliably scale your innovative solution to a large portion of a given market and you have to have the capabilities to sustain that innovation. Today, if you can’t innovate again and again, you will be overtaken by competitors.
Ford provides an interesting case study on innovation through the years. In the early 20th century, Henry Ford disrupted the car business by introducing the modern assembly line. The Ford Motor Co. ruled the auto business for decades by introducing new models and making the manufacturing process more efficient. Competitors made their own improvements and eventually caught up, pushing Ford down a few rungs.
Decades later, Ford is on the rebound, having retooled its operations and embraced the role of software in cars. David Bell of Ford has been quoted as saying, "No doubt, turbocharging, direct injection and cam timing hardware are key ingredients of Ford’s EcoBoost recipe, but the secret sauce is the software." The company is even getting directly into the software business through its investment in Pivotal Software and its creation of a new business unit focused on next-gen auto solutions.
The pipeline of innovation: CI, CD and DevOps
Sustaining innovation is one of the core concepts in an organization's use of continuous integration, continuous delivery and DevOps. As we discussed in previous blogs, organizations commit valuable resources to make these practices work. They follow the rules of continuous integration: automatically integrating and verifying every change to detect errors as quickly as possible. They then move on to continuous delivery, ensuring that software is in a shippable, release-ready state at all times. Ultimately they are able to implement a DevOps culture and get alignment on the shared values of collaboration, experimentation and learning in pursuit of delivering software at the speed of ideas.
These best practices don’t just ensure that the software produced by an organization is tested and operational. They help organizations change their entire way of doing business.
These practices extend the concept of agile development throughout the software lifecycle and establish the underpinning of an agile business. Companies that perfect the art of developing and delivering value, improving it steadily - day after day, week after week - and delivering that value to users continuously and consistently, will leave competitors in the dust.
But it’s more than just agility in development and delivery that separates disruptors from the rest of the pack. It’s their ability to gather feedback and use that agility to respond to the market and their customers quickly. They are able to address emerging needs while competitors are still trying to figure things out.
Here are some examples of how innovators are using the concepts of continuous integration, continuous delivery and DevOps to disrupt their markets.
AirBnB adopted a model to map homeowners with extra space to travelers seeking lodging in a given area, similar in concept to drivers with idle cars (Uber). Airbnb created this physical connection between people and incorporated it into their software platform. The tight feedback loop between homeowners, travelers and developers has helped Airbnb deliver enhancements to the app that they roll out regularly.
Over the years, car vendors have worked hard to build a better piece of hardware. They’ve built stronger engines, tweaked car designs and piled on the comforts. They’ve integrated software into the mix – fuel sensors, anti-lock braking systems, cruise control, back-up collision avoidance systems, etc. – but once developed and incorporated into the car, they are essentially one-time innovations burned into the car at production time.
Tesla’s spin has been to create a “sophisticated computer on wheels,” in the words of Elon Musk, founder and CEO. Tesla cars are connected to the company’s software labs the way apps on mobile phones are tied to Facebook and iTunes. This means Tesla can push fixes and add new features to their cars continuously, without the user having to go to a repair shop to get the changes physically applied.
This wouldn’t be possible without an agile delivery system, stoked by continuous integration, continuous delivery and DevOps practices.
Tesla’s delivery mechanism changes the economics of the car market. Conventional wisdom holds that a new car depreciates in value by at least 10 percent the minute the buyer drives it off the lot. Tesla vehicles, on the other hand, are getting new features pumped into them regularly, so they, in theory, should not only hold their value but could increase in value over a period of time. (No promises on that one, though!)
The delivery mechanism also helped Tesla solve a safety issue a couple of years ago. Cars had experienced a series of fires originating in the battery case, and through the feedback system Tesla had set up, technicians determined that the fires were caused by punctures in the cars’ undercarriages. Tesla delivered a software update that automatically raised the chassis high enough that road debris would no longer puncture the battery case.
Fast action, enabled by a tuned-up feedback system, may have helped Tesla avoid a major scandal or expensive physical recall. Other companies weren’t so well-prepared. Samsung probably wishes it had this type of mechanism when its phones started catching fire. The organizers of the U.S. Government's Affordable Care Act website did not have software delivery practices in place when the ACA website failed, forcing them to push out the launch several months so they could identify, triage and fix the problems.
Uber was able to use software to connect car owners who wanted to make extra income with people who needed rides. Mobile phones were the platform, and software was the connective tissue that provided drivers an improved business model over taxis and provided riders the on-demand convenience they needed. Without software on that mobile platform as the connectivity, the match couldn’t have happened at the scale that it did.
Since its inception, Uber has embraced technology. It has openly used continuous delivery and DevOps methods to deliver this critical software platform.
What role will software – and software delivery – play in the disruption of entire industries going forward? It’s hard to predict. We can’t see into the future - that application hasn’t been developed, yet. But, it’s clear that now, and for the future, software plays a central role in our lives and will be at the core of innovation and disruption.