web 2.0

What Defines a Great Programming Language?

Software developers are very passionate about the programming languages that they use. For example a C++ developer will tout that C++ is the "grandfather of all programming languages". A Java programmer will tell you that Java is the best because they "write once and deploy anywhere". A C# programmer will tell you that they have better garbage collection than Java, no pointer nightmares like C++ and a powerful IDE which allows them to concentrate on real business problems rather than the basic plumbing.

So what makes a programming language great? In the end, I guess it really boils down to personal preferences. The important thing is that you don't allow your personal biases to dictate your solutions. Some people get so wrapped up in the language wars that they will use a tool even if it is the wrong one for the job. I have seen people make languages do things that they were really not intended for. Sometimes this is cool but in most cases this translates into unmaintainable code, bugs and an angry end user.

At my last job we actually had a guy who refused to code unless he could use Borland Delphi. The 90's were the heyday for scripting languages like PHP, Coldfusion and classic ASP. This was well before the days of Ruby and ASP.NET and AJAX was something that your mom used to clean the tub! In any case, going back to my story, we had a new web application to develop and my co-worker insisted that we develop it by creating an ISAPI (Internet Server API) application in Delphi. An ISAPI application basically allows you to hook into a web server (which in our case was IIS) and it gives you the ability to write custom tags. The same way that everything surrounded with "<%" tags in ASP gets replaced on the server side and returned as HTML to the client. In the end we ended up creating something that was already available with ASP, PHP and Coldfusion. We could have accomplished the same task in a quarter of the time if we only would have used the proper tool.

In my humble opinion, the thing that really makes a programming language great is the person using it. You may be able to develop the same application in six different languages but chances are there is one language that is better suited for the job. Don't be afraid to try something new. Jump on that Ruby bandwagon but don't be afraid to whip out your Iron Pythons every once in a while! LOL. Learn as many languages as you can and discover the strengths and weaknesses of each one. In the end you will be a better programmer for it.

Tags: , ,

Comments are closed