Cloud Developer

10 of the coolest cloud programming languages

If you want to pick a portfolio of computer languages to master, look at these 10 great options that are used across the cloud computing world.

The Go gopher, a mascot of the Go programming language Image: Google

When people think of choosing a computer language, they probably pick one of the well-known, general-purpose procedural languages taught in schools, such as C, Java, or Python. But these regular suspects are just the tips of the computer language iceberg -- if it uses keywords and a structure to communicate information, it's a language. Here are 10 cloud languages to consider.

SEE: How to choose your portfolio of cloud programming languages

1: The SQL data language

When it comes to data languages, SQL has been the undisputed ruler for decades. Even non-relational database servers talk some form of SQL. The cloud is just as full of SQL as all other areas of IT.

Here's a SQL joke that developers everywhere will understand. "A man walks into a bar and sees two tables. He says, 'Can I join you?'"

2: The XML data language

XML is used to describe documents rather than deliver a stream of orders. Since XML doesn't usually order computers around, it isn't usually thought of as a computer language.

XML is the popular data markup language, and that's mainly because of Java. Where there's Java, there's XML. And since Java has been powering large-scale distributed systems since way before cloud was a computing thing, XML documents are everywhere. Apache Hadoop configuration lives in XML files.

3: The R math language

The R language helps developers with statistics, reports, and graphs. An interactive R tutorial exposes new developers to the joy of vectors, factors, and correlating data sets.

Amazon bundles the RStudio IDE with its EMR (Elastic MapReduce) service to help with big data analytics.

4: The Clojure math language

Clojure is not just a math language -- it's both a general purpose and a functional language. It just so happens Clojure is popular with data analysts.

Apache Storm, the real-time data stream processor, is written in Clojure. Functional languages don't need the semi-colons that procedural languages do; you can see the semi-colons are only used for comments in this Clojure script.

5: The Haskell functional language

Haskell is a functional language that is ideal for distributed computing, and a cloud Haskell platform project started a couple of years ago.

Even though Haskell has a fair adoption in industry and it's in the GitHub Top 20, Haskell take-up in the cloud so far is patchy -- perhaps Haskell is perceived as being hard to learn. Find out for yourself at the Try Haskell tutorial.

6: The Erlang functional language

Erlang came out of Ericsson. In the telecoms industry, products have to stay up forever, and everything (customers, connections, transactions, and records) is counted in millions.

A carrier-grade functional language sounds like an ideal fit for cloud computing. And in fact, despite not making the GitHub Top 20, Erlang powers popular cloud applications, including Riak, CouchDB, RabbitMQ, and even the LING unikernel.

7: The Python procedural language

Python is a high-level language that was designed to be readable. These days, pretty much anyone -- really, anyone -- can get started with Python. Learning aids include classes, books, and even an interactive Python tutorial.

OpenStack, the favourite Infrastructure as a Service (IaaS) management software, is written in Python. Have a look at this Python code for the Nova client interface.

8: The Go procedural language

Go was created at Google a few years ago when some of Google's programmers were frustrated with languages such as Stroustrup's C++. Google provides an interactive Go tutorial and a Go Playground for getting to grips with the code.

Docker, the darling of cloud computing, is written in Go, along with many other projects in the Docker ecosystem.

9: The GFM domain-specific language

GFM (GitHub Flavored Markdown) is a plain text formatting language used to document repos on GitHub. GFM is used by millions of developers, because millions of developers use GitHub.

Because there are so many cloud-specific projects such as Cloud Foundry on GitHub, GFM is good to know. And it's probably the simplest to learn of all the languages in this list.

10: The regular expression domain-specific language

The regex (REGular EXpression) syntax is disturbing to newcomers because it is practically symbolic -- instead of keywords, there are single characters. Regex code looks like someone fell asleep on the keyboard. If you want to be scared off the regex language for life, check out this extreme example -- a JSON parser.

However, regular expressions are a pillar of the Linux world. One of the core principles of the old UNIX OS and its Linux successor is the heavy use of text. Text is used everywhere -- for configuration, on the command line, and in protocols. Regular expressions help developers manage that text.

There are hundreds more

There are many more good languages to choose from. Try spending some time with a book like the 2010 classic "Seven Languages in Seven Weeks," which will run you through languages that include Prolog and Scala. Or, choose your own portfolio of languages.

If you want less serious and more silly, take a quick diversion to the land of esoteric programming languages. Deadfish, anyone?

Also read

Visit TechRepublic