When we spend time focussing on specific problems, it comes at the cost of the ability to focus on others. The mind becomes conditioned to make certain things invisible, no matter how many times we look them over.
In the case of this article, it might be a spelling mistake, but in the case of a product it can be all kinds of things — bugs, designs, even market fit.
But we can learn to see again. There are ways to escape the myopia, and one is the power of liminal thinking.
Rites of Passage
This is Minard’s analysis of the fall of Napoleon’s Grand Army at the French invasion of Russia in 1812, considered a masterpiece of analytic design:
It features in my favourite book by Edward Tufte, “Beautiful Evidence”, as the focal piece for explaining the principles of data presentation. It is a landmark in the history of the ‘infographic’, renowned for its cleverness (in stark contrast to the military disaster it describes).
With not much more than a glance, we can learn a great deal. We immediately see the French Army was decimated — that the approach cost many lives, that the…
Given the high quality of these component services, it can be difficult to determine how to source your parts — should you use a supplier, or build it yourself? There are many different ways to cut this problem, but a valuable mental model that can help you make your decision is to look at code as a liability.
The natural inclination is to think of code as an asset to the business. It’s…
Thinking about software delivery as part of a supply chain can help clarify the problems large enterprises face, and provides a better way to move forward with integrating activities and achieving systemic benefits
Seasoned business leaders are experiencing an uneasy feeling of déjà vu. Adapting to the digital world, they know they need to rely heavily on their own software development capabilities to enable digital strategies to create value for their discerning customers.
Yet there’s a tendency to treat these operations as different beasts from the traditional business arena under a mistaken assumption that they are exempt from traditional models…
Businesses today are faced with myriad challenges to innovate and optimize. In doing so, we often need to make decisions that borrow against the future. This can come in a tangible form, such as taking money from investors to fund growth, or in more inconspicuous forms, such as making tradeoffs in technical decisions. When we make such tradeoffs, we expect them to come at the cost of additional technical work in the future; however, these decisions can also borrow against an externality that is often overlooked: culture.
Technical debt occurs in the development of software when the “easy path” is…
If you’ve spent a bit of time coding, you will come across the interesting and unusual idea of idempotence. The word not lending itself well to either spelling or pronunciation, many like me become immediately curious.
A concept found deep at the heart of mathematics and computer science, idempotence is a highly valued attribute of operations that relates to efficiency and effectiveness.
An idempotent operation sends a message to a receiver that can be performed again and again without negatively impacting the receiving system. …
Achieving efficiency across a scaled engineering organization means using systems-thinking, an approach that looks at how all of the components in the delivery lifecycle work together to create value. But designing a software delivery system that produces a continuous flow of value often requires a paradigm shift in organizational thinking.
Organizations can easily fall into the trap of allowing local optimizations at the expense the system, getting caught up on resource-level problems, attacking issues that don’t actually improve productivity, thereby hurting, not helping, the overall output of the system.
So how do we even know what the right problems to…
So you’re doing the DevOps. You’ve got integrated teams and an automated continuous delivery pipeline. You release on demand 47 times a day using fine-grained feature toggles, canary builds, and the whole world is your A/B test.
Great! Now leave the the UI out of it please!
I hear a lot about the importance of bringing customers into the delivery process as early as possible, a laudable goal when done the right way. The sooner you get the product in the hands of customers, the wisdom says, the sooner you can understand their experience and make improvements based on feedback.
New categories of product are emerging at the seams of the software supply chain.
To optimize the development of software products, we need a holistic view of the system used create them. I call this view the “software supply chain”, and it looks at how the creating activities are connected with each other and the rest of the business.
Those connections are significant business opportunities, and a number of tool categories have formed at these business-IT intersections with innovative functions that allow you to achieve ground-breaking new operational efficiencies.
In this article, I look at some of these emerging categories…
Software Engineering Manager @ Cisco Cloud Security