Objective-C is the Jason Voorhees of the programming world: Totally un-killable, despite its age (36 years young!) and Apple’s attempts to get developers to switch to another language for building iOS and macOS apps, namely Swift.
However, there are signs that Objective-C’s grip is weakening: According to the February update of the TIOBE Index, which monitors the popularity of various programming languages, Objective-C has dropped 10 ranking positions over the past 12 months (from 20th to 10th), which is quite a steep tumble by TIOBE’s standards.
In fact, Objective-C has swapped positions with Swift, which went from 20th place to 10th during the same period. TIOBE concedes that Objective-C’s drop (and the rise of Swift) took longer than some folks may have expected. From its accompanying note:
“In 2014 Apple announced the new programming language Swift to be the successor of Objective-C. At that moment Objective-C was at position #3 in the TIOBE index and development of mobile apps for iPhones and iPads was booming. After the announcement Objective-C dropped from 12% market share in 2014 to 1% market share in 2016. Suprisingly [sic] Swift grew from 1% to only 2% at that same time. The other 10% was consumed by other programming languages that appeared to be compilable for multiple mobile platforms. One might conclude that Apple made a mistake to insult iOS programmers by bluntly replacing Objective-C by Swift, but actually they hadn’t got a choice.”
For any language to rank on the TIOBE Index, it must be Turing complete, have its own Wikipedia entry, and earn more than 5,000 hits for +”<language> programming” on Google. Languages with the biggest presence on various aggregators and search engines, including Google and YouTube, climb into the top rankings. As you might expect, this methodology has proven controversial with many technologists who feel that it’s not an accurate barometer of language popularity.
It’s debatable whether rolling out Swift was an insult to iOS and macOS developers; nothing prevented them from continuing to use Objective-C (indeed, the maintenance of legacy code demands it). Indeed, a new breakdown of top programming languages from Coding Dojo (which hinged on data from Indeed) had Objective-C in the top ten languages that employers are looking for (in ninth place, squeezed between C# and PHP).
Although Swift began life in 2014 as a pretty stripped-down language, it’s gained more and more features with every update. Swift 5.1, released in September 2019, includes module stability, which in turn contributes to the overall stability and usability of the language. (If you’re curious about learning Swift, check out our tutorials on sets, arrays, and strings.) In other words, the language is getting stronger and more versatile, fueled in large part by an engaged open-source community; it’s debatable whether refreshing Objective-C with new features would have achieved the same kind of momentum.
We can expect Objective-C to hang around, like the invincible creature in a horror movie, for quite some time to come. There’s legacy code to maintain, after all. But it’s also clear that the Apple ecosystem is bending toward Swift. If you’re interested in the top occupations with iOS skills, check out the following list from Burning Glass, which collects and analyzes millions of job postings from across the country: