DevOps as the recipe for disruption

Source – itproportal.com

For decades, industries have been disrupted by those that figure out ways to deliver products better, faster or cheaper. Businesses that harnessed natural resources, improved manufacturing processes, refined craftsmanship, deployed assembly lines, perfected supply chains or sourced lighter, stronger, better raw materials dominated.

Today, industries are being disrupted by software. We constantly here 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 this disruption sit new and innovative delivery methods for the software itself.

Companies like Uber, AirBnB and Tesla to name a few, are able 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) or Software as a Service, across multi-platforms, as rolling updates, live betas, etc.  Leading businesses are shaking things up by mastering continuous integration, continuous delivery and DevOps. Without these processes, innovators like Airbnb, Tesla and Uber likely wouldn’t be the disruptors they are today.

Software’s role

So, what makes software so disruptive? At its core, software democratises innovation and frees it up from the rules of physics. Innovators in manufacturing of physical goods used to push against the boundaries of physical resources. Now, anybody with knowledge and skills to develop software can create an application that may change the world.

However, creating software doesn’t tell the whole story. It’s one thing to think up an idea for a killer app, but to truly disrupt a market, you have to do at least two additional things: scale and sustain. You must be able to reliably scale your innovative solution to a large portion of a given market and you must have the capabilities to sustain that innovation. Today, if you can’t innovate again and again, you will be overtaken by competitors.

Scaling is much easier to achieve than in the past thanks to the adoption of cloud and containers technologies which have radically morphed what companies, and individuals can do. Their ability to instantly leverage huge amounts of elastic compute power and highly sophisticated data analytics means development teams can now have infinite compute power and no longer be constrained by limited resources.

Ford is an interesting example of innovation throughout the years. In the early 20th century, Henry Ford disrupted the car business by introducing the modern assembly line, making the manufacturing process more efficient consequently, Ford Motor Co ruled the auto business for decades. However, competitors eventually made their own improvements and caught up, pushing Ford down a few rungs.

Learning by doing

Over the years, car vendors have worked hard to build a better hardware. They’ve built stronger engines, tweaked cars’ designs, and improved comfort. 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.

What’s more, this delivery mechanism can also be used to rapidly respond to faults.  A few years ago, Tesla used this mechanism to directly solve a safety issue it faced with. Cars experienced a series of fires originating in the battery, and through the feedback system Tesla set up, technicians discovered 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, helped Tesla avoid an 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 organisers 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.

Turning to Uber, the company utilised software in an innovative way, connecting car owners who wanted to make extra income with people who needed rides. In this case, mobile phones were the platform, and software was the connective tissue that offered drivers an improved business model over taxis and provided riders on-demand convenience. Without software on a mobile platform and network connectivity, the match couldn’t have happened at the scale that it did.

The pipeline of innovation: CI, CD and DevOps

Sustaining innovation is one of the core reasons behind organisations’ commitment to continuous integration, continuous delivery and DevOps. 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 organisation is tested and operational, they change organisations entire way of doing business.

These practices extend the concept of agile development throughout 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 deliver value to users continuously and consistently, will out run competitors.

But it’s more than just agility in development and delivery that separates disruptors from others. It’s their ability to gather feedback and use that to rapidly respond to the market and their customers. Disruptors address emerging needs while competitors are still figuring things out.