If HTML5 Were British
If you've been around programming circles long enough, you'll probably have read the seminal "If PHP Were British". If not, go read it now. I'll wait.
I love the idea of a non-American programming language. I'm aware that there are some, but I'm unaware of any which are in British English. Except, perhaps, BBC Basic. Although that also allows traitorous American spelling for some keywords.
HTML was invented by a Brit (Hi Sir Timbl!). So why doesn't it use British spelling for everything?
Well, I guess, the answer is... it mostly does!
Looking through the big list of HTML elements only one is noticably in American English. The <dialog>
element was introduced reasonably recently in HTML 5.2. I would love to know if there were any late-night arguments about whether it should have been dialogue...
In the obsolete element section we find the much-missed <center>
. Perhaps, in an alternate timeline, it was named centre and is still in use today?
Center has a curious history.
CENTER
was introduced by Netscape before they added support for the HTML 3.0DIV
element. It is retained in HTML 3.2 on account of its widespread deployment. HTML 3.2 Reference Specification - 1997
You can read some of the original arguments discussions from the early 1990s.
CSS was invented by Håkon Wium Lie with CSS version 1 specifying the spelling color
. As Håkon was Norwegian, I suppose we could have ended up with farge
. That might have been nice.
Perhaps that's what the World-Wide Web needs. HTML elements which are not in English. There is no technical limitation why we can't have an <电影>
element. Or a CSS property of نطاط
British English is the best. But I only think that because it is what I've grown up with. English is the world's most popular second language. But it won't be long before Chinese catches up to the total number of speakers. Is it fair to make new web developers learn an entirely new human language while they struggle with learning a new computer language?
I constantly find myself typing colour
when I mean color
- does a Hindi speaking developer want to be able to program in their preferred language?
Why can't an HTML document start <!DOCTYPE html ፊደል>
and then have all the elements written in Geʽez script?
I know you think this is too hard to achieve. But part of the job of computer scientists is to work out how to make computers do the hard work for us. Humans shouldn't adapt to a computer's needs; the computer must adapt to ours.
Alex Gibson says:
100% agree with the basic point - and the English (simplified/US) hegemony can be frustrating. Your computer doesn't know what 'English' is - it's just a set of defined code words, and could be interchanged. Computer languages vary considerably but actually the words used are rarely contradictory and they are a small dictionary mostly shared between many languages. It would be nice to see something like a language abstraction layer agreed upon. Eventually this could work like you say - as long as the code is correctly written for that language variant of the syntax it would work with any interpreting software (e.g. browser) that included this facility - which would not be huge or processor intensive. But it would be a good start if in local IDEs, text editors, compilers, the user could choose to have software they are editing translated into their language, edit it, and then save out in English (US). I don't bother any more but I used to have a very simple script to idiot-check my OpenSCAD code and 'correct' centre to center, colour to color, etc... I could have it autocorrected in some text editors, but would be nice if it was more universally implemented.
Laurence B says:
I love this idea. Having to code in another human language must be a barrier to so many.
Henry Dashwood said on twitter.com:
Re British English programming languages, the two I can think of are Haskell and Unity's scripting API. But they are both inconsistent with it.
Of course "American spelling" actually "British" as well en.wikipedia.org/wiki/Oxford_sp…
Mark Hurrell said on twitter.com:
the majority of coding languages are in english, which gives the tech industry some big colonial vibes imo en.wikipedia.org/wiki/Non-Engli…
Joe Lanman said on twitter.com:
one thing that's fascinating, Arrival-wise, is different grammar. English leads to certain grammar in programming that lets you express and achieve certain things, what could other languages grammar do?
💥Kelv💥 said on twitter.com:
I love Ruby’s emphasis on being readable. I’ve been working in Python recently (new to me) and miss Ruby so much for its concise clarity.
Matt Hobbs said on twitter.com:
Bringing in multiple languages into HTML elements... eek! Many developers seem to struggle with how to markup a button!
You really are living up to your "Digital Troublemaker" bio on Twitter @edent 🤣
Django Blais says:
I totally agree. I'm glad to see that the W3C world still has this view of things. That is to say standardize and above all internationalize!
That said, a language is cultural, it influences the meaning of ideas, it even influences the way of thinking. Some languages have nuances that others don't... I am translating this text and I am probably in the field in many respects and yet I read daily in English and try to avoid expressions, allusions and all that related to my culture...
Unlike metric versus English systems, apostrophes and quotation marks, daylight saving time, etc. which could be normalized (with a lot of effort). I once wrote a post about the prestigious French Academy that used three different types of apostrophes in the same web page! These French language specialists even used English quotation marks!! The road will be long. But that's still a lot of standards that it would be much easier to standardize on a global scale with a little courage and initiative than the language of a programming language!
What I mean is that before arriving at this utopia, there is a world to change! Starting with internationalization. We will have to really assimilate Unicode instead of simply patching programs with lookup tables. One finds everywhere, particularly in the English-speaking world, applications, server components, etc., which do not yet support UNICODE out of sheer ignorance, but above all because of the cultural fact that Unicode takes 2 times (.. .4 times and more) more memory than the good old Windows character set! And yet Unicode is a standard that has existed for decades (1991)!
Even a web page, we still find a bunch of HTML entities instead of a well encoded UTF-8 page, still not pure misunderstanding of the encoding. And what about programming! Programming with regular expressions, encryption, there are still several programming tools completely incompatible with UTF-8, etc. And what about the Big and Little Endian Byte Order!!
While waiting for a true dialogue, just to think about it, this kind of treatment and exceptions will undeniably increase the workload of the compilers and the energy expenditure. Finally, making a 180 degree turn of the world of programming languages is a desert crossing, a wishful thinking and a probably impossible undertaking in my opinion.
Besides, the sympathetic "Semantic Web" is an expression that does not hold water 😉
That said, please give the Nobel Prize to Sir Tim; -)