by Curtis Franklin Jr.

Websites aren’t going anywhere and will continue to be part of the corporate IT infrastructure for years to come. Here are 10 languages you should know if building web apps is on your agenda.

If we live in an app economy, as we’re often told, then why should IT professionals care about the programming languages used for web development? The answer has several parts.

First, there’s no clear agreement that the world is turning only to apps. There are voices in favor of web pages as the defining user interface rather than native apps. Next, even if organizations are shifting to apps, the shift is going to take a while. How long could it take? Let the fact that there’s still a demand for COBOL programmers guide your thinking.

Finally, even in the face of an app-based onslaught, websites aren’t going anywhere. Whether you’re thinking about enterprise application portals or customer-facing user experiences, websites will continue to be part of the corporate IT infrastructure for years to come.

One of the hallmarks of the web experience is that it is constantly changing and evolving — constantly being altered and manipulated to find the best user experience.

Constant change means constant development, and constant development requires programming tools. In this article I’m looking at 10 languages that are among the most commonly used for web development. How did I figure out the “most commonly used” part?

I reviewed articles on popular languages from sources including the IEEE, TIOBE, and New Relic, factored out the languages that aren’t especially web-oriented, added a couple from my own experience, then whittled the list down to 10 entries.

If you’re going to write a page with front-side (client system) intelligence, you’re going to be using JavaScript. But there’s a tremendous amount of variation in the server-side development languages. The only constant is that a database will be involved, and I’m not going to wade into databases in this article.

Here are 10 languages that you should be aware of if you’re going to build web applications. I’ve personally used some, am curious about others, and I’m glad I don’t have to learn or do anything with a few.

I’m curious about which ones you use, and curious about one other thing: How many languages should a modern programmer have in his or her tool kit? (I mean, not only know enough to recognize the language by looking at a code snippet, but actually be able to write something minimally functional in the language.)

Is the answer two? Six? Twenty-three? Let me know what you think about the number — and about the languages that come next.

HTML5 Web pages live on an HTML foundation. In 2016, there's no reason to develop in a version of HTML other than HTML5. Sure, it's still not entirely cooked from a standards perspective (though it's as complete as it needs to be from a practical perspective). Yes, browser support is still something of a mish-mash. But the functions that HTML5 brings to web development are such that you should be using it for your apps and pushing browser publishers to make their products as compatible as possible, as soon as possible. From a multi-media perspective alone, HTML5 is going to make your life about 473% easier (that's a guess, of course). No matter the precise percentage of improvement, HTML5 makes it easier to build rich content into your site and to deploy your site in a rational manner across multiple screen sizes and device types. You want to be using HTML5. Yes, you do. (Image: Den Rise/Shutterstock)

HTML5

Web pages live on an HTML foundation. In 2016, there’s no reason to develop in a version of HTML other than HTML5. Sure, it’s still not entirely cooked from a standards perspective (though it’s as complete as it needs to be from a practical perspective). Yes, browser support is still something of a mish-mash. But the functions that HTML5 brings to web development are such that you should be using it for your apps and pushing browser publishers to make their products as compatible as possible, as soon as possible.

From a multi-media perspective alone, HTML5 is going to make your life about 473% easier (that’s a guess, of course). No matter the precise percentage of improvement, HTML5 makes it easier to build rich content into your site and to deploy your site in a rational manner across multiple screen sizes and device types. You want to be using HTML5. Yes, you do.

CSS It would be lovely if Cascading Style Sheets (CSS) were one of the complications being removed by HTML5, but it doesn't look like we're going to be able to enjoy CSS amnesia any time soon. CSS is the mechanism that allows web pages to separate content from appearance. It's the key to presenting the same content on multiple device types without completely reprogramming for each device. CSS can be complex to learn and complicated to implement, but when it comes to creating visually rich websites, there is no other mechanism that is easier or offers the same level of direct control as CSS. (Image: Rawpixel.com/Shutterstock)

CSS

It would be lovely if Cascading Style Sheets (CSS) were one of the complications being removed by HTML5, but it doesn’t look like we’re going to be able to enjoy CSS amnesia any time soon. CSS is the mechanism that allows web pages to separate content from appearance.

It’s the key to presenting the same content on multiple device types without completely reprogramming for each device. CSS can be complex to learn and complicated to implement, but when it comes to creating visually rich websites, there is no other mechanism that is easier or offers the same level of direct control as CSS.

JavaScript If you're confident that you'll never, ever be called upon to write a web-based application, then JavaScript won't interest you at all. If, on the other hand, there's a chance that a web-fronted application (or, to be honest, a mobile app) is in your future, then JavaScript is a tool that you'll want to become very familiar with. JavaScript isn't the sort of language that you'll be using for system programming or for writing fluid-dynamics analysis applications on a supercomputer. But it's incredibly popular and useful for what it does to add heft and interactivity to HTML. JavaScript is used for the front-side programming of virtually every popular website and it's a language that doesn't show any sign of fading. (Image: bleakstar/Shutterstock)

JavaScript

If you’re confident that you’ll never, ever be called upon to write a web-based application, then JavaScript won’t interest you at all. If, on the other hand, there’s a chance that a web-fronted application (or, to be honest, a mobile app) is in your future, then JavaScript is a tool that you’ll want to become very familiar with.

JavaScript isn’t the sort of language that you’ll be using for system programming or for writing fluid-dynamics analysis applications on a supercomputer. But it’s incredibly popular and useful for what it does to add heft and interactivity to HTML. JavaScript is used for the front-side programming of virtually every popular website and it’s a language that doesn’t show any sign of fading.

Java With Java, we move from the client side of the web app equation to the server side. Love it, hate it, or both, Java isn't going away any time soon. Java is more than 20 years old and has been one of the most, if not the most, popular programming languages in both universities and businesses for the last few years. The promise of 'write once, run anywhere' is powerful, and most web applications aren't hindered by Java's relative weakness at reaching down to the bare metal for control. If you're going to be creating web applications that involve serious business processes and database access on the server, then Java is a language that you'll want to have in your development tool kit. (Image: Gil C/Shutterstock)

Java

With Java, we move from the client side of the web app equation to the server side. Love it, hate it, or both, Java isn’t going away any time soon. Java is more than 20 years old and has been one of the most, if not the most, popular programming languages in both universities and businesses for the last few years. The promise of “write once, run anywhere” is powerful, and most web applications aren’t hindered by Java’s relative weakness at reaching down to the bare metal for control. If you’re going to be creating web applications that involve serious business processes and database access on the server, then Java is a language that you’ll want to have in your development tool kit.

PHP PHP is a scripting language most commonly used to tie a browser front end to a database backend. PHP is not a beautiful, elegant language: It's a sprawling thing that grew rather organically through the years. Despite the fact that it's messy, there's no reason that you can't use PHP to write effective code. PHP is known and used by a huge number of programmers, has been used on an enormous number of websites, and could well be the sort of 'programming language duct tape' that you need to quickly and economically build the applications that respond to customer needs. (Image: Wright Studio/Shutterstock)

PHP

PHP is a scripting language most commonly used to tie a browser front end to a database backend. PHP is not a beautiful, elegant language: It’s a sprawling thing that grew rather organically through the years. Despite the fact that it’s messy, there’s no reason that you can’t use PHP to write effective code. PHP is known and used by a huge number of programmers, has been used on an enormous number of websites, and could well be the sort of “programming language duct tape” that you need to quickly and economically build the applications that respond to customer needs.

Ruby Ruby is an object oriented scripting language that has been around for over 20 years. Written by Yukihiro Matsumoto, it has become a popular language for writing applications that use a browser for the user interface. Ruby is flexible in that it can be subtracted from, altered, or added to as the user requires. Its syntax and flexibility have been compared to the game of 'Go.' The language and the game both seem simple, but can reach great depth and complexity. Ruby is another backend tool, and one that is frequently found on the lists of 'most popular languages' created each year. (Image: Georgejmclittle/Shutterstock)

Ruby

Ruby is an object oriented scripting language that has been around for over 20 years. Written by Yukihiro Matsumoto, it has become a popular language for writing applications that use a browser for the user interface.

Ruby is flexible in that it can be subtracted from, altered, or added to as the user requires. Its syntax and flexibility have been compared to the game of “Go.” The language and the game both seem simple, but can reach great depth and complexity. Ruby is another backend tool, and one that is frequently found on the lists of “most popular languages” created each year.

ASP.net/ASP.net Core While most of the languages in this article are available across a wide variety of platforms and systems, ASP.net is a Microsoft creation that helps developers build dynamic websites and applications. ASP.net was the successor to Microsoft's Active Server Pages. It was then succeeded by ASP.net Core. It's now a web framework that uses the .NET Compiler Platform (which is open source). It's available across a number of platforms. ASP.net Core has some advantages over other frameworks, notably that it performs a first-time run compile that allows for faster subsequent code execution and smaller code sitting on the server. (Image: Wright Studio/Shutterstock)

ASP.net/ASP.net Core

While most of the languages in this article are available across a wide variety of platforms and systems, ASP.net is a Microsoft creation that helps developers build dynamic websites and applications. ASP.net was the successor to Microsoft’s Active Server Pages. It was then succeeded by ASP.net Core. It’s now a web framework that uses the .NET Compiler Platform (which is open source). It’s available across a number of platforms. ASP.net Core has some advantages over other frameworks, notably that it performs a first-time run compile that allows for faster subsequent code execution and smaller code sitting on the server.

ColdFusion ColdFusion might seem an odd thing to include in an article on languages, since it's a rapid application development framework rather than a language. Part of ColdFusion, though, is the ColdFusion Markup Language (CFML). It's similar in many ways to PHP, JSP, and the scripting portions of ASP.net Core, though it shares a lot of its syntax and structure with HTML. ColdFusion has been an Adobe product for a number of years, and it integrates into the big Adobe suite of content-creation and analytics applications. This is one well worth learning about if you're trying to integrate design, development, and operations into a single workflow. (Image: Lurens via Pixabay)

ColdFusion

ColdFusion might seem an odd thing to include in an article on languages, since it’s a rapid application development framework rather than a language. Part of ColdFusion, though, is the ColdFusion Markup Language (CFML). It’s similar in many ways to PHP, JSP, and the scripting portions of ASP.net Core, though it shares a lot of its syntax and structure with HTML.

ColdFusion has been an Adobe product for a number of years, and it integrates into the big Adobe suite of content-creation and analytics applications. This is one well worth learning about if you’re trying to integrate design, development, and operations into a single workflow.

Perl If you're looking for an elegant, beautifully designed language that appeals to the programming poet in you, then turn your gaze away from Perl as quickly as possible. This 30-year old language is the chewing gum and baling wire of programming languages -- but it's the chewing gum and baling wire that holds much of the web together. Perl began life as a scripting language known for its powerful string handling and regular expression capabilities, and it's grown rather like a snowball rolling down hill, scooping up everything in its path. At this point you'll find Perl in use in most web application shops, though few will proudly advertise the fact. The truth is, though, that if you find someone who's really good at Perl -- or if you're a true Perl expert -- then your organization will have someone who can write code that patches together disparate systems quickly and economically when no other solution can be found. That person's skills will always be valuable. (Image: andriano.cz/Shutterstock)

Perl

If you’re looking for an elegant, beautifully designed language that appeals to the programming poet in you, then turn your gaze away from Perl as quickly as possible. This 30-year old language is the chewing gum and baling wire of programming languages — but it’s the chewing gum and baling wire that holds much of the web together. Perl began life as a scripting language known for its powerful string handling and regular expression capabilities, and it’s grown rather like a snowball rolling down hill, scooping up everything in its path.

At this point you’ll find Perl in use in most web application shops, though few will proudly advertise the fact. The truth is, though, that if you find someone who’s really good at Perl — or if you’re a true Perl expert — then your organization will have someone who can write code that patches together disparate systems quickly and economically when no other solution can be found. That person’s skills will always be valuable.

Python Python is one of the languages that many developers love -- and many others just love to hate. It's a very script-like language that has the great advantage of being quite compact and, in general, rapid to write in. With that comes the disadvantage of being an interpreted language, with all the security and potential performance issues that carries. Many businesses see the speed (and ubiquity) as reasons to get past the security concerns, and there are very strong frameworks that take care of many issues. Python is not as complex as some of the 'higher' programming languages, so it can be learned quickly when it's needed, or it can be used as a gateway language to get people started in coding. It will almost never be the only language that a person, or a department, should have in the tool kit, but it's hard to argue that space shouldn't be found for Python expertise somewhere in the shop. There you have it: 10 languages, 10 approaches, 10 ways to make web applications happen. There's no single best language, but with the right discipline, each of these can be used within an overall application development environment. Which one (or ones) will you choose? Which have you already chosen? Let me know. (Image: Profit_Image/Shutterstock)

Python

Python is one of the languages that many developers love — and many others just love to hate. It’s a very script-like language that has the great advantage of being quite compact and, in general, rapid to write in. With that comes the disadvantage of being an interpreted language, with all the security and potential performance issues that carries. Many businesses see the speed (and ubiquity) as reasons to get past the security concerns, and there are very strong frameworks that take care of many issues.

Python is not as complex as some of the “higher” programming languages, so it can be learned quickly when it’s needed, or it can be used as a gateway language to get people started in coding. It will almost never be the only language that a person, or a department, should have in the tool kit, but it’s hard to argue that space shouldn’t be found for Python expertise somewhere in the shop.

There you have it: 10 languages, 10 approaches, 10 ways to make web applications happen. There’s no single best language, but with the right discipline, each of these can be used within an overall application development environment.