[Estimated Reading Time: 5 minutes]

It seems like only 12 months ago that a lot of fuss was being made about Delphi re-entering the TIOBE Index Top 10 and now it’s done it again!

Um… hang on…

To enter the Top 10 again doesn’t that mean that somewhere along the way it must have dropped out of the Top 10 ? Maybe so, but TIOBE isn’t a reliable indicator, right ?

Marco Cantu would like to have it both ways. This development is simultaneously the result of a ranking system that is “not representative” – presumably such as when Delphi drops down to 15th and only occasionally bumps back up to 11th, otherwise languishing at 12th/13th, as has been the case for the past 12 months – but also definitely worth shouting about when it “leaps” up into 9th.

But Marco is careful to suggest that the trend is what is important, but asks that you look at that trend only since the beginning of 2014 which does indeed show an up-turn but still a long, long way from where it was a only few years ago.

And it would be even further away if it wasn’t for a sudden, significant spike in February last year. So perhaps that spike was itself a significant moment, marking a resurgence in popularity for some reason ?

It certainly seems to have given a fairly persistent boost to the ranking.

Insignificant Significant Moments

Anyone with a memory even slightly exceeding that of a goldfish should recall a similar round of rejoicing and adulation about Delphi (again) having re-entered the Top 10 of the TIOBE Index. As I said, that was almost exactly 12 months ago.

What they might not be aware of is that this was the result of the lobbying of the TIOBE moderators by Craig Chapman – who, by a complete coincidence is (or was at the time) an Embarcadero employee – to have other Pascal stats aggregated into the Delphi/Object Pascal category in the Index.

He made all sorts of claims about how this would be “fairer” and – coincidentally – catapult Delphi into 6th place in the rankings.

Actually he missed a trick by not also suggesting that they also amalgamate C and C++, since it is almost impossible these days to find a “pure C” compiler, and some people (many? I dunno) seem to use “C compiler” to also mean “C++”. So you could make the same claim about “no body using ‘original C'” as applies to Pascal and ObjectPascal.

Had they done that as well then he could have projected a Top 5 spot for Delphi !! Imagine the excitement that would have caused ! \o/

But whatever the merits of the argument, the moderators of TIOBE in their infinite wisdom conceded and Craig got his wish. The result ? …. Delphi did indeed shoot up the charts from 12th to …. 10th.

Aaaaaand then fell back down to languish between 11th and 15th for the rest of the year. But as I said, I don’t remember Marco or Craig or anybody else mentioning that.

But this really shouldn’t be any great surprise.

This sort of volatility is to be expected. The zone that Delphi hovers in, on the cusp of the Top 10, is a place where the numbers change quite drastically every month and sometimes 0.1% (that’s 1/10th of 1%) can be the difference between 14th and 10th.

This month Delphi may be “comfortably” above that zone but only time will tell if that comfort zone is anything more than an anomaly. Only last month the difference between Delphi being 10th or 12th, rather than 11th, was just +0.004% and -0.016%.

It is only sensible then to consider trends rather than specific changes from month to month, but if you take that leg-up in February 2016 out of the equation then the trend over the past 12 months is pretty much flat (with the exception of a further spike in December, the persistence of which has yet to be established).

Lies, Damned Lies and Statistics

Don’t get me wrong, I think that the representation of Pascal in the TIOBE Index was and is wrong, but not because of any “unfair” treatment of Delphi.

Far from it.

In fact just a couple of months after proclaiming the success of having more “Pascal” stats recognised in the Delphi ranking, the very same Craig Chapman was advising caution, and suggesting that being outside the Top 10 was actually a better place to be, indicating that a language was more pleasurable to use than those in the Top 10.

That Delphi had fallen back out of the Top 10 again at that point was – again – presumably just a coincidence. And now that it is back in the Top 10, well, I guess the Top 10 languages aren’t there only because they are difficult and unpleasant to use, right ?

But I think that to even identify “Delphi” in the rankings at all is an aberration.

Category Mistakes

No distinction is made in the TIOBE Index between GNU C++, Microsoft C++ or C++ Builder, for example. There’s just C++.

No distinction is made between IBM COBOL or Microfocus COBOL. Just COBOL.

Or Microsoft C# and the Mono C# compiler. Just C#.

And that’s not evening to mentioning the RemObjects implementations of C#, Swift or (forthcoming) Java.

But somehow not only does Delphi deserve a label of it’s own (albeit shared with ObjectPascal as if it were the only implementation of that) but it is somehow entitled to the recognition of if not all then the lion’s share of references to Pascal as well ?

Where is the logic in that ?

Perhaps once upon a time Delphi was pretty much the last bastion of Pascal, but that hasn’t been the case for a very long time.

Bear in mind also that the TIOBE index does not include sources you might expect such as StackOverflow or GitHub. But it does include youtube, ebay and c|net.com. Yes.

Just think about that for a minute. Youtube might be a fair source given the use of that platform for tutorial videos. The only problem being that it is also a source that can then be very easily influenced by marketing or other promotional activity.

More importantly though, when we again look at the results for “Pascal”, then there seems to be a far stronger argument for creating entries in TIOBE for “Lazarus” or “FreePascal” than there is any reasonable suggestion that these results should be included in “Delphi”.

Then there’s c|net.com

Again, the inclusion of “Pascal” results in Delphi means that Delphi has been boosted in the TIOBE by some bizarrely unrelated content indeed.

And with ebay.com, well, very predictably most of what is to be found there says far less about any current interest in Pascal or Delphi and far more about what people no longer having a need for Pascal references are clearing out of their attics.

Of course, I’m sure equally ridiculous results are to be found with any number of other languages but the point is that either TIOBE is a fundamentally flawed methodology which needs to be taken with a barrel of salt, or it is a reliable indicator worth shouting about.

But it can’t be both.

Appeal to Reason

A far more reasonable argument would be that Delphi should be removed from the TIOBE Index and leave only ObjectPascal and – if you must – just Pascal.

Having said that, I would agree with Craig Chapman on this point, that nobody realistically uses the “original” Pascal anymore but rather people using the various implementations of ObjectPascal often typically think of and refer to it as just Pascal.

In any event, I know that predictable plaudits from the usual quarters about “gains” in TIOBE are just as irrelevant as TIOBE itself.

24 thoughts on “Musings on TIOBE”

  1. Mostly I get a kick out of using Tiobe to troll people who used it to demonstrate that Delphi was dead and/or dying.

    Statistically meaningful or not, I think it’s fun.

    1. I’m happy for you that you get a kick out of it, but at the same time feel rather sad for you. 🙂 / 🙁

      1. Oh, I do.

        I wonder how tough it would be to get the actual position rankings over time? That would be an interesting chart.

        1. You can use the internet wayback machine which isn’t that tough, but would be nice if you could get it more easily, straight from TIOBE.

            1. So how do you explain having Delphi/ObjectPascal as a ‘language’ in the index, but not C++ Builder/C++, for example? Go on, have a go. 🙂

              1. Delphi is probably the most popular flavour of Object Pascal. Excluding it would kind of defeat the purpose of tracking whatever it is that Tiobe is tracking.

              2. Delphi is an implementation of Pascal. Not the only one and these days actually probably not the most popular (FPC might hold that claim these days, but there’s no real way to say either way). But that’s irrelevamt because TIOBE aims – and claims – to track languages, not particular implementations.

                Where are the other most popular implementations of other languages specifically identified in the index? Can you identify a single other one ?

                So nope, sorry, even if it is still true, that doesn’t actually stack up.

              3. Delphi is also used to describe both the product and the language. C++ Builder, not so much.

                I also think Oxygene should be included, too. It is a flavour of Object Pascal,, after all.

              4. Oxygene is included, but it doesn’t get any contribution to its ranking from “Pascal” references or even “Delphi” references even though it is an implementation of ObjectPascal and at one time even was a version of Delphi.

                However, neither Hydrogene (C#) nor Silver (Swift) get separate consideration.

                The fact that Delphi as a brand is applied to the IDE and the language is irrelevant. At is applies to the “product” is of no interest to TIOBE, which is about languages not IDE’s.

                As far as considering “Delphi, the language” is concerned, if the “Delphi language” is sufficiently different from other ObjectPascal implementations that it should be individually recognized then it must also be sufficiently different to be individually counted. I don’t believe that it is (sufficiently different). As I said, once upon a time it might have been reasonable to claim that it was, but that is no longer the case.

                Do you want your cake ? Or to eat it ? 🙂

              5. We’ll have to agree to disagree.

                I’m just pleased that Delphi is still generating so much interest.

              6. The indications of success are all over the place.

                And as I wrote, I’m getting a kick out of peoples’ reactions.

                Interesting factoid: Over the lifetime of the Tiobe index, Delphi has been in the to 10 for about 2/3 of the time and never out of the top 20.

              7. Yep, “all over the place”, as long as you only look inside the echo chamber. Outside, things aren’t quite so rosy.

                Incidentally, is that “Delphi the programming language”, or “Delphi the range of automotive technologies” ?
                Just asking. TIOBE won’t see any difference. I wonder… can you ? 😉

                You can wilfuly ignore it all you like, and I know you will, but it’s an unavoidable fact that Delphi’s position in that TIOBE index is demonstrably based, in part, on wholly unrelated and irrelevant data and in large part on unwarranted data.

                But shhhh… keep it quiet and just keep your eyes firmly fixed in front, right between those blinkers and through those nice rose tinted shades. It’ll be alright. Soon be over. There, there. Hush now. 🙂

              8. You should broaden your horizons a little. There are a handful of free Delphi and C++ boot camp sessions online and a Linux one coming up.

                Lots of interesting things going on in the Delphi world. Go ahead. Go on, have a go.

              9. TIOBE – like you it seems – counts marketing activity, not interest in that activity. It measures “popularity” by (e.g.) how many videos there are on youtube or how many web pages Google has found. Not how many people are looking for those videos or web pages.

                This would be like deciding an election not by how many votes each candidate receives but by how many speeches they gave during the campaign.

                And even if that were not the case, you said it right there yourself: “going on in the Delphi world” (and I should broaden my horizons ? 🙂 ). I’m very well aware of those “bootcamps” (marketing). It’s difficult not to be since EMBT are intent on spamming anyone who they ever got a whiff of an email address from with information about them, whether interested or not.

                Here’s an interesting thing about activity in increasingly confined space … it necessarily gets more and more intense. And if you look only at the activity without paying attention to the overall space then it can appear that the activity itself is increasing. Right up to the point that the pressure causes all apparent activity … to stop.

                😉

              10. On top of the free training, Embarcadero is also (currently?) offering the Starter editions for free.

                Nice.

                So nice that Delphi has re-entered Tiobe’s top 10!

  2. Embi/Idera could, of course, simply release their sales figures. Then we’d know what we need to know. But they’ll never do that.

    On the other hand, is it any comfort that of the 6 Delphi jobs I applied for, only one company was on subscription? The rest were maintenance jobs for D2007 through XE3. Cost, uncertainty (and Unicode – D2007) were the reasons I was given.

    There is an Embi video featuring a complex, award-winning movie industry application. Jim McKeeth is surprised to discover it’s in D5(!)

    1. Why would a company release their sales figures?

      In any event, Embarcadero talked openly about several years of year over year increases in Delphi revenue right after they purchased it from Embarcadero. People still managed to find fault.

      1. There’s a difference between “talking openly” and “openly talking”. Sure, they were doing a lot of talking and throwing a lot of numbers around, but without a scrap of evidence to back those numbers up or even to explain how the stratospherically high level claims were made up.

        And yes “fault was found” (or rather, significant doubts expressed) because the claims made simply didn’t stand up to scrutiny.

        As for “why would a company release their sales figures ?”, given the context in this case I think the more pertinent question is why wouldn’t they ?

        One of the biggest reasons cited for the decline in the use of Delphi is a perception that it’s days are done.

        What better way to give the product a real shot in the arm than to prove that this perception is wrong by presenting the figures to refute it ?

        Unless of course the figures don’t tell that story at all and instead confirm the negative perception, in which case yes, you could perfectly understand the desire to keep that quiet and instead grasp desperately for “good news” stories such as the occasional up-tick in a dubious “popularity” Index.

        1. I think some people went out of their way to find fault.

          Time spent chasing their moving goal posts is probably better spent improving the product.

          But we’ve been down this road before.

  3. I think the label ‘language’ is simply about the language from a bird’s eye view. That’s the one that makes sense from the perspective of long time comparisons.

    Delphi does not compare to VS/C#. Delphi compares to ADA and GPS and GNAT.

    Except from the GUI just focusing on the language Delphi/Object Pascal once achieved with classes what ADA never managed to achieve with the language solely.

    ADA simply doesn’t offer convenient string handling which is the bigger show stopper for getting more and more people on board. The Pascal language is more flexible.

    If a few people more would search for ADA programming news (for example) ADA could catch up with ABAP (1,2%). That’s pretty much the half of the sum over Delphi and Lazarus. PL/SQL became little more popular again … These are not the kids attending high-school. Those are the elderly people aka. the parents of the aforementioned celebrating a class reunion. Wondering who enjoys the bigger fun that evening.

    Julia became popular when Google had a conference.

    It seems to me that TIOBE-Index can fall victim to marketing activity. That’s my observation too.

    I think the message from TIOBE is – if you are using such a language (even just those listed), you are not doing wrong.

    1. Is that you , Michael? The bunny gives it away.

      If I were going to learn a new language for the sake of learning a new language, I’ve heard good things about F# and Go. In fact, Go is having a bit of a resurgence on Tiobe.

      1. Psst! No one knows ;).

        Thanks for the advice.

        I am happy with Python and Pascal so far. I am not a technical person and I simply don’t care that much about technologies at all. Only in the very specific case of what can be called ‘microservices’ hosted in a regular on-premise scenario I had investigate further.

        Honestly Bruce. For the moment I don’t need more.

        I was just surprised that I was in the position to use the GPS (GNAT) without having to get to know something new and remembered a few things we learned at university about Ada. Ada is pretty ‘limited’. There is almost just one way to achieve something and that’s it.

Comments are closed.