Standardization of language

I recently had the opportunity to listen in on communications between air traffic controllers (ATC) and pilots in Québec, a Canadian province where French is the dominant language but English is also spoken. Pilots initiated communication in the language of their choice, and the ATCs would respond and continue providing updates in that same language.

For many years, English had been the unofficial language of air travel, and in 2001, the International Civil Aviation Organization (ICAO) standardized on English. Pilots are now required to pass an English proficiency test to fly. So I was surprised to hear any French spoken over the radio even though we were in Québec.

English is also the official language for space travel. However, when NASA ended their Space Shuttle program 10 years ago, Russia's Soyuz spacecraft became the only way to travel to the ISS, and everything aboard the ship was written in Russian. Thus, astronauts were required to be nearly fluent in Russian to fly. Many have claimed that learning Russian was one of the most difficult parts of their space training.

In programming, there is no standard language. No one is required to pass a proficiency test before they're allowed to code production-level software. But even without a standard, English is clearly the lingua franca of the computing world. Early computers were limited to Latin alphabet characters for technical reasons, and today's most popular programming languages base their keywords off of English vocabulary. Native English speakers have a clear advantage when learning to code.

Non-English programming languages

I did a little research and learned that not all programming languages are based on English. Wikipedia has an extensive table of such programming languages. It was nice to see programming languages based off of widely-spoken languages such as Chinese and French, but I was also delighted to find programming languages based off of less well-known languages like Tagalog and Tamil.

At some point, I want to learn enough of another language to be able to code in one of these programming languages.

Yet other languages take the non-English angle to an extreme. Whitespace is a programming language that ignores any non-whitespace character, and Piet is a programming language based on bitmap images. Clearly, these languages are meant to be jokes, but on the other hand, they're more accessible by not being based off of a spoken language. That's a weird thought, isn't it?

Multilingual programming languages

Even more interesting than programming languages built off a non-English language, I learned that some programming languages are multilingual. Scratch, a language specifically written to teach children how to code, supports a variety of languages to eliminate some of the obstacles that hinder children from learning the fundamentals of coding. Excel (and Google Sheets!) allows formulas to be written in over a dozen languages. For example, either of these variants (one in English and the other in Spanish) of the IF formula is acceptable:

=IF(A1>2010, "Recent", "Old")
=SI(A1>2010, "Recent", "Old")

Even Wikipedia's markup language supports multiple languages. Some features are based only on symbols (e.g. [[link]] to denote a link) while word-based features can be written in the editor's native language.

With time, I wonder how programming languages will evolve. Will Chinese begin to dominate the computing space as the number of Chinese speakers in the world grows? Will English continue to prevail? I'll have to wait and see.