Server-side programming involves writing code that connects web pages with databases, XML pages, email servers,
file systems, and other systems and software accessible from the web server. The most common server-side languages and
programming frameworks are ColdFusion,
Java Enterprise Edition, ASP.NET, Python, PHP, and Node.js.
ColdFusion, created by Allaire (now owned by Adobe), is arguably the simplest of all server-side languages.
It is tag-based, which makes it look a lot like HTML and easier for client-side programmers to understand than some of the other choices.
Because of the relative ease with which it is written, ColdFusion is sometimes assumed not to be so powerful. In fact, ColdFusion code is
compiled to Java bytecode, which means the pages run quickly. Web developers can accomplish virtually any required task using the
ColdFusion Markup Language (CFML). However, as ColdFusion can easily be integrated with Java applications,
developers have the choice of using Java to extend ColdFusion applications.
Java EE is used in large web projects. With its power and robustness comes a steep learning curve. Java EE is defined by its
specification and API.
A Java Application Server (Java AS) manages servlets, JavaServer Pages (JSP), Web Services, and Enterprise JavaBeans (EJB). Java EE also includes a number of
other APIs commonly linked to enterprise application development. JDBC, JPA, e-mail, JMS, and XML are some examples.
But that's only part of the picture. There are a number of frameworks built on some of these technologies that streamlines the development process further.
Hibernate offers most of the object/relational mapping (ORM) without an EJB Container. For this reason it's called a lightweight ORM technology.
JavaServer Faces, Struts, and Spring-MVC build on JSP to do away with scriptlets completely, relying on HTML style tags and associated JavaBeans.
Microsoft's ASP.NET is not a language, but a framework for writing websites and software.
Like ColdFusion and JSP (and unlike traditional ASP) ASP.NET pages are precompiled, so they run
faster than traditional ASP pages do. ASP.NET pages can be written in many languages, but the most popular are C# (pronounced C-sharp) and
Visual Basic .NET (VB.NET).
Like Perl, Python is open source. Python has been a popular programming language for a long time; it runs on commonly used web servers such as Apache.
Like Python, PHP is open source. It has rapidly become a popular alternative to the proprietary languages such as ColdFusion and ASP.NET.
PHP is lightweight, relatively simple to learn, and runs web servers such as Apache.
Although Node.js can be run on a web server like Apache, HTTP servers can be written using Node.js.