August 05, 2005
Java is Not a Web Application Language
It seems that everyone is on the Java bandwagon nowadays. Along with XML, it is something that every project coordinator wants to use in his product, no matter what the product may be. Some applications should NOT be written in Java. Web applications are one class where this holds true.
After writing a web application in C++, I said there is no worse popular programming language for a web application. When Java arrived and was herralded as the language to end all languages, I never thought it would challenge C++ for this honor. Well, it has. After spending the whole day yesterday bringing up a Tomcat installation and attempting to install CAS, an alternate single sign-on to possibly replace our current Pubcookie implementation, I am sold. Java is great for multi-platform portability, but for web applications, I'll stick to my runtime interpretted languages such as PHP, Python, and Perl.
The benefits that Java offers for the average web application are few and far between. Why would I write a web application (something that is highly likely to require change in a production environment) in a compiled language? Runtime interpretted languages have the benefit of being instantly changed without recompiling and performance is barely slower. Their memory footprint is significantly less. What's more is that many of these languages are either designed specificially for web development or have easy-to-use modules for web development. Writing a web application in Java is just overengineering the solution.
Java is great for many applications, don't get me wrong. But for the average web application (one that isn't your multi-million dollar corporate product), Java should be avoided at all cost. Stick to an interpretted language. The clients will thank you in the end.
Trackback
You can ping this entry by using http://blog.case.edu/gps10/mt-tb.cgi/2099 .