7 of 10

Hottest programming language trends among developers

by Not Writing

"Hottest" is a term which is as much open to interpretation for computer languages as it is for, say, popular music. Ask someone which is the "hottest type of music" and they will usually answer in line with their own tastes and assessments of rewards, celebrity and visibility. The same goes for computer languages. It is important to recognise that such a pronouncement necessarily embodies a world-view: X is hottest amongst group Y as far as Z is concerned. If Z is a member of Y, the statement "X is the hottest amongst group Y" can become "X is the hottest".

Currently, the most visible manifestation of computer programming is the medium you are using now, the internet. In particular, the use of a Web Browser. So what's the "hottest" computer programming language for Web Browsers? Unfortunately, there isn't a single answer; it really depends what you want to do with the Web Browser:

• You want to write a Web Browser (or, at the very least, contribute to the development of existing Web Browsers). The "hottest" (and only) language is C/C++ (I group these together).

• You want to create and add-on for a Web Browser (an ActiveX Control or similar). Again, C/C++. Although, for Microsoft products, C# maybe good.

• You want to write client-side code for "cool" website effects. Javascript (a.k.a. JScript, ECMA-Script) is the only reasonable alternative here (unless the site is entirely "in-house" and you can guarantee 100% Microsoft Internet Explorer usage, then VBScript is usable).

• You want to write client-side applications with lots of controls and flashy graphics. Only Java does this at the moment.

• You want to write server-side code. Now things split up a lot more. This will depend on the server. If the server's Microsoft's IIS, then you'll be looking at C/C++ (if the server element is an ISAPI extension) or VBScript/JScript for script based applications. Other server environments may require Java, PHP or other languages. And, if you're serious about this, and want to use any reasonable database system, you'll have to learn SQL as well. Oh, and you'll need a reasonable understanding of HTML and CSS. And, probably, XML.

And that's just for programming things associated with Web Browsers. If you moved into other application areas you would find that other languages are the "hottest". There are hundreds of active computer languages and many more "dead" ones (but the code they produced may still be running somewhere).

Some of the reasons for languages being "hot" are historical (FORTRAN is still found amongst mathematicians because it was the "first" high-level language and was designed for use by mathematicians). Others are pragmatic: the reason C (and, because of this, C++) is common, is because the compilers are, in general, much easier to write than they are for more complex high-level languages. Go into many large organisations with long histories in computing (more that 25 years) and you'll find that COBOL (or, perhaps, PL/1) is still used. This latter may not be "hot", but you could probably ensure yourself a long and successful career maintaining old systems if you learnt some COBOL. A C++ programmer who can understand COBOL will find it easier to integrate a new super-application with an old, existing system than one who thinks COBOL isn't worth learning because it isn't "hot".

The idea that a single computer language can be "hot" (and, therefore, the only one anyone needs to learn to make a killing in the industry) is just another another batch of snake-oil. People are always looking for get-rich-quick schemes and, unfortunately, seem gullible enough to fall for them. The only people who get rich quick from get-rich-quick schemes are the people who operate those schemes. Learning one computer language will not make you rich quickly. Nor will it make you a celebrity (for long). It might give you some kudos amongst your immediate contemporaries, but it won't last. Learning a computer language is not the same as learning how to program computers.

The best advice is, learn lots of computer languages. You never know which one you'll need. But, above all, learn how to program.

Helium, Inc.
200 Brickstone Square Andover, MA 01810 USA