Have an amazing solution built in RAD Studio? Let us know. Looking for discounts? Visit our Special Offers page!

The Trouble of Measuring Programming Language Popularity

Delphi Platform GrowthTIOBE is one of many programming language popularity indexes. Their methodology involves doing a search across various search engines with the name of a programming language followed by the word programming. So they look for “Delphi Programming” as an exact phrase, ignoring any Delphi related pages that don’t include that phrase (which is a lot of them). Other programming language popularity sites use Google Trends, GitHub, job listings, Stack Overflow, etc. Each of these measure popularity differently, and have different rankings, but none of theme really measure true popularity.

  • If a programming language has poor job satisfaction or is otherwise hard to find developers for, then that programming language will show up more often in job listings. While if the programming language has developers that are generally satisfied and stay in their position for a long time then you will see fewer job postings about it. Both of which have nothing to do with the actual popularity.
  • If a programming language is confusing then there will be more searches and questions asked about it online, while if the IDE and tooling make it easier to discover how to accomplish things then programmers are less likely to resort to online forums. Additionally, if the developers tend to be more senior with more experience then they are less likely to post questions online.
  • While the existence of open source code samples are great, it doesn’t measure closed source commercial projects or libraries.

Not saying Delphi has the best job satisfaction (although I did see a 3rd party survey once that indicated as much) or the best online documentation and tooling, but just using those as examples of how none of these metrics are perfect. Needless to say nothing is perfect, but everyone loves some good statistics, especially if they agree with their preconceived opinions.

For a while I worked for an Oracle consulting company. We joked that it was a good thing Oracle was such a pain to use, or we would be out of a job. 

Complexity is a feature

TIOBE publishes their index monthly for free, and then offers access to historical data for a fee. With their monthly index they usually do a write-up about how languages are moving. I may not agree with their methodology, and I don’t believe it accurately reflects the popularity of Delphi / Object Pascal, but it is their methodology. Their comments this month are provably wrong, and I’m not the first person to point this out

Deadlines inspire creativity instead of research

In the most recent TIOBE write-up they said Delphi is on the decline and hadn’t been updated since 2018. During the XE era Delphi had more frequent (up to twice a year) major updates. Unfortunately the feedback from users and Tech Partners was this was a lot of effort on their part to update so frequently. With the XE versions new features only came out with major versions, and the minor versions only included bug fixes. 

  • 2010: XE – Amazon EC2 & Microsoft Azure Cloud support
  • 2011: XE2 – 64-bit Windows & macOS, FireMonkey, VCL Styles
  • 2012: XE3 – Support for Device sensors, expanded FireMonkey features, FireDAC
  • 2013: XE4 – iOS platform with Mobile Form Designer
  • 2013: XE5 – Android platform, REST Services client library
  • 2014: XE6 – In-App payments and advertising support, App Tethering
  • 2014: XE7 – FireUI & Platform Services integrate mobile & desktop, Parallel Programming Library
  • 2015: XE8 – Beacons, Asynchronous Programming Library, iOS 64-bit, Multi-device preview
  • 2015: 10.0 Seattle – Windows 10 & Windows RT API, MongoDB, Android Services & Intents
  • 2016: 10.1 Berlin – Enterprise Mobility Services (EMS/RAD Server), BeaconFence
  • 2017: 10.2 Tokyo – Linux (64-bit) platform, VCL High-DPI
  • 2018: 10.3 Rio – The last version with a new city name

Around the release of 10.0 Seattle things changed. Now with Update Subscription new features are included in minor (binary compatible) updates – sometimes these new features are whole new platforms. This makes it easier for Tech Partners and users to stay current as they can install a minor update, with new features, with less disruption to their current development projects. So while technically the last major release was the end of 2018, there have been a lot of very significant minor releases since then.

  • Delphi 10.3 Rio (November 21st, 2018) – New language features (Inline Variables & Type inference), High-DPI & PerMonitor v2, Update Android SDK and NDK, New Android Permission Model, Android Platform Controls with Android Z-Order support, iOS 12 and macOS Mojave support, and more. 
  • Delphi 10.3.1 Rio (February 14th, 2019) – iPhone series X devices, RAD Server console, Bookmarks and Navigator add-ins, new styles, iPad Pro native resolution, Firebase, and RAD Server push notifications.
  • Delphi 10.3.2 Rio (July 18th, 2019) – RAD Server Wizards, Firebase Enhancements, FMXLinux GUI clients for Linux, and macOS 64-bit compiler.
  • Delphi 10.3.3 Rio (November 21st, 2019) – Android 64-bit compiler, iOS 13, macOS Catalina, RAD Server Docker deployment, Enterprise Connectors included, and Android 10.

Sure, the last release with a new city name was 2018, but since then we’ve seen support for new versions of iOS, macOS, and Android, as well as two new 64-bit compilers for macOS and Android. I guess it all depends on how you define “major,” version numbers or new platforms and compilers, or does it even really matter? I always try to give people the benefit of the doubt and subscribe to Hanlon’s razor.

Hanlon's razor
Never attribute to malice that which is adequately explained by stupidity ignorance. 

As far as popularity of the language, it is all pretty subjective. I’m sure everyone who reads this has an opinion already, an opinion about the popularity of languages. I could potentially quote sales numbers or talk about new developers I’m meeting, and that would either agree with your perception or not. I’m well aware that Delphi isn’t at it’s peak popularity. It went through a serious slump after Delphi 7, but things started to turn around after Delphi 2009. With the release of XE5 and when Delphi expanded to Android things really started to pick up. Since then Delphi’s been growing, maybe not at the rate of when it first came out, but it is certainly growing.

Delph's new platforms since 2010

The reality is Idera and Embarcadero wouldn’t be investing money in new features, platforms, compilers, and releases if there weren’t sales. Maybe they would for a little while, but we’ve seen nine whole new platforms and compilers just since 2010. That is a lot of investment and a lot of growth. 

So I’m guessing the folks over at TIOBE just didn’t do much research and didn’t know Delphi was growing, with productive developers making cool apps and so many platforms, and they just made a guess, and it was wrong. The one thing they did get right was acknowledging that Delphi was and is “well-beloved.” We’ve contacted TIOBE in hopes they will correct their errors, and I know we weren’t the only ones. So be sure to send them a note too and let them know they have their facts wrong. I’ve emailed Paul Jansen, their CEO in the past, and he usually responds. His email address is first name [dot] last name at his website. 

As an interesting aside: Visual Studio and Xcode typically have a major (full version number) release every two years, which is slow compared to Delphi’s usual pace. So if anything, Delphi took a breath and slowed down to let the other IDEs try to catch up. At least from a numbering point of view. 

Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.
Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

About author

Director of Delphi Consulting for GDK Software USA. Many software related patents, including swipe and pattern unlock and search engines. First Silver and Gold Delphi badges on Stack Overflow Former Developer Advocate for Embarcadero Technologies. Long time fan of programming, especially with Delphi. Author, Podcaster/YouTuber, Improvisor, Public Speaker, Father, and Friend.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.