Do you Believe the Delphi-Programming Statistics?
TIOBE Programming Language Popularity Index for October 2014 —Delphi Popularity Soars?The TIOBE Programming Language Popularity Index for October 2014 shows Delphi / Object-Pascal moving upwards 6 notches from #17 at this time in 2013 to position #11 in 2014. My use of question-marks in the blog title and main heading perhaps says it all: I question the accuracy of these rankings / statistics.
This is not to say I have not referred to these rankings before to back an observation I have made personally about various programming language and technology trends. In fact, I used the index to demonstrate how Google Dart popularity was rising in 2013 (in fact Dart is now #17 vs. #81 a year ago). I also believe the May, 2013 blog I wrote questioning whether Delphi programming is dead, and which referred to the TIOBE index at that time also, can lean on such rankings for some backing-data. So, can the index be "wrong" and still offer enough "right" information to add value to an argument or decision-making process on occasion?
First, a bit of background on this programming-language-popularity index...
As quoted from the TIOBE site (hereinafter, "Quote A"):
"The index can be used to check whether your programming skills are still up to date or to make a strategic decision about what programming language should be adopted when starting to build a new software system."and
"The TIOBE Programming Community index is an indicator of the popularity of programming languages."Yeah, right! Delphi is obviously taking off now (sarcasm abounds)!
My Opinion, ExplainedI believe I can understand how such a statistical move — like this current apparent substantial (and difficult to believe) resurgence in Delphi popularity — can be explained, given the key indicator this index is based on:
"Basically the [ranking] calculation comes down to counting hits for the search query (across 25 search engines) for: +"<language> programming""Essentially, I posit that the TIOBE index is fundamentally flawed and a rather absurd way to truly know the "popularity" of a programming language, because [web] search behavior is not well-correlated with actual programming language activity, software projects, or technology hiring, and here is why...
The flaw in the index, in my opinion, is especially amplified in the case of languages that are "niche" or insignificant or perhaps even entering obsolescence, and the flaw exists not just as languages are sliding out of favor but also as new ones are fighting to get noticed as the next great software development language of choice.
So, how could the TIOBE index be so wrong, and how can I have been so right when I pondered whether Delphi programming is dead last year?
Popularity skewed by unemployed Delphi developers?
So when I and others (that have Delphi skills which are essentially wasting away as fewer and fewer Delphi opportunities exist) go searching the web on the off chance there is actually a software development project that could use my Delphi programming skills (and actually pay me for those skills), we are somehow upping the "popularity" of Delphi according to TIOBE index. This is just wrong.
As I put forth when positing this argument in the first place, I believe niche programming languages are going to be much more likely produce massive distortions in the popularity rankings for varied reasons. First and foremost, software developers and programmers want to know that their skills may actually earn them money! As such, they search for jobs that use: 1) the skills they already have, even if those skills are falling out of favor in the mainstream programming circles, and 2) skills they may be able to quickly migrate to in order to gain employment, maintain employment, and/or up their earnings with (ideally while not choosing "another Delphi" that turns out to be a career dead-end). Period.
In any case, I believe the TIOBE index needs to be substantially altered in order to remain relevant. In order to address Quote A with any real credibility, it needs to incorporate some job-postings data. You cannot tell me that my programming skills are up-to-date if there are essentially zero jobs anywhere that actually rely on such skills. That is just nuts. And, a quick sanity-check on the relative rankings of "popularity" can be done by comparing even at a super-duper-high-level the number of jobs available that reference each programming language as a required skill for the open position.
I am glad the TIOBE index exists even as I find it fundamentally flawed. I still use it for very, very high-level insight into what is going on in the programming language arena, but I also couple it with my own observations and insights for some sort of "reality checking" of the data. Parts of the rankings are quite believable and match up with the reality I see in job postings, technology articles, presentations, and so forth, even as other parts of the rankings (like Delphi) do not.
So, take it all as you wish, and whilst busy wishing, maybe all of us that still appreciate how wonderful Delphi programming is should be wishing that there will be jobs out there to put our skills to use before we all finally give up looking and see Delphi fall off the charts completely.