While most web developers share the same goal of bug-free, functional, usable web sites, there are several programming languages developers can use to reach that goal. Let’s compare the major programming language choices available to the modern web developer.
Programming languages are broken into two categories—server side languages and client side languages. The browser on the users’ computers interprets client side languages. Web developers will likely need to know and use each of the client side programming languages listed below. Server side languages are processed and interpreted on the server, which holds the web site code and sends it to the user upon request. While each programming language has strengths and weaknesses, you will likely find that most projects can be completed adequately using any of the languages discussed below.
Purpose: To create the structure of a web page
HTML is usually the first language that web developers learn. It is not a programming language, but rather a mark-up language. HTML is used to create the structure of a web page. Standard page elements such as paragraphs, line-breaks, and images are controlled by html. You can develop HTML code using any simple text editor*, such as Notepad, and display the results in a web browser. The current recommended standards for HTML are versions 4.01 and a version called XHTML. The exciting HTML5 standard is rapidly approaching and has been the subject of much buzz and speculation. While many developers are already learning HTML5, its currently inconsistently supported by the major browsers, and HTML5 won’t become a standard until 2014.
*Do not use word processing programs to write HTML because programs like Microsoft Word insert mass amounts of proprietary formatting code that is not compatible with browsers.
Purpose: To design the visual layout and styling of a web page
Cascading Style Sheet (CSS) language is relatively easy to learn but difficult to master. With Cascading Style Sheets you can control the look of text, image and layout elements on a web page. CSS is used to create the layout structure of a page by controlling the positioning of elements such as navigation bars, headers, footers and page content. Another key advantage of CSS is that it lets you use external style sheets to alter the styles and formatting on your entire site, by only editing a single file! The latest version of CSS is CSS3 which contains powerful new features to create more attractive web pages.
Purpose: To create client side interactivity
Major Pros: Easy to learn, Open-Source (Free)
Major Cons: Awkward OOP (Object-oriented programming) implementation PHP has been a favorite choice of web developers for years. It’s free, relatively easy to learn, and there are numerous online resources for PHP training and peer-to-peer support. PHP is generally run on Linux web servers and features fast performance and easy integration with the popular open-source MySQL database. Despite PHP’s relative ease it is a powerful sever side programming language. PHP developers can earn the Zend PHP Certification, a highly respected professional certificate that proves advanced PHP skills to colleagues and employers.
Major Pros: Powerful, Integrates Well with Large Java Applications
Major Cons: Difficult to Learn
Java’s Enterprise Edition (J2EE) is designed to create heavy duty web applications. It has several features that make large web applications easier to manage and maintain. J2EE applications require a Java application server such as Tomcat or Glassfish. J2EE is also free to develop in, although due to its complexity, developers often opt for formal J2EE training classes to learn the technology. Developers holding the Oracle Certified Java Programmer designation must have extensive knowledge of J2EE. Skilled and talented J2EE developers are among the highest paid web development professionals.
Major Pros: Great Development Environment, A lot of Formal / Informal Training available
Major Cons: Requires use of Microsoft Visual Studio, No Mac/Linux Support
Microsoft’s .net languages, Visual Basic and C# (pronounced “C Sharp”), are an excellent and popular choice for web developers. Ideal for creating business applications with user-friendly interfaces, the .net languages are easier to learn than J2EE, without sacrificing power or speed. The .net languages run on a Microsoft Web server and easily integrate with Microsoft's SQL Server database technologies, which are very popular among businesses and enterprises. Microsoft .net web development is an in-demand skill and developers are frequently recruited for all types of projects. There are numerous training options and Microsoft MCPD certifications available for .net programmers.