Monday, August 24, 2009

English mastering for the average developer

English is the ruling language in the Internet. While many websites are localized for various cultures, the English language is the lingua franca for international business: let's take a look at how it pervades the Information Technology world and why an engineer should master it.

This blog is written in English as it is scoped for the entire world, particularly the American following, despite being managed by an Italian developer like me: I started this project also to master the language and improve my reading and writing capabilities.
However, [International] English predominance is reflected since the origins of computing: the first 128 Ascii codes can represent all the combination of english words and classic Qwerty keyboards are built with this standard 100+ keys set. Today UTF-8 still mantains compatibility with the first part of Ascii, while the encoding of diacritics mark change with the chosen character set.

English keywords are also the base of all the mainstream programming languages: for and while are reserved in every imperative language and Java libraries and C/C++ standards are written in English code. Not only the imperative languages are designed in English, but also declarative ones like html and css: the main tags of this page are head and body, which are common words.
Some technical words have ridiculous or no direct translation in other european languages: the Italian implementazione is mutuated from implementation and I assure you that it sounds very strange. Other neologism are directly imported as-is without trying an unplausible translation: radar and laser are English acronyms.

Many web applications are available in an English version first and are later localized to support user from all over the world. Also a large part of Internet material is written and consumed in English (automatic translations are still not a good deal): free and non-free ebooks are distributed in English. Leaving out the web, English is the lingua france of engineering documents like data sheets and technical specifications: Politecnico di Milano requires a foreign language exam (usually substained in English) before a student's graduation.

Finally, open source communities, which supports projects like Ubuntu, adopt English as the official language, while there are smaller communities and forums localized in Spanish, Chinese, Russian. Documentation is sometimes translated in more than one language, but keeping updated a manual in 10 languages is an hard task and I always use the English version of the php manual. Some documents, like W3C specifications or licenses, have no value in the translated version and must be used in the original English form.
I hope I have convinced you that English mastering is a fundamental skill for a software developer: I live in Italy and I speak Italian as mother tongue, so you can trust I am not Cicero pro domo sua...


Anonymous said...

Complimenti, you write very well in English. I would note that while radar and laser may have been adopted w/o translation into Italian, they are pronounced differently, as RAH-dahr (vs. RAY-dahr) and LAH-zare (vs. LAY-zuhr).

Andrea Cerisara said...

You' re absolutely right. Do you have any suggestions to improve English skills?

Matt said...

"Mastering English" rather than "English Mastering", by the way.

Federico Grilli said...

I fully agree with you on the importance of mastering English in our trade or in any technology-science related field, for that matter. If you do not know it well, you are cut off from the world-wide community of technology and science with obvious negative consequences. I would even go further and say that English should not only be a fundamental part of the curriculum but, at least in science-engineering faculties, it should have as much weight as, say, calculus or biology.
@Andrea: of course, mastering a foreign language involves different skills (listening comprehension, reading, speaking, writing). The obvious answer is to practice all of them as much as possible, for example by watching movies or tv in the original (perhaps with the help of subtitles) and not dubbed as we do in Italy, reading books (not only science or tech books, which are relatively limited in lexicon) in the original, etc.

Giorgio said...

@Andrea: I currently read only English books and write notes and posts in English. The listening and speaking part are more difficult to train and you should choose the right sources: for instance news and songs are awful to listen because of speech speed and slang usage.

Andrea Cerisara said...

@Giorgio: no problems with reading because it' s a must have skill for developers (I' m a developer too), and I exercise writing on my personal blog ( Listening and speaking are more difficult: at the moment the best source I found is the BBC learning site with related podcasts.