You may or may not be familiar with the term “polyglot” (I am going to guess the latter). The term is derived from the Greek poluglottos, meaning “many-tongued”. A person is considered to be a polyglot if they speak many different languages. The English language itself is considered to be a polyglot, because while it is structurally a Germanic language based on the Anglo Saxon’s Old English, it draws heavily on vocabulary from Greek, Latin, and French.
The building blocks of an individual web page are specified in HTML, and the presentation of these blocks is generally controlled with CSS (Cascading Style Sheet). While you can create great looking websites with just these tools, they don’t really allow the developer to create dynamic websites. Suppose a developer wanted to display the current date with only HTML and CSS. They would have to edit an .html file and hard-code it. That works, but they would then have to edit that file and update this text every day at midnight to be accurate.
Suppose the developer wanted to display a video on the website. To maintain compatibility across browsers, they would then use Flash or another plugin to embed this content. And let’s say the website has some sort of Content Management System, as do most of our sites. They would then create a database to store this content, and she would write dynamic SQL statements to insert, retrieve, update, or delete this content.
Is this necessary? Recently, there have been tools such as the Google Web Toolkit and the Eclipse Rich Ajax Platform which allow the bulk of web development to be done in Java. Should we therefore take advantage of these tools?
Consider the historical ubiquity of a world language or lingua franca. During antiquity, this language was Greek; during the 18th century, it was French, and today it is English. Perhaps there should be a universal programming language which all developers could use to communicate with each other. If there were one language for web development, developers could become experts in this one language, and there might be more people qualified to build web applications.
On the other hand, is it really necessary to use Java for controlling the look and feel of a website, and is it reasonable to expect designers to learn it? Isn’t it better that on a team, the front end developers, back end developers, and designers can each have their own tools that they can become adept with? Perhaps it’s best that we have many different tools to work with, each well-suited for the task at hand.
How many toungues does your web team possess?