Ever watch a developer solve every problem with the same tool? I’ve seen teams use React for everything, even when a simple HTML page would work just as well. I’ve watched developers unironically reach for Kubernetes to deploy a single-page app. I knew a developer who used a SQL Server database for everything. He stored the entire user interface definition in the database. He succeeded in tightly coupling the whole enterprise to SQL Server. He was enthusiastic about the power of this paradigm. He even considered creating the SQL MVC book.
This isn’t just poor judgment. It’s a cognitive bias called the Law of Instrument, and it’s everywhere in software development.
The Law of Instrument says that with a hammer, everything looks like a nail. Knowing React makes every UI problem React; knowing Python makes every script Python; and now, AI is seen as the solution for all problems.
Understanding this cognitive bias helps you recognize when you’re using the wrong tool and why it occurs often in software development.
What Is The Law Of Instrument?
The Law of the Instrument, or Maslow’s Hammer, is a cognitive bias in which people overly rely on familiar tools. Maslow stated in 1966: “It is tempting, if the only tool you have is a hammer, to treat everything as if it were a nail.”
The concept predates Maslow, first stated by Abraham Kaplan in 1964: “Give a small boy a hammer, and he will find that everything he encounters needs pounding.”
In software development, this means using your preferred framework, language, or tool even when it’s not suitable. You’ve invested time learning it and are comfortable with it, so you use it everywhere.
The problem? Not every problem is a nail. Sometimes you need a screwdriver, a wrench, or no tool at all.
Why This Happens
Several psychological factors drive this behavior:
Comfort Zone: You know how to use your familiar tool. Learning something new feels risky and time-consuming. Why experiment when you have something that works?
Sunk Cost Fallacy: You’ve invested hours learning React, Kubernetes, or Python. Admitting it’s wrong for this problem feels like wasted effort.
Confirmation Bias: When your tool works, you remember those successes. When it fails, you blame the problem, not the tool.
Social Proof: If your team uses React for everything, using something else feels like going against the grain.
Fear of Missing Out: New tools emerge constantly. Sticking with what you know feels safer than evaluating every new option.
These factors combine to create a powerful force that pushes you toward familiar tools, even when they’re wrong for the job.
The GenAI Hammer
Currently, GenAI is the biggest tool in software development, making every problem seem like it needs an AI solution.
I see developers using ChatGPT to write simple SQL queries that they could create faster themselves. I’ve seen teams build complex AI pipelines for problems that could be solved with a simple if-statement. I’ve heard GenAI recommendations for tasks demanding human judgment, creativity, or expertise.
GenAI is powerful, but it’s not magic. It’s a tool with specific strengths and weaknesses. Using it everywhere wastes resources, introduces unnecessary complexity, and often produces worse results than simpler solutions.
The Hopeful Vision vs Reality
There’s a vision of AI transforming software development: agents writing code, intelligent automation handling everything, robotic workers eliminating manual tasks.
This vision assumes clean data, modern architecture, and transparent processes, but challenges like data silos, tech debt, legacy systems, sprawl, inefficiency, ball-of-mud architecture, and governance issues are common. GenAI can’t fix these problems, and using it as a tool for them only compounds the situation.
Real Examples in Software Development
I’ve seen the Law of Instrument play out in countless ways:
The React Everything Problem
A developer builds a simple landing page using React with TypeScript, Webpack, and state management, rather than plain HTML and CSS.
The right tool? Plain HTML and CSS. A simple static site generator like Hugo will suffice if they need templating.
The Kubernetes Overkill
A team deploys a single-page app on Kubernetes using Helm, service meshes, and monitoring stacks. It gets 10 daily visitors and runs smoothly on a single server.
The right tool? A simple Virtual Private Server (VPS) or static hosting. Kubernetes often adds needless complexity.
The Microservices Mania
A startup develops each feature as a separate microservice, with ten services communicating over HTTP, each with its own database, deployment pipeline, and monitoring. The team spends more time managing services than building features.
The right tool? A monolith. Microservices address issues they don’t have: scaling, team size, and deployment complexity.
The Database Mismatch
A developer uses MongoDB for relational data needing joins, transactions, and consistency, relying on complex code to manage relationships that a relational database handles natively.
The right tool? PostgreSQL or MySQL. Use the proper database for the data model, not your favorite.
The GenAI Overreach
A team relies on ChatGPT for API documentation, but the AI generates generic, inaccurate content that doesn’t match their API, requiring more time to fix than writing from scratch.
The right tool? Writing documentation manually or using an API documentation tool that reads your code.
Recognizing the Pattern
The Law of Instrument appears predictably. Recognizing these patterns can help you avoid this trap.
You’re solving problems your tool creates: Writing code to bypass your tool’s limitations suggests you’re using the wrong tool. The tool should solve problems, not multiply them.
Simple tasks feel complex: When simple problems need complex solutions, your tool might be overkill. Complexity should match the problem, not your tool’s capabilities.
You’re learning tool-specific patterns: Memorizing workarounds and patterns can make tools feel unnatural for problems. Good tools fit the issue naturally.
You avoid simpler alternatives: Dismissing simpler solutions as “not how we do things” may trap you by the Law of Instrument, as these solutions often indicate better tool choices.
You’re excited about using the tool: Excitement about a tool can hide if it’s the right choice; enthusiasm doesn’t ensure fit.
The problem keeps getting harder: When solutions increase in complexity, you may be using the wrong tool. The right tool should simplify, not complicate.
Why Awareness Matters
Understanding the Law of Instrument helps you make better tool choices. Here’s why these approaches work:
Questioning defaults breaks automatic behavior: When you pause to ask, “Is this the right tool?” you interrupt the automatic reach for familiar tools. This moment of reflection creates space for better choices.
Starting with the problem shifts focus: Defining the problem shifts focus from “what tool do I know” to “what does this problem need,” leading to better tool choices.
Evaluating options expands possibilities: Researching alternatives reveals unknown tools, expanding your options for future problems.
Considering full cost reveals hidden expenses: The tool you know seems cheaper because you ignore learning time, maintenance, and complexity. The right tool often costs less when you account for everything.
Using the right tool creates better outcomes: As I wrote in my software development philosophy, matching tools to problems yields better results. The right tool fits the problem naturally.
Learning expands your toolkit: Learning new tools broadens your options. You don’t need mastery, but knowing alternatives helps identify better fits.
Questioning GenAI hype prevents overreach: GenAI is powerful, but asking “Does this need AI?” helps recognize when simpler solutions suffice. Many issues don’t require AI’s complexity.
Outside perspectives reveal blind spots: People outside your team see problems differently. Their suggestions reveal tools you haven’t considered and assumptions you didn’t realize you had. Use InnerSource to bake in diversity of thought and perspectives.
When Your Tool Is Actually Right
Sometimes your familiar tool is the right choice. Here’s when that’s okay:
It genuinely fits the problem: Your tool matches the problem’s requirements, constraints, and scale.
The alternatives don’t add value: Other tools might work, but they don’t provide enough benefit to justify switching.
Your team knows it well: Team expertise matters. Using a tool your team understands can be more valuable than using the “perfect” tool nobody knows.
The cost of switching is high: If you’ve already invested heavily in a tool and it works, switching might not be worth it.
The key is making a conscious choice, not defaulting to what’s familiar.
The Bottom Line
The Law of Instrument applies everywhere in software development. We prefer familiar tools for comfort, even if they’re unsuitable. GenAI worsens this, making every problem seem like it needs an AI fix.
Recognizing this bias is the first step. Questioning defaults, evaluating alternatives, and choosing tools based on problems—not familiarity—helps avoid it.
Next time you choose a framework, language, or AI tool, ask: “Is this the right tool, or just because I know it?”
Your future self will thank you for making a wise choice.
References
- Law of the Instrument (Wikipedia) - Comprehensive overview of the concept, its history, and manifestations
- Use the Right Tool - A Software Development Philosophy - My philosophy on tool selection in software development



Comments #