5 programming languages you need to know for DevOps

There isn’t one true path for DevOps: it’s a state of mind. But, are there programming languages that make it easier to adopt DevOps? We take a look at some of the top languages for CI/CD success.

How can we make sure our DevOps adoption is a success? Are there certain languages that fit DevOps better than others? Today, we take a look at different programming languages to see which is the best approach for DevOps.

Quick caveat: if your favorite programming language isn’t on this list, that doesn’t mean it isn’t the bee’s knees. DevOps is a state of mind and a methodological process for technology, not an ironclad one-size-fits-all tech approach. If you’re rocking the DevOps mindset and coding in FORTRAN, you go on with your bad self.

Let’s dig right in! In no particular order:

In a cloud native world enamored with microservices and serverless, meet Quarkus – Java’s brilliant response to technologies like Node.js, Python and Go that had proven quicker, smaller and arguably more nimble. Donload your free beginner's tutorial written by JAX London speaker Alex Soto.

1. JavaScript

The internet already runs on JavaScript. (Well, JavaScript and HTML.) Many of the most popular frameworks and libraries are written in JavaScript, from Angular to React and Node. Sever-side implementations aren’t the only thing this language has to offer: the massive community of developers means that there’s always help available on GitHub or Stack Overflow. JavaScript is a safe bet for developers.

However, although JavaScript is a little complicated for DevOps (all those libraries, all those dependencies), that doesn’t mean they don’t work well together. After all, what would DevOps be without Node, npm, or Angular? I don’t even want to think about it.

Docker, the king of containers, is written in Go. And one reason why all sorts of DevOps tools are written in Go is because it makes it easy to compile standalone, static binaries for all major operating systems. No libraries, no dependencies, nothing.

So, what can Python do for DevOps? Python easily reduces maintenance problems with monitoring and deployment tools like Ansible, salt, and more. Options like OpenStack give developers the resources to create private and public cloud infrastructure.

4. C/C++

While C may be old, it’s still relevant to computing in a lot of ways. C / C++ was the foundation for a lot of modern computing and its bones are still structurally important today. If you need to directly manipulate the hardware itself, there’s no better language than C.

However, C/C++ faces one very large hurdle in DevOps: its own bulk. C/C++’s sheer size is an order of magnitude or two larger than languages like Go or Ruby. Compilation times are consequently bigger in C/C++. And then there’s the binary issue as well. As C/C++ is compiled to native machine code, it has Application Binary Interface problems due to its size. There are ways around this (notably package managers).

5. Ruby

Ruby may be past its heyday, but it’s still a useful language to learn. For one, it’s incredibly easy to pick up. For another, lots of popular automation tools are written in Ruby, notably chef. Ruby is an object-oriented, compiled, full-featured programming language. If you know Python or Perl, you are already familiar with the syntax.

It needs to be said that Ruby is not quite as popular as it used to be. Other languages picked up useful features from Ruby and implemented them in their own syntax. However, many projects on GitHub are still written in Ruby, including the popular Ruby on Rails.

+1 Rust

Keep your eyes on Rust, which is poised to become the next big infrastructure language. Many Ruby fans have decamped over to Rust, in part because of the extremely well-documented Rust for Rubyists tutorial. (Documentation matters a lot! Incomplete documentation is the biggest problem encountered in open source.) Rust’s fast adoption of high documentation standards lowered the barrier to entry for everyone, making it easier for new fans to make the switch.

In DevOps, Rust has a growing role in systems automation, container management and container orchestration. Rust is being used in conjunction with Docker on a couple of projects, notably the online education platform Coursera. Oracle’s first container program was written in Rust. Clearly, Rust may be the technology to watch in 2018.

Great article!
I have been looking for similar information on internet as how many and which programming languages are available to learn. Here i have found a great article you have shared good details which beginner wants to know before starting career in programming. Thanks a lot for sharing!