A Hall of Fame of Name Collisions in Tech
Sakana AI announced its Japan-specific LLM, “Namazu.” But for some of us, “Namazu” immediately means the full-text search engine that has existed since 1997. It came with a Perl-based indexer, mknmz, and a C-language search command, namazu, and it was a staple of Japanese Linux servers in the early 2000s.
Name collisions like this happen all the time in IT. It is almost funny that the industry that invented namespaces cannot keep namespaces straight when naming its own products.
Legendary Collisions
Java and JavaScript are already in the hall of fame. In 1995, Brendan Eich at Netscape wrote the scripting language in just 10 days. It was first called Mocha, then LiveScript, and finally renamed to JavaScript. The rename was a marketing move to ride on Java’s popularity at the time, but Eich himself later called it “the worst part of JavaScript’s legacy.” Even 30 years later, beginners still ask whether Java and JavaScript are the same thing.
Same Name, Different Beast
Here are some of the collisions I found across the tech world.
| Name | This one | Collides with |
|---|---|---|
| Namazu | Full-text search engine (1997) | Sakana AI’s Japan-specific LLM (2026) |
| Copilot | GitHub Copilot (2021) | Microsoft 365 Copilot (2023), Windows Copilot |
| Spark | Apache Spark (distributed processing, 2014) | Spark mail client (Readdle, 2015) |
| Eclipse | Java IDE (2001) | Mitsubishi’s car. And an astronomical eclipse. |
| Atom | Atom feed (RFC 4287, 2005) | GitHub’s text editor (2014, discontinued in 2022) |
| Falcon | CrowdStrike’s EDR | TII’s LLM (2023). And SpaceX’s rocket. |
| Mercury | NASA’s space program | MTA (the ancestor of Postfix). The programming language Mercury. |
| Rust | Mozilla’s programming language (2010) | The game Rust (Facepunch Studios, 2013) |
| Go | The board game | Google’s programming language (2009). Also plenty of other products named Go. |
| Swift | OpenStack Swift (object storage, 2010) | Apple’s programming language (2014) |
| Sage | Sage accounting software (1981) | SageMath (2005). Renamed after a trademark dispute. |
| Quartz | macOS graphics layer | A Java scheduling library |
| Phoenix | PhoenixBIOS | Elixir’s web framework |
The LLM Zoo
LLM naming has turned into a zoo.
| Name | Animal | Developer |
|---|---|---|
| Llama | Llama | Meta |
| Alpaca | Alpaca | Stanford |
| Vicuna | Vicuna | LMSYS |
| Falcon | Falcon | TII (UAE) |
| Orca | Orca | Microsoft |
| Koala | Koala | Berkeley AI |
| Dolphin | Dolphin | Eric Hartford |
| Qwen | ”Qianwen” / “Thousand Questions” (not actually an animal) | Alibaba |
| Gemma | Gem / jewel (not an animal) | |
| Namazu | Catfish | Sakana AI |
Meta kicked off the whole trend by naming its model Llama, and that made other camelids like Alpaca and Vicuna the default suffixes for follow-up models. Sakana AI, a fish-themed company, shipping Namazu feels like a way of staking out a namespace by species.
Oddly enough, there still is no “Dragon.” Maybe it is too cool to be used casually. DragonFly BSD, Dragon NaturallySpeaking, and Qualcomm Snapdragon all exist, but Snapdragon is actually named after the flower snapdragon, not a dragon, so the dragon factor is weak. No major LLM has claimed the dragon name yet.
There are also names that are just unpleasant. CockroachDB is named for its resilience, the “kill it and it still lives” idea. But every time I hear it, I still cringe a little. By the same logic, Tardigrade or Hydra could have worked, but neither has quite the same punch as Cockroach.
The Renamed Ones
Some names collided badly enough that the project had to change its name.
- SageMath was renamed from Sage after a trademark dispute with the accounting software Sage.
- Mocha became LiveScript, then JavaScript. Its identity shifted with every rename.
- GIMP has kept its name despite repeated complaints that the English slang meaning is unfortunate. Strong stuff.
When Big Money Solves the Problem
Large companies do not always care if the name is already taken. They ship first and settle later with money.
Apple’s “iPhone” was already a trademark owned by Cisco, acquired through Infogear in 2000. Cisco was already selling a VoIP phone under the iPhone name through Linksys. Apple had been negotiating with Cisco for two years, but when no license deal was reached, Steve Jobs announced the iPhone at Macworld in January 2007 anyway. Cisco immediately sued for trademark infringement, and the two companies settled the next month. The agreement allowed both sides to use the iPhone name, but the financial terms were not disclosed.
The same thing happened with the iPad. Fujitsu had applied for the “iPad” trademark in 2003 for a retail device. Apple announced the iPad in January 2010 and bought the mark from Fujitsu in March, reportedly for about $4 million, just one week before launch.
iOS was also a Cisco trademark. Cisco used iOS for “Internetwork Operating System” on its routers, and the iPhone settlement reportedly included a license to use the iOS name as well.
That is three collisions for Apple alone. Maybe the cost of legal cleanup is still lower than the cost of inventing a truly new name.
UNIX Commands as a Cipher
Separate from name collisions, UNIX commands are often so abbreviated that they are basically cryptograms. They come from the teleprinter era, when every keystroke mattered, but they are opaque to anyone seeing them for the first time.
| Command | Full name | What it looks like |
|---|---|---|
grep | Global Regular Expression Print | Some kind of grabbing tool? |
awk | Aho, Weinberger, Kernighan | The initials of three authors. Even the pronunciation is unclear. |
sed | Stream Editor | Sediment? |
cat | concatenate | A cat |
tee | A T-shaped pipe split | Tea? Golf? |
dd | data duplicator (one theory) | Some say it comes from IBM JCL’s DD statement. The origin is not settled. |
tac | cat backward | Reverse of cat, so it prints in reverse order. Literally that. |
less | a better more | ”less is more” as a joke |
cron | chronos (time) | Just four letters if you do not know the origin |
sudo | superuser do | Easy to confuse with “pseudo” |
ls for list, cd for change directory, and rm for remove are guessable. grep and awk need background knowledge and are basically passwords.
The Numbers-In-The-Middle Trick
There is a shorthand that keeps the first and last letters of a long word and replaces the middle with a number.
| Form | Original word | Meaning | Letters omitted |
|---|---|---|---|
| i18n | internationalization | Internationalization | 18 letters between i and n |
| l10n | localization | Localization | 10 letters between l and n |
| k8s | kubernetes | Container orchestration | 8 letters between k and s |
| a11y | accessibility | Accessibility | 11 letters between a and y |
| o11y | observability | Observability (logs, metrics, traces) | 11 letters between o and y |
| c14n | canonicalization | Canonicalization | 14 letters between c and n |
| m17n | multilingualization | Multilingualization | 17 letters between m and n |
i18n and l10n are completely standard in localization work. By the time you get to o11y and c14n, though, you need insider knowledge. a11y is common in accessibility circles, but because it also reads like “ally,” people sometimes joke that the spelling is intentional.
k8s is probably the biggest success story. Kubernetes comes from the Greek κυβερνήτης, meaning “helmsman,” and it breaks English spelling expectations. “Kube” is manageable; the rest is where brains stall. Different people read it as ku-ber-netes, koo-bah-netes, or something else entirely. It is hard to read, hard to spell, and long, so k8s was inevitable. The downside is that if someone says “K-eight-s” out loud, you still may not know what they mean.
Names That Are Hard to Read
Some names are not colliding with anything. They are just hard to read or impossible to explain.
| Name | Pronunciation | Origin |
|---|---|---|
| Nginx | engine-x | Short for “engine x.” Nobody reads it correctly on sight. |
| PHP | pee-aitch-pee | Originally “Personal Home Page,” later “PHP: Hypertext Preprocessor.” A recursive acronym. |
| GNU | gnu | ”GNU’s Not Unix.” Another recursive acronym. People still argue whether to say “gnoo” or “gnu.” |
| YAML | yam-el | Originally “Yet Another Markup Language,” later “YAML Ain’t Markup Language.” Recursive again. |
| Kubernetes | koo-ber-netes? | See k8s above. |
| pytest | pie-test | Whether to say “pie” or “pee-why” becomes a whole debate once PyPI is involved. |
| macOS | mac-oh-ess | The old Mac OS X era brought endless debates over whether X meant ten or ex. |
| Vercel | ver-sell | Nobody agreed on the pronunciation until the company clarified it. |
| Deno | dee-no | A Node anagram. Some people still say “de-no.” |
| Supabase | soo-pah-base | ”Super + base,” but the spelling invites all kinds of misreadings. |
Recursive acronyms like PHP, GNU, and YAML are a little joke where the expansion contains the acronym itself. Very hackerish. Also very unhelpful when someone asks, “So what does it stand for?”
My favorite naming story is MySQL and MariaDB. The “My” in MySQL comes from Michael “Monty” Widenius’s daughter My. After Oracle bought MySQL, the fork became MariaDB, named after his other daughter, Maria. Two daughters, two major databases.
Why Do These Collisions Keep Happening?
Tech names collide because the pool is small.
- Short, catchy English words are finite. Animals, gems, mythic creatures, and celestial names run out quickly.
- OSS projects often do not register trademarks, so they lack strong exclusive rights.
- People assume different fields will not overlap. Copilot is a good example of that assumption failing.
- npm and PyPI package names are first-come, first-served, but product names have no such global system.
Phil Karlton’s classic line still holds: there are only two hard things in computer science, cache invalidation and naming things. Thirty years on, naming is still a mess, and as long as LLMs keep multiplying, the animal names will eventually run out too. Which species gets sacrificed next?
If you want to brainstorm names yourself, I built an IT Product Name Generator. It also checks whether your idea collides with an existing name.