Main image of article Should You Learn Older or Newer Programming Languages?

It seems unlikely that ultra-popular programming languages such as Python will fade anytime soon. But smaller, more refined languages that have eliminated some of those older languages’ flaws are gaining an audience. These newer languages have a solid chance of becoming more mainstream in coming years.

According to the latest edition of the TIOBE Index, which attempts to monitor the popularity of various programming languages, Zig is yet another language that attempts to fix the mistakes of the past. In the April edition of the Index, Zig entered the top 50 languages.

Zig is a very pragmatic language that interacts smoothly with C/C++ programs, thus making it is easy to migrate from C/C++ to Zig,” TIOBE added. “It has all the nice features of C and C++ (such as explicit memory management enhanced with option types) and has abandoned the not-so-nice features (such as the dreadful preprocessing). Entering the top 50 is no guarantee to become a success, but it is at least a first noteworthy step.”

To create its monthly rankings, TIOBE leverages data from a variety of aggregators and search engines, including Google, Wikipedia, YouTube, and Amazon. Languages that rank must be Turing complete, have their own Wikipedia entry, and earn more than 5,000 hits for +”<language> programming” on Google. While that doesn’t allow you to see a language’s actual usage (at least not in the same way as other programming-language rankings), it gives you a solid sense of a language’s popularity or “buzz.”

Other up-and-coming languages include TypeScript, which is technically a superset of JavaScript but regarded by many as a “full” programming language; because TypeScript code is compiled to JavaScript, many developers use it to sidestep JavaScript’s issues. In a similar vein, Swift (which has rapidly gained features since its introduction in 2014) is meant to replace Objective-C, Apple’s aging workhorse for macOS and iOS programming.

Many developers also cite Go (Golang) as a speedy language for many applications. If you want to explore Go’s capabilities, start off by visiting its dedicated website, which offers downloads, tutorials, documentation, and a browser-based “playground” for writing code.

As you proceed along your programming-language journey, keep in mind that mastering older languages (despite their flaws) can give you an advantage in the job market. If nothing else, many organizations need software engineers and developers who can maintain and even migrate mountains of legacy code.