Skip to content
DevMeme
1515 of 7435
Boolean Naming, Canadian Edition
Languages Post #1695, on Jun 12, 2020 in TG

Boolean Naming, Canadian Edition

Why is this Languages meme funny?

Level 1: Asking With A Name

This is like labeling a light switch IsOn so everyone knows it answers the question "is the light on?" The joke changes the label to OnEh, pretending Canadians ask the question in their own funny way. It is funny because a tiny word at the end turns a normal code name into a cultural joke.

Level 2: Boolean Names

A boolean is a value that is either true or false. Because booleans answer questions, developers often name them with words like is, has, can, or should. For example, IsVisible means the value tells you whether something is visible.

The meme compares MyObj.IsVisible with MyObj.VisibleEh. The first is a normal programming style. The second is a joke based on the Canadian expression "eh." It pretends that Canadian programmers would put Eh at the end of a boolean name instead of putting Is at the beginning.

For newer developers, the useful lesson is that readable names matter. A variable name should help someone understand the code without opening five other files. This is especially important in international teams, where people may speak different native languages but still need one shared code style. The joke is silly, but the underlying topic is real: code is communication.

Level 3: Predicate Localization

The screenshot shows the closed Stack Overflow-style question Do people in non-English-speaking countries code in English? [closed], then an answer joking about Canadian boolean naming. The answer says the writer had to get used to boolean variables with an "Is" prefix instead of the "Eh" suffix, then gives the examples MyObj.IsVisible and MyObj.VisibleEh. That is a tidy little naming-convention pun wearing a winter coat.

The technical joke depends on boolean predicate naming. In many codebases, booleans are named like isVisible, hasChildren, canRetry, or shouldRender because the name should read like a yes/no question. MyObj.IsVisible means "is this object visible?" The fake Canadian version, MyObj.VisibleEh, turns the same idea into a stereotype of Canadian speech, where "eh" is tagged onto a sentence to invite agreement. The result still sort of reads like a predicate: "visible, eh?"

The senior-level layer is that naming conventions are not cosmetic. They encode how a team thinks. A good boolean name tells future readers what condition is being tested and what truth means in that context. Bad names like flag, status, check, or visibleThing force readers to inspect implementation details. When code crosses teams, countries, and languages, naming gets even more political: English tends to dominate programming APIs, but not every developer thinks in English first.

That is why the surrounding question matters. The meme is not just making fun of Canada; it is using a silly Eh suffix to point at a real industry habit. Programming languages may allow identifiers in many scripts, but teams usually choose English for shared readability, library consistency, hiring mobility, and searchability. Then Stack Overflow arrives, asks a serious cultural question, and the highest-energy answer says, in effect, "we localized the predicate marker." Honestly, standards committees have shipped worse.

Description

A Stack Overflow-style page shows the closed question "Do people in non-English-speaking countries code in English? [closed]" with tags "programming-languages" and "spoken-languages" and a header showing "108 Answers" and "order by votes" with pagination. The visible answer, scored "88", says: "I'm from Canada, but live in the States now. It took me a while to get used to writing boolean variables with an \"Is\" prefix, instead of the \"Eh\" suffix that Canadians use when programming. For example:" followed by code-like lines "MyObj.IsVisible" and "MyObj.VisibleEh". Lower UI text includes "share", "follow", "2 revs, 2 users 94%", "AlishahNovin", "community wiki", partial edited text "Oct 25 '11 at 21:3", and comments reading "This is a joke, right? - Philip Jun 10 '11 at 19:09" and "It better be, but its pretty funny. - HelloFictionalWorld Sep 16 '11 at 2:44". The humor is a naming-convention pun that mixes boolean predicate style with Canadian speech stereotypes.

Comments

1
Anonymous ★ Top Pick The real bug is not `VisibleEh`; it is discovering your style guide has a locale setting.
  1. Anonymous ★ Top Pick

    The real bug is not `VisibleEh`; it is discovering your style guide has a locale setting.

Use J and K for navigation