The Development Language Debate

February 12th, 2009

The debate over which development language is the best is a discussion that will never end and really doesn’t have an answer. In actuality, all of the major languages are strong, perform well and have a large pool of developers that a company can tap. The real question that needs answered though is ‘What language is the best for your company’s environment and application?’

I will start with a brief history and background in this post of each of the major development environments in use today, .NET, Java and PHP (along with a very brief overview of ColdFusion and Ruby on Rails). I will then delve into the strengths and perceived weaknesses of each of these languages individually over the course of the next several posts.

.NET

.NET is Microsoft’s software development platform with version 1 being released in early 2002. C# is the flagship programming language for the .NET development environment (which also includes VB). Both .NET and C# had their beginnings in the late 1990’s. C# was designed to include a set of extensions to the C++ programming language and was designed to compete directly with Java. This was a result of Microsoft seeing many developers moving to Java and the loss of a related lawsuit with Sun when Microsoft failed to comply with their Java license. In essence, C# is built on the fundamentals of Java and was principally aimed at leveraging the desktop dominance they had to retain developers who were considering migrating to Java.

PHP

PHP started as a set of Perl scripts in a personal project to track access to Web pages in 1995. As the amount of functionality increased, the author rewrote his Personal Home Page tools in C, eventually releasing it to the open source community. In 1997 PHP 2 was released in beta. About this same time a different set of developers found the functionality lacking for their application and undertook a complete rewrite from scratch, teaming with the original author, Rasmus Lerdorf, to release PHP 3 in 1998. PHP’s popularity was catching on and now extended to approx. 10 percent of all Web servers. Version 4 was released in 2000 with an additional set of features and functionality, including the new Zend engine. Released in July 2004, PHP 5 was a continued maturation of the language and included a full set of object-oriented features.

Java

Java (not to be confused with JavaScript) is a product of an early 1990’s group of Sun engineers led by James Gosling, created the programming language for use in a union between digital computing devices and computers. It promised a ‘Write Once, Run Anywhere’ architecture, providing no-cost run-times on most platforms. While this was a concept before its time, it was perfect for the internet which was just beginning to take off. Sun released Java 1.0 in 1995, the same year that Netscape incorporated Java into its Navigator browser. The language derives much of its syntax from C and C++ and was designed to run on any Java virtual machine regardless of hardware. As major web browsers incorporated the ability to run Java applets within web pages, Java quickly became popular. Java 2 (released initially as J2SE 1.2) was released in December 1998 with different configurations for different platforms where J2EE targeted enterprise applications. In May 2007 Sun made available most of their Java technologies as free software under the GNU General Public License.

In my next post I will briefly discuss ColdFusion and Ruby on Rails.