Another public service announcement: There are no silver bullets - GenAI included
architecture architecting decision making ancient lore anti-patternsContact me for information about consulting and training at your company.
The MEAP for Microservices Patterns 2nd edition is now available
I recently started reading a book that enthusiastically advocated for the use of a particular technology without acknowledging any drawbacks. That experience was a useful reminder of an old but easily forgotten lesson in software architecture: there are no silver bullets. Every technology has both benefits and drawbacks - even if some or all of those drawbacks are not yet known - and understanding those drawbacks is at least as important as understanding the benefits. The recent enthusiasm - to put it mildly - for GenAI-based tools makes this lesson particularly timely, but the argument applies far beyond any single technology.
In this article, I’ll explain how treating technologies as all upside leads to poor decisions, unrealistic expectations, and avoidable failure in real systems and organizations. I’ll explain why acknowledging trade-offs matters - both for practitioners making design decisions and for writers and speakers shaping how technologies are perceived - and why blind advocacy ultimately does more harm than good. Let’s start by looking at the origins of the phrase “there is no silver bullet,” and then explore why acknowledging trade-offs is so important.

The origins of the phrase “There is no silver bullet”
The phrase “There is no silver bullet” originates from a famous 1986 paper by Fred Brooks No Silver Bullet - Essence and Accidents of Software Engineering (https://en.wikipedia.org/wiki/No_Silver_Bullet). In that paper, Brooks argues that “there is no single development, in either technology or management technique, which by itself promises even one order of magnitude… improvement within a decade in productivity, in reliability, in simplicity.” I use (or misuse) the phrase more broadly to mean that every technology has both benefits and drawbacks.
New technologies often appear to be all upside
One challenge with using new technologies - GenAI being a current example - is that they almost always appear to be all upside. The drawbacks only become apparent later - they are either known unknowns or unknown unknowns. This is one reason why the Gartner hype cycle exists. What’s more, the hype surrounding a new technology often causes a suspension of critical thinking.
What if you are a developer/architect and only see upsides?
If you are an architect or software developer who is considering using a technology, it’s essential that you understand the drawbacks and are sure that in your context they are outweighed by the benefits. So if you only see the benefits of the technology and cannot articulate any drawbacks, then you probably need to ask yourself why. If it’s a brand-new technology, there will be as-yet-undiscovered drawbacks, so you need to be cautious. And, if it’s a technology that has been around for a while, then you probably haven’t done enough research. In either case, it’s important to remember that technology does not kill your application - only bad decisions do.
If you are a writer or speaker who only sees upsides
The same applies if you are writing or presenting about a technology. If you are writing about a technology and you can’t articulate its drawbacks and issues, then you probably don’t understand it well enough. (Note to self: check chapter 1 of Microservices patterns, 2nd edition). At a minimum, it deserves an explicit acknowledgement “I’m sure there are drawbacks, but we don’t know what they are yet” - so the audience can calibrate expectations appropriately. If you are not upfront about this (i.e., in chapter 1) and are engaging in blind advocacy, then you are doing a disservice to the audience.
The downside of talking about downsides
There is a downside to talking about downsides, especially for writers and speakers: it weakens simple narratives and makes ideas harder to sell. Acknowledging trade-offs introduces nuance, context, and uncertainty, which can dilute enthusiasm and clash with the incentives of marketing, conference talks, and social media. Pointing out limitations is often perceived as negativity or lack of vision, especially in communities built around a particular technology. Yet avoiding those discussions may make an argument more appealing in the short term, but it ultimately leads to misplaced expectations, poorer decisions, and disappointment when reality catches up. This tension is especially visible in today’s GenAI discourse, where enthusiasm often outpaces understanding and unknown unknowns are mistaken for non-existent ones.
Need help with modernizing your architecture?
I help organizations modernize safely and avoid creating a modern legacy system — a new architecture with the same old problems. If you’re planning or struggling with a modernization effort, I can help.
Learn more about my modernization and architecture advisory work →
Premium content now available for paid subscribers at
