The Soul of Software Lives in Its Names - Kotodama

Published: (January 31, 2026 at 10:41 AM EST)
2 min read
Source: Dev.to

Source: Dev.to

Introduction

In mathematics, you can call points “beer mugs” and nothing breaks.

In software, names don’t affect the compiler — but they change everything for humans and AIs.

In Japan, we have a word for this: Kotodama (言霊).

Kotodama (言霊) is an ancient Japanese concept suggesting that words possess spiritual power. In modern Japan the term is rarely discussed in daily life, yet the idea of respecting the power of names resonates strongly with software engineering.

Why talk about Kotodama in software? Because it isn’t about mysticism; it expresses a fundamental truth about how we build systems. We have countless principles for great software—KISS, YAGNI, DRY, SOLID, SoC, SLAP, CQS—but beneath all of them lies a single practice that quietly determines the destiny of a codebase:

Naming. Good naming creates readable code, reduces bugs, and allows software to evolve.

The Hilbert Perspective vs. The Human Perspective

The great mathematician David Hilbert once said:

“It does not matter if we call the things chairs, tables and beer mugs or points, lines and planes.”

In mathematics, objects function correctly regardless of their labels, provided the logic and structure are consistent.

Software is technically the same. A program executes whether you name a class X, Foo, or PaymentProcessor. The compiler does not care.

But humans do. Poor naming makes code impenetrable. Efficient development relies on a shared mental model. When we read a variable name, we aren’t just reading text; we are invoking an idea.

In this sense: The soul of software lives in its names.

Kotodama in the Modern Stack

The concept of Kotodama mirrors this idea perfectly.

  • Intent: Parents name children with hopes for their future. In code, we name variables to define their purpose.
  • Encapsulation: In ancient Japan, people had “true names” (imina / mana) that were kept hidden to protect them. This is similar to object‑oriented programming, where we hide private state behind meaningful abstractions.

Words matter. Names carry intent, structure, and understanding. That is Kotodama in software.

Even in the age of AI, names are more important than ever. High‑quality prompts with precise naming produce significantly better code. AI doesn’t just process logic; it processes the semantics we provide.

The GR Naming Cheat Sheet

To help developers harness this power, the GR Naming Cheat Sheet is available in two languages:

When you are struggling to find the right name, this table may help you. I hope it improves your code—and that your software makes everyone, including me, a little happier.

References

Back to Blog

Related posts

Read more »

Bravo

markdown !Cover image for Bravohttps://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fimage.pollinations.ai%...

In Praise Of –Dry-Run

Article URL: https://henrikwarne.com/2026/01/31/in-praise-of-dry-run/ Comments URL: https://news.ycombinator.com/item?id=46840612 Points: 13 Comments: 5...