Digital Transformation Demystified Part 3
This the 3rd post in a 3(+1) part series on the digital transformation. In Part 1, I explained the stages of digital transformation. In Part 2, I went deeper into the critical need of organizations, especially large organizations, to understand the digital transformation. Here I answer the third question that I posed in the original post and get slightly idealistic.
3. How does this make every company a technology company?
Business agility becomes a function of the agility of the software organization
Every Company is a Technology Company
Every company is a technology company. But they are not a technology company just because they have technology. They are a technology company because their business function is critically enabled by technology.
Conway’s law states 'Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure'.
That should terrify most companies. Equally terrifying is the reverse question – can your software define your communication structures? The digital transformation is built on the synergy of these two questions. If this isn’t the case, what makes you think that the digital transformation will have any effect?
Because you have the power to transform your company through your software discipline, and your software discipline through your technology, technology defines the acts and successes of your company. You are a technology company.
You don’t realize how much you rely on your code
I was listening to Robert C. Martin this week and he made the observation that people don’t realize how many processors surround them every day. Their phones have multiple processors, their earbuds have processors, some of their lights have processors, and their cars require 100 million lines of code to run. He said that the world hasn’t realized just how much they depend on developers.
Here’s the point. Your organization runs on code whether they know it or not. Code controls what your organization sees, what you find important, what you communicate, and everything else your organization does. Your company’s ability to see, analyze, inspect, decide, coordinate, execute, and learn is all defined by code. Your processes are defined by code. The decisions your frontline workers make every day is defined by code. Whatever that code says decides the future of your company. The code is your most valuable asset.
So where is the value in the code?
So where is the value in the code? Well, surprisingly, it is not actually in the code. That’s right, your code’s value is not in the code itself. Code is just a bunch of electro-physical particle series embedded in semi-conductive material. The value is not there. People have been working on figuring this out for a long time and the long answer is extremely esoteric and goes back to the roots of what programming is. Way smarter people than me can explain that much better. I’ll just give you their conclusion: The value of code is in the learning it produces for the team and organization as a result of creating it. Or, put another way, the value in code is in its ability to conceptually reflect reality in its design. As I explained via Conway’s Law, this value flows both ways; forward to shape the lives of the people who use the program, backward to shape the lives of the people who wrote the program.
The power of stage 4 is that this learning is unhindered by the physical restraints that other systems have. We can finally play with what is really going on. This, by the way, is why product managers are so valuable; they are trying to articulate reality in such a way that both developers can replicate it and organization can profit from it.
The software and the software organization defines how your business runs. If you want to make your business better, you make the software better. If you want to make the software better, make the IT department better. Congratulations. You are a technology company. If you give up on this idea, you give up on the learning you need to succeed. Every company is a technology company.
Culture eats strategy for breakfast
Peter Drucker famously said ‘Culture eats Strategy for Breakfast’. A functional business definition of Culture, based on Edgar Scheins definition, is that culture is the millions of micro decisions that have been compiled and validated over time such that the organization agrees with it without argument. Culture is years and lives of embedded actions that are latent, unnoticed in your company until they are challenged. Culture can be changed purposely from the top down in certain conscious areas, but most of it evolves from the ground up based on the many micro-decisions workers need to make every day. When strategy ignores the culture -and it will until it unearths it through challenge- it will be destroyed by it. How can some plans, goals, and macro decisions based on an educated guess of a desired future overcome years of embedded micro-decisions that are based on the actual experience of your organization in reality now? That is the face-off when culture and strategy clash.
The digital transformation is strange because it is usually implemented at a strategic level, but Level 4 (see Part 1) digital transformation is effective because it is implemented at a cultural level. Since your company functions are defined as code, your code is the closest thing to a substrate for your culture. And thanks to Conway’s law and its inverse, the culture of the people who built your code is going to affect the way the code actually works. So the more your workplace is defined by the code, the greater influence those teams who built the code will have on the organization.
The Culture of Code
Here is where the idealistic part really begins. Ask yourself what kind of culture is going into your code. Because it will affect the work and the work culture of your entire organization.
Here is a possibility for your organization and a reality for many leading the programming world.
- Programmers are hackers. They continually experiment and learn. They are always curious. They ask questions.
- Programmers follow the agile manifesto. They focus on value. They fail early and often. They learn in a safe environment and put in safeguards to be safe.
- Programmers know scrum, the most ubiquitous agile framework. They work in small, autonomous teams, lead by serving, and live by transparency, inspection, and adaptation. They flip a lot of assumptions on their heads, but use certain constraints to let their creativity go free.
- Programmers have a strange affinity to freedom. Sometimes that means they are more progressive. Sometimes that means they go to Burning Man. Sometimes that means that they are more conservative. Sometimes that means that they make their software free of legal constraints so that all can use it.
- Programmers care about their communities
- Programmers make miracles happen every day that make the world a better place. One of the miracles they do is the incredible speed/quality paradox they have solved. They can move faster and do more than the antiquated business theory that still permeates American culture. Like I said, they flip a lot of assumptions on their heads.
Business agility becomes a function of the agility of the software organization.
When you apply best practices to your business, you apply best practices in digital transformation. When you apply best practices in digital transformation, you apply best practices to your code and how it is developed. When you provide best practies to your programs, you apply best practices to the software organization that develops your code.
And conversely, when your software organization follows what makes them do their best, their code will reflect the principles that helped them do their best. When the code reflects the programmers best, it will cause a change for your organization using the code to transform and do their best. When your organization transforms because of this, your company becomes best in it’s given field.
This is the Digital transformation. The power of your business becomes a synergistic function of what happens in your software organization.
Change the world
Gene Kim’s second Ideal of software development is ‘Focus, Flow, and Joy’. Jeff Patton, another leader in the space, challenged everyone reading his cornerstone book: we write software to change the world.
The digital transformation is not about hitting numbers or about simple efficiency. It is not about going paperless (stage 1) or about cost savings (stage 2). It is certainly not just about the cloud, big data, and seamless integration (stage 3). As crazy as it sounds, it is about allowing something beautiful to happen in your organization. It is about allowing some of the amazing miracles that software developers have in their cultures to permeate and transform your entire organization. When you do this, you finally get what digital transformation is all about, and you finally get the results that you have been promised from your initiatives.
Don’t digitally transform because you can shave some zeros off your budget. Digitally transform to change the world.