As we code our way through 2018, let’s take a look at the programming languages that are making the greatest impact on software engineering. It is impossible to learn every language created, but this article sheds light on some of the languages that may increase your own personal developer happiness or provide future job opportunities. Let’s take a look at the top programming languages of 2018.
TLDR: TypeScript, Go, Python, Kotlin + Swift, SQL, Rust, Elixir
Whether you love or hate JavaScript, there is no question that the language is here to stay. TypeScript aims to solve one of the biggest complaints of JavaScript by introducing static typing. This means that the type of a variable must be declared by the developer as they write the code. For example, we declare the function argument below to ensure we only pass strings:
const sayHello = (name: string) => `Hello, ${name}`
With a popularity score at 18% according to Stack Overflow and a top 5 ranking in the most loved languages (above JavaScript), TypeScript is experiencing a meteoric rise in popularity at only 5 years since its creation. Startups and tech giants are embracing its benefits. All indications in 2018 are that TypeScript is only going to increase in popularity at a growing rate. If you are a JavaScript enthusiast that loves to stay up to date with the changing landscape, TypeScript makes sense to dive into.
Go is simply taking over the programming world. The language was created by Google in 2009 and offers many of the benefits of C/C++, but Go makes many changes to improve brevity, simplicity, and safety. Simply stated, Go does practically everything well. The code is easy to understand but also incredibly efficient computationally. A new developer can pick it up rather quickly. It is a statically typed and compiled language that manages concurrency efficiently.
Given the many benefits of Go, it makes sense to choose for numerous use cases. Its speed makes it a great choice for web servers, and it is simple enough to quickly spin up micro-services. It handles networking very well, and Go also does a good job as a language for systems. Some practical implementations of Go are:
Go may be the perfect language to add to your developer tool box. Its ability to do so many things well means that it will always be in the conversation as a tool to use for any job.
Python has been around for almost 30 years, but it is still a popular choice among software engineers. The language has withstood the test of time and shown that its not only worth knowing, but it may be an expectation given its ubiquity. In fact, the 2018 Stack Overflow survey shows that it ranks #1 as the most wanted programming language.
Python is beautiful scripting language that has evolved to support developer ecosystems in many fields. It offers Django and Flask, making it simple to build web applications and APIs. The community also offers incredibly robust tools for data science and academic programming.
Python has proven that it will be around for a long time. If you invest your time into learning it, there is no doubt that it will pay off.
These languages are universally noted as an improvement to their predecessors. They offer a better developer experience for coding mobile applications on their respective platforms.
Kotlin is ranked second as the most loved programming language and this past year received official support from Google and Android Studio. Many Android teams are converting their code bases away from Java. If you are an Android engineer, do not be afraid to dive in here and pick up Kotlin since it appears it will be in high demand for the foreseeable future.
Swift was developed by Apple so that iOS engineers no longer need to work with Objective-C. The language is only 4 years old but has received rapid adoption. Swift 4.0 was released in 2017 and it is showing no signs of slowing down as engineers continue to adopt it.
While it is not quite the same as the other languages on our list (and some may argue that it does not belong here), understanding SQL is very important. Almost every single tech company will have some data storage, and by far the most popular method still is a SQL implementation. Understanding data storage and retrieval can only serve to make you a better software developer. If you are a front end engineer that has never looked into where your data comes from, do yourself a favor and gain an understanding of SQL.
Rust is a systems programming language sponsored by Mozilla. It is not essential that every engineer learn it given its use cases, but if you want to do systems coding, you should check out Rust. Rust was voted as the most loved language in the Stack Overflow survey 3 years straight in 2016, 2017, and 2018. Share the love and check out why so many people are turning to Rust.
Elixir is more of an author pick as to a language that I think will start to grow in popularity. It currently has a strong cult following of engineers that swear by the language, and it has also started to gain adoption into notable startups as well. The popularity of functional programming is growing quickly, and Elixir is poised to be a language that experiences rapid adoption as engineers move in this direction.
Elixir is a functional, concurrent, general-purpose programming language that runs on the Erlang virtual machine (BEAM). In addition to software engineers loving to build with it, Elixir has proven that it can support large, scalable systems that perform well under huge user loads. The popular chat application Discord wrote an article on how they scaled to 5,000,000 concurrent users with tens of thousands in a single channel by utilizing Elixir. For comparison, Slack can handle about 10,000 concurrent users in a chat.
© Sva prava pridržana, Kompjuter biblioteka, Beograd, Obalskih radnika 4a, Telefon: +381 11 252 0 272 |
||