In my formative years as a CTO, back when Basecamp was called 37 signals, I was hugely influenced by their 2006 book Getting Real which professed the then radical idea that the best products have a clear identity and concept of who they’re designed for, rather than the most voluminous features or performant specs. It was full of phrases like ‘build less’, ‘underdo your competition’, ‘make opinionated software’, ‘forget feature requests’. It was at heart a radical manifesto against software bloat. At that time most business software inevitably evolved into feature-laden beasts like Word, but we were about to enter the age of the consumerisation of business software where poor usability was no longer accepted in the office. 37 signals were one of the early advocates of a new vision that business software should be targeted, simple, and a pleasure to use.
Redgate was also early to this realisation — while other themes have come and gone, ‘Ingeniously Simple’ has persisted as a central leitmotif throughout our 21-year history. Across the business it has delivered an easily understood yardstick that has informed decision making and helped countless Redgater’s connect with our core product value proposition and build successful mass market products. But despite being an accessible concept, a focus on simplicity becomes challenging to maintain as you move beyond the trivial. It necessitates a deep understanding of the user, their affordances, conventions, and workflows. Products need to take on increased agency to augment the customer experience, guiding the user through contextual interfaces on a journey to success, orchestrating workflows rather than providing consoles full of buttons and expecting the user to figure it out. When it’s done well the ingeniously simple product fades into the background and delivers that rare thing, a delightful experience. My smartphone has a camera as complex and powerful as my DLSR without the inch-thick manual attached — it helps me on the journey to be an expert photographer, not an expert at using a DSLR. Kathy Sierra expresses this experience succinctly as ‘products deliver value by making users awesome’.
Ingeniously Simple is not just for products
While software engineering has moved into this new enlightened age, the world of business is still a formidable engine of complexity. Our industry has grown comfortable with rewarding engineers for simplifying activities such as removing lines of code, but managers are rarely incentivised to simplify. Business processes accrete like plaque, building in complexity until things grind to a dysfunctional halt and are then rebooted, usually under new management, reminiscent of an innovator disrupting a software category once the incumbent has grown too bloated. We’ve developed approaches to break this cycle in product development and prioritise continuous improvement over revolution and rewrite, so why is it so hard to do the same for organisation design?
What do we mean by an ingeniously simple company? In the early 1900s Taylorism, the theory of scientific management, emerged from the pursuit of greater manufacturing efficiency. This was a shift away from the dominant model of craft production, which ultimately led to the deconstructionist production line of Henry Ford and the emergence of lean manufacturing concepts from companies like Toyota that successfully crossed over into the vernacular of Agile software development. These concepts found fertile ground because traditional IT bore many similarities to a factory where cycle times were often determined by physical bottlenecks in a process — human quality control, racking servers, standing up environments, change advisory boards, shipping CDs.
Nowadays, rather than by driving more efficient throughput, competitive advantage derives from reimagining these bottlenecks in software to take advantage of Moores law. Over time we’ve moved the physical to software (IaaS, online software distribution), automated and parallelised repetitive work out of existence (infrastructure as code, automated testing), and shifted concerns left into development eliminating handovers, wait times, and reducing cycle times (DevOps, Agile).
As Satya Nadella CEO of Microsoft said, ‘Every company is now a software company’, echoing the sentiment of Marc Andreesen’s 2011 essay ‘Why Software is eating the world’. Tesla is able to add new capabilities to its cars through software releases rather than building new models. Google differentiates the camera on its Pixel phones through constantly improving AI rather than better optics. The more we move into software the tighter and faster the innovation loop becomes between businesses and customers. In the end software engineering didn’t become a factory, the factory was beaten by software engineering.
Businesses aren’t simple
In 1999, Dave Snowden created the Cynefin framework which led to him to the role of ‘Founder and director of the IBM Cynefin Centre for Organizational Complexity’. Instead of seeing business operations as a standardisable process, Snowden instead defined four types of work which needed distinct approaches. The framework recognises simple work to be work that you’ve seen before, know how to execute, and should just get on and do. But it also highlights that much of the work of a business is not in the simple domain — it’s complicated requiring analysis and planning, or it’s complex requiring exploration and learning, or it’s chaotic necessitating responsiveness and action.
Ingenious simplicity derives from a constant focus on moving things into the simple domain. Exploratory experiments become operationalised best practice, a business continuity response to the chaos of a pandemic becomes the remote working new normal. The ingeniously simple business is focused on making yesterday’s challenge part of tomorrow’s playbook, on constantly reinventing itself for new opportunities, new externalities, and to operate at new scales.
In summary, businesses are not inherently simple things but do contain many opportunities for ingenious simplicity. I venture these few heuristics which have worked well for me in the intervening years since that first reading of ‘Getting Real’…
1. Reward simplicity as well as rewarding new.
2. Document your operating model and playbook.
3. Treat organisational changes as experiments with hypothesis and measures.
4. Mindfully review your practices every half year.
5. Snowflakes are bad, favour primitives — be prepared to sacrifice local optimisation for simplicity and scalability.
6. Handovers create complexity — resist specialisation as long as you can.
7. Coaching is a simplifying superpower — teach a man to fish.
8. Favour good prioritisation over ringfencing and time slicing, you’ll have flexibility when you need it.
9. Create slack for the important but not urgent, time for serendipity.
10. Design in a healthy tension between operational delivery and continuous improvement.