Another public service announcement: There are no silver bullets - GenAI included

architecture   architecting   decision making   ancient lore   anti-patterns  

Contact 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.

There are no silver bullets

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 →


architecture   architecting   decision making   ancient lore   anti-patterns  


Copyright © 2026 Chris Richardson • All rights reserved • Supported by Kong.

About Microservices.io

Microservices.io is created by Chris Richardson, software architect, creator of the original CloudFoundry.com, and author of Microservices Patterns. Chris advises organizations on modernization, architecture, and building systems that avoid becoming modern legacy systems.

Need help modernizing your architecture?

Avoid the trap of creating a modern legacy system — a new architecture with the same old problems.
Contact me to discuss your modernization goals.

Get Help

Microservices Patterns, 2nd edition

I am very excited to announce that the MEAP for the second edition of my book, Microservices Patterns is now available!

Learn more

ASK CHRIS

?

Got a question about microservices?

Fill in this form. If I can, I'll write a blog post that answers your question.

NEED HELP?

I help organizations improve agility and competitiveness through better software architecture.

Learn more about my consulting engagements, and training workshops.

LEARN about microservices

Chris offers numerous other resources for learning the microservice architecture.

Get the book: Microservices Patterns

Read Chris Richardson's book:

Example microservices applications

Want to see an example? Check out Chris Richardson's example applications. See code

Virtual bootcamp: Distributed data patterns in a microservice architecture

My virtual bootcamp, distributed data patterns in a microservice architecture, is now open for enrollment!

It covers the key distributed data management patterns including Saga, API Composition, and CQRS.

It consists of video lectures, code labs, and a weekly ask-me-anything video conference repeated in multiple timezones.

The regular price is $395/person but use coupon OFFEFKCW to sign up for $95 (valid until Sept 30th, 2025). There are deeper discounts for buying multiple seats.

Learn more

Learn how to create a service template and microservice chassis

Take a look at my Manning LiveProject that teaches you how to develop a service template and microservice chassis.

Signup for the newsletter


BUILD microservices

Ready to start using the microservice architecture?

Consulting services

Engage Chris to create a microservices adoption roadmap and help you define your microservice architecture,


The Eventuate platform

Use the Eventuate.io platform to tackle distributed data management challenges in your microservices architecture.

Eventuate is Chris's latest startup. It makes it easy to use the Saga pattern to manage transactions and the CQRS pattern to implement queries.


Join the microservices google group