Learning to code appears regularly on ‘top skills to acquire in lockdown’ lists, and for good reason. There is an international shortageof coding professionals as the software development industry continues to grow. But it’s not only important for those thinking of making a career move. Coding is the language of our modern digital world and knowing how to speak it enables better communication between teams, which is particularly important for organisations embracing Agile and DevOps approaches.
So where should you start? Here is a quick comparison of some popular coding languages, and an explanation of why it might be the right one for you.
For beginners: Python and Ruby
Both Python and Rubyare thought of as great languages for beginners to learn as they use clear syntax and much of the logic carries over to other languages. They both power frameworks that help you build web applications — Django (Python) and Ruby on Rails (Ruby) and are widely used by top technology firms (Python is used by Google, YouTube and Dropbox while Ruby is used by Twitter, Github and Airbnb).
Ruby is known for its flexibility that empowers the programmer to make an elegant web framework. In contrast, Python offers a more direct approach to the programmer, and while it's less elegant, it’s simpler to debug coding problems efficiently.
They both have supportive communities to help you on your coding journey. A common recommendation is to learn Python first, especially if you’re uncertain what organisation and/or field you’ll be working in, as it’s so widely used.
For the traditionalists
C is one of the oldest coding languages still in use today. Python, C++ and C# were all formed on the foundations of C. However, it’s tough to learn, so perhaps best left to those who are serious about a highly technical coding career. The advantage of C is that it provides a high degree of control, allowing the programmer to customise their code in exactly the manner they want, rather than being restricted by a framework.
The other Cs
There are several offshoots from C, including C++, C# and Objective C. The first two are commonly used to develop video games, with C++ being seen as the gold standard. C++ is object orientated and is used with Unreal Engine, a game programming engine ideal for big games with photorealistic graphics. C# is thought to be easier to learn and often used for web applications outside the gaming industry, but it is used with Unity Engine, which is used to program smaller games (e.g. for mobile applications).
There’s also Objective C which was designed and developed by Apple. Until recently, Objective C was Apple’s primary language, but they have since moved to Swift. Currently they are both used across Apple applications, but new programmers are often encouraged to learn Swift due to the language’s advantages in performance, syntax, maintenance, size and dynamic libraries.
For the web developers
These have been just a handful of the programming languages available. Hopefully, you’ve learned that context is vital (i.e. if you want to develop games or work for Apple, then you must learn the appropriate language) so the best thing you can do is to identify your end goal, then do your research.