Software Team

Lost in Translation: My British vs American English Coding Conundrum

3 min read

Ever found yourself lost in a maze of code, searching for a variable that should be there but isn't?

As a developer, I've faced my fair share of challenges; some of them were huge technical concerns, and others were just as tiny as inconsistencies around the codebase. One example of the latter is one sneaky as the day British English infiltrated my American codebase. Let me tell you a story that might save you from pulling your hair out over a misplaced 'u'.


It all started with a seemingly simple task: I needed to call an endpoint related to user favorites. Easy, right? I was told by a teammate the backend was ready for my new API call so I confidently wrote my call to the specific endpoint but I received an error. I checked my code and nothing weird suggested I was doing something wrong so I searched our backend codebase for "favorite", certain I'd find what I needed in seconds. Some frustration mounted as my search came up empty. Little did I know, I was looking for a word that didn't exist.

The twist? On the other side of the office - or Slack, more accurately - my British teammate had built the endpoint without a second thought. He had typed user_favourites, committed it with pride, and moved on to his next task. In his world, nothing was wrong. From where he sat, the endpoint was there, spelled perfectly, working flawlessly.

Two developers. Two correct spellings. One invisible wall.

It took a casual "hey, did you find the endpoint?" message to crack the case. When he replied with a screenshot showing favourites in all its British glory, I had one of those debugging moments where you can't quite decide whether to laugh or cry - a bug that wasn't a bug, caused by no one's mistake, that had cost the better part of an afternoon.

You see, while computers don't care if we write "color" or "colour", "favorite" or "favourite", we humans most certainly do. It's almost comical - here we are, working with machines that can process billions of operations per second, and we're tripped up by a wayward 'u'. It's like training a dog to fetch using two different words and wondering why it looks confused half the time. Except in this case, the dog is a highly sophisticated piece of technology, and we're the ones chasing our tails.

This linguistic divide can manifest in various ways:

  1. color vs. colour
  2. analyze vs. analyse
  3. theater vs. theatre
  4. customize vs. customise

While these differences might seem trivial, their impact is anything but:

  • Decreased searchability: Try finding a needle in a haystack when you're not even sure what the needle looks like.
  • Team confusion: Imagine playing telephone, but every other person speaks a slightly different dialect.
  • Inconsistent APIs: It's like using a keyboard where some keys are in QWERTY layout and others in AZERTY. You'd constantly be second-guessing your typing.
  • Maintenance nightmares: Future you (or your colleagues) might spend hours debugging, only to realize it was a spelling 'error' all along.

So, how do we solve this Anglo-American linguistic standoff? Here are some strategies I've adopted:

  1. Establish clear naming conventions: Have your team know explicitly which English variant to use;
  2. Use linters: Let tools do the heavy lifting of enforcing consistency.
  3. Team discussions: When working with international teams, make language standards a part of your project kickoff.
  4. Document exceptions: If you must mix spellings for any reason, document it clearly.
  5. Search smarter: Use regex or fuzzy search tools that can handle spelling variations.

Remember, the goal isn't to reignite the Revolutionary War over which spelling is "correct." In the world of computer science, consistency is king (or queen, depending on which side of the pond you're on). By addressing this issue head-on, you can save yourself and your team from the frustration of linguistic wild goose chases.

Ultimately, whether you favor "favorite" or "favourite," the most important thing is picking one and sticking to it. After all, in programming, as in life, it's good to be consistent - even if it means consistently adding (or omitting) a few extra 'u's.

Back to all posts

About António Eloi

António Eloi

I'm a software engineer based in Portugal with over 7 years of web development experience. I'm passionate about creating software that solves real-world problems and enhances people's lives. Over the years, I have worked both in-office and remotely with individuals from various countries, time zones, and cultures, allowing me to develop strong communication and collaboration skills. Currently, I am part of a great team called Park where we bring solutions to campground management that is both simple and free.