Home > Delphi, firemonkey, freepascal, Linux, Object Pascal > Delphi Dying? Think again, Tiobe

Delphi Dying? Think again, Tiobe

At the beginning of last week, Tiobe once again threw a punch at Object Pascal. Playing the whole “Delphi is dying” tune, while focusing on outdated and quite frankly irrelevant episodes from the past. Hoping no doubt, to leave the reader with an impression that Delphi is stuck in the 90s.

This is the same pattern we often see whenever Delphi or Object Pascal in general experience significant growth; or to be blunt, when the author cannot be bothered to think independently, but simply parrot hearsay and misinformation on autopilot.

It is lame, superficial and Tiobe’s biggest mistake to date.

Tiobe

Guess “alternative news” is no longer limited to individuals like Alex Jones

Just to underline the problem areas here. The ranking is based on their internal system (there is no standard for how to rank popularity), and while I have issues with how they build up their score, it’s ultimately the March editorial text that has caused irritation and shock. You don’t declare a language as dead when there are over 10 million developers using it. This type of editorial could have very real consequences – which in turn brings us to their ranking system and how they arrived at their conclusions.

I would have understood their statement if it was issued between 2007 and 2010, because Delphi was at that time transitioning between Borland and Embarcadero. But to issue something like this in 2020? After a decade worth of restoration, optimization, modernization and above all – forging a thriving community that goes from victory to victory month after month, year after year? It makes absolutely no sense.

Significant growth

In 2018 there were roughly six million Delphi developers (I worked at Embarcadero at the time), with a total estimate of ten million Object Pascal developers worldwide when counting all alternative compilers, dialects and indeed – known piracy issues.

“Tiobe failed stupendously in their data mining operation, they seem to be oblivious regarding the demographic in which the language is used”

Since that time Delphi has made strides into the universities in Scandinavia, South-America and the Middle-East. Turkey recently announced their dedication to native and archetypal software development with Delphi (provided free for students), which adds a whopping one million students to the already large body of users.

Embarcadero has slowly but steadily rebuilt much of the infrastructure that existed under Borland. From professional training at Embarcadero Academy, to entry level training at LearnDelphi.org. The Idera community pages likewise produce a large body of articles on a weekly basis. Comparing the Delphi and C++Builder ecosystem today with it’s tragic state back in 2010, is like day and night.

academy

Training is available for both Enterprise level developers and students alike

With so much positive happening in the world of Object Pascal, Tiobe’s article comes across as a grave, intentional misrepresentation at worst, or an intellectual emergency at best. It is completely out of place and carries the tell-tell signs of an echo chamber.

Tiobe has lost all credibility

I have to be honest. I have never taken Tiobe that serious, because they have made to many mistakes in the past to have any form of credibility when it comes to Delphi and Object Pascal as a language. And when I say mistakes, I mean monumental blunders that just annihilate all possibility that they treat languages on equal footing.

“not only have Tiobe failed in their indexing, they have completely and utterly misunderstood the demographic in which the language is used”

If we go back a decade, Tiobe actually based their numbers on the keyword “Pascal”. In other words they excluded not just Delphi commits to GitHub, BitBucket and similar services – they also managed to exclude Freepascal and every subsequent dialect that signify Object Pascal as a whole. So for quite some time their entire statistics was based on the off chance that people typed “Pascal” in their project or commit entries.

To make matters worse, their search tech was not smart enough to recognize “Pascal” in composite words. So if you wrote “ObjectPascal” in a single word, the commit was excluded; As was “Freepascal”, “Smartpascal”, “Oxygenepascal” and variations using a hyphen (and the same for abbreviations).

Developers also use the term Lazarus and FPC interchangeably since Lazarus typically means people use the LCL, the visual framework used to write desktop applications with Freepascal. So while Freepascal has nothing to do with Delphi in terms of intellectual property, the two compilers are used by the community as a whole.

But let’s look at why Tiobe’s indexing fails for Delphi. Just what are they doing wrong?

  • Delphi has been around for 25 years, and it’s roots stretch back to the birth of C. Using Stack Overflow as an indicator for popularity is ludacris, since the majority of errors and problems have been largely ironed out in the past, leaving only extremely advanced and rare topics. If problems is the criteria, then I guess that explains why C# and Java soars in the ranking.
  • Nobody searches google for “Delphi programming”. You search for explicit topics like composite polygon clipping with GDI+ and then add “delphi” to limit the search to said language. Just like C/C++, Object Pascal is an archetypal language. It stretches from kernel work with inline assembly, to cloud services and HTML5 rendering. So the topics people search for are usually straight out of the operating-system strata.
  • Delphi developers communicate in dedicated groups, such as Delphi Developer on Facebook. There is also a thriving community on the Delphi Praxis forums, not to mention the Freepascal forums. None of which seem to be included in Tiobe’s activity statistics.
  • Object Pascal has several frameworks and run-time libraries. Delphi ships with two:
  • Freepascal operates with its own, open-source variation called the LCL
  • Freepascal also targets WebAssembly and JavaScript and have variations of the LCL adapted those targets
  • And then there is third party, commercial alternatives that covers HTML5/JS like TMS WebCore, Smart Pascal, Oxygene Pascal and the upcoming Quartex Pascal. Around these runtime libraries (VCL, FMX and LCL) there are thousands of libraries, components and frameworks, large and small, that don’t necessarily put  “Delphi” or “Object Pascal” in their metadata.
  • Tiobe also fails to include feeds like BeginEnd.net or DelphiFeeds, which syndicate on average 3000 unique blog-posts a year, representing a consistent and very much alive stream of information and content.

Delphi and Freepascal, which represents the most widely used compilers, are predominantly used to write commercial, closed source products. Which by consequence means that code and the activity involved is not public. For Tiobe to so utterly misunderstand the demographic for Object Pascal in general, is quite frankly outrageous. If you are going to rank a language that involves millions of users -then at least have the decency of investigating the communities it involves.

Excluding the factors I have outlined above, makes as much sense as excluding mono from C#.

Incompetence or plain ignorance?

It was only after an avalanche of complaints in 2014, orchestrated by yours truly, where members of the Delphi Developer group on Facebook sent complaints en-mass to Tiobe that they addressed the use of “Pascal” to represent Delphi and associated dialects. Yet for all the complaints, outlined in letters that no sentient human being could misunderstand – all Tiobe managed to do was to add “Object Pascal” to their list. Which, believe it or not, was unfamiliar to them.

It’s funny because it’s true

But do you think they bothered to do it right? Afraid not. Instead of aggregating all of the dialects, frameworks and variations of names under a single banner, they still to this day operate with two very specific search elements, namely “Delphi” or “Object Pascal”.

I sure hope the dairy industry doesn’t hire Tiobe to do statistics on milk, because if their coverage of Object Pascal is anything to go by, they will be ranking by yogurt.

No updates since 2018? Really Tiobe?

When a global Index service like Tiobe manage to write, and I quote:

However, the latest Delphi release is from 2018” -Source: Tiobe, March report

You really have to ponder if human beings are involved in their business at all. I’m not expecting much, honestly, but I do expect them to interact with the community they supposedly track and build a statistic on. Have they visited Delphi Developer and talked to the admins about growth numbers? Have they talked to Embarcadero to get some figures and coverage there? Did they contact the Freepascal community to get some download statistics from them?

Delphi 10.3 was released on november 21st 2019. The version that Tiobe seem to think is the last update, is in fact the last release with a city name (which was launched in 2018). Since then there have been three successive, regular updates; most developers are now using version 10.3.3. With 10.3.4 about to be released. This just underlines how oblivious Tiobe is to our part of the industry.

Delphi_IDE

Modern Delphi is used by millions of professional developers globally

Delphi and Freepascal is different in more ways than one, but beyond language compatibility there is one aspect that is quintessential for them both; namely their role in the commercial sector. Where other languages, like C/C++ or (for example) JavaScript see a lot of open-source activity, especially with regards to Linux and Node.js – Delphi and Freepascal are predominantly used to write high-quality, commercial, closed source business applications. In other words, the vast majority of code produced by the millions of Object Pascal developers around the world – is never publicly committed to GitHub or BitBucket.

So not only have Tiobe failed stupendously in their data mining operation, they seem oblivious to the demographic in which the language is used.

academy2

The selection of books, video tutorials and coding material for Delphi is recovering at a rapid pace. And much like C/C++ there are classic books on Amazon that are just as relevant today as they were 10 years ago. Thankfully Delphi don’t suffer the “learn Delphi in 2 weeks” style books, because any developer worth his salt knows that such books are for the gullible and naive.

Developers use Delphi and Freepascal to deliver rock solid, data driven services; services that is expected to run 24/7 with zero downtime, processing millions of transactions. Delphi is used to write medical software that manages networks of hospitals, with tens of thousands of patients. Delphi is used by banks to power their ATM machines, and Delphi is used to do the heavy lifting in thousands of POS (point of sale) terminals across Europe. Terminals that don’t have time to wait for a garbage collector to kick in, only to cause catastrophic CPU spikes (I won’t mention names, but attempting to switch to C# was a disaster for one of the biggest POS terminal suppliers in Europe).

academy3

Delphi represents the back-bone of the medical software industry in Scandinavia and Europe at large. Many have tried to replace Delphi, but end up with expensive lessons in why archetypal languages are indeed called archetypal.

Object Pascal is used by governments, fortune 500 companies and the guy with a million dollar idea working out of his parents garage; It is used to write cloud accounting software, invoicing systems and medical journaling; It is used by the music industry and graphical design. There are large and extremely successful products out there that don’t advertise that it’s written in Delphi (just like you don’t stamp “made with C++” on a piece of software). You would be surprised!

Object Pascal it’s used by developers who value speed, security, creative freedom and the benefit of a mature feature matrix that only C/C++ and Object Pascal brings. C is by definition three years older than Pascal, but these two archetypal languages have evolved side by side.

There is a reason these two languages represented the university curriculum for close to two decades; further still if we include Turbo Pascal. And Delphi is once again returning home to academia. To the applause of teachers who were forced to teach Java, and hated every minute of it (I helped setup two universities with Delphi in Norway, so I have some first hand accounts in the matter).

Reflections

Since Delphi is growing aggressively these days, Embarcadero is making waves. A few months back we saw how a well known team of C# influencers took a stab at Delphi (and me in particular, no doubt because I have been so outspoken). And as Delphi now returns to academia – Tiobe is demonstrating a bias that leaves little to the imagination. Especially when you know their numbers account for nothing and are bordering on fiction.

giphy

If I didn’t know better, I would say someone is worried. And it’s not the Delphi and Freepascal communities. Modern Delphi is a power-house for software development, and it has the potential to disrupt and restore the devtool market.

There is a lot of money involved, so I am not surprised we are seeing a string of attempts at undermining the importance of Object Pascal. I had hoped Tiobe would adopt a higher standard though.

Then again, the ship of credibility sailed when they couldn’t tell Turbo Pascal from Object Pascal.

  1. xepol
    March 8, 2020 at 10:59 pm

    Try job hunting for Delphi jobs. They exist, but chances are you have to move quite a ways to get to them. As for 10.3, that wasn’t an update so much as a bundling of a 3rd party product that already existed and a few bug fixes. I wouldn’t call anything there “new”.

    Delphi development has crawled since they decided to integrate the enterprise…

    Since then, Embarcadero has drove away some of the most skilled employees it has, in favour of contracting the work out, it wasn’t picked up the pace.

    Sure, we get a few bug fixes and a few api ports, but beyond that?

    We shall see.

    Frankly, I wish I could get more Delphi jobs, it is my favorite language, but it can be a pretty restrictive ecosystem when it comes to playing with other languages.

    • March 9, 2020 at 9:18 am

      I just did. I had 4 job offers in less than a week. I took one in oslo, but could have worked from home. The problem is that people dont use the groups, like Delphi Developer. Thousands of companies using delphi out there, but until EMB ressurects the job pages, we have to use our network.

  2. stef1996
    March 8, 2020 at 11:09 pm

    I agree, Delphi remains a great tool, and TIOBE is not accurate… But what about PYPL (Delphi is ranked 28) and Redmonk ? (not even in the top 20) 😦

  3. Rui Filipe Ribeiro
    March 9, 2020 at 4:54 pm

    Another reason for not growing the number of Delphi programmers is because the product is relatively expensive. If it cost half the price, I’m sure there would be many more interested in this great development platform.

  4. Tomek Kańduła
    March 9, 2020 at 8:08 pm

    This is interesting, first time I see something like this on Tiobe. Latest release is 2019, they should correct it. But in fact, Delphi is very niche product and it is hard to find Delphi jobs, in my country, almost non-existent, so people go into more mainstream stuff. I guess Delphi will be around the corner as long as Win32/64 and legacy code exists.

  5. Dmitry Belkevich
    March 9, 2020 at 11:49 pm

    I think that TIOBE index is totally inacurte. Let’s speak about the Java Script for example. How this language can be at the 7th place? This language is the only one with a few exceptions that works on the web front.
    I think that hackerrank could get us more faithful index:
    https://research.hackerrank.com/developer-skills/2020
    JS get first place there, and Delphi at the 9th. I think that it more faithful.
    Delphi is the great language. I have use it about 20 years, we develop closed source medical visualisation software, millions of lines. And I agree that many sources on Delphi is not open. But this is not a reason to significantly reduce its ratings.

  6. Krom Stern
    March 10, 2020 at 7:27 am

    I’d also have to add that StackOverflow is under the similar bias. For many years in a row it is not including the Delphi/Pascal into it’s developer survey (top30 languages iirc), even when it’s clear that Delphi is within top20 and was the most often self-reported under “other” in some years.

    • March 10, 2020 at 9:21 am

      Indeed. I remember Nick Hodges took them on and got Delphi properly represented there. Sadly the endeavour has been somewhat thwarted by a handful of brogrammers that act as judge, jury and executioner, creating an environment that is quite toxic. I haven’t bothered with that website in years, because they seem more interested in nitpicking individual words – than making sure good solutions reach the audience. But you are quite right, there is a general bias in the population. This no doubt is partly Borlands fault. A lot of people lost a lot of money when Borland went down, and while the pressure from Microsoft is the root cause, Borland did drop the ball on their last releases. So I dont blame people for holding a grudge against Borland, but i do think its strange that they categorically refuse to give the product a second chance. The product never failed. Management did.

      • Joseph Mitzen
        April 8, 2020 at 7:09 pm

        Jon, Stack Overflow did include a write-in option at one point. Even with Marco et al whipping up the user base to vote, Delphi couldn’t crack 2% representation. Stack Overflow added any tool that got significant results into its subsequent surveys; Delphi failed to make the cut.

        The Stack Overflow data scientists did a lot of data analysis from the survey that allowed Delphi and many interesting things were learned, including that Delphi users’ pay doesn’t remotely match their level of experience. In essence, almost all the Delphi users had decades of experience (abolishing the myth of the new Delphi developer) but they weren’t getting paid in relation to that experience, also abolishing the myth of Delphi being used in the real world much outside of maintaining legacy software.

        I’ve debated Nick Hodges and others successfully on this subject before – there is no objective evidence that there ever were “six million” Delphi developers. In fact, all quantifiable evidence points to a very small handful of legacy Delphi developers left in the world. Even Nick Hodges at one point confessed to believing that Embarcadero’s user estimates were off by an order of magnitude.

        I find it amusing you’re attacking TIOBE; the Delphi diehards used to dismiss it when it ranked Delphi poorly. When you and Bruce McGee started gaming the system in various ways to bump the figure up, Marco began running blog articles announcing Delphi’s rise in TIOBE! Now that there’s a negative article, it’s “lost all credibility” again. The fact is its methodology is fundamentally flawed, as many commentators have pointed out in the past. It actually OVER-estimates Delphi and older technologies because of its emphasis on search results, even if a page hasn’t been updated or viewed since 1999.

        The problem for those who wish to advance the “Delphi is dominant” hypothesis is that all other ranking methodologies that have received backing from data analysts and others paint Delphi in a worse light that TIOBE ever did. Hence, TIOBE is both friend and enemy.

        As someone who works in data analysis, I’d love to have a longer discussion with you at some point if you’re open to it. I’ve spent years trying (somewhat in vain) to analyze what I’ve come to call “The Myths Of Delphi” with objective evidence to get a true picture. I admire your… passion, but I believe it’s a lot more helpful to let figures speak for themselves rather than accuse any source that disagrees with your hypothesis as being biased or otherwise working against you.

        I’d be glad to share some other figures with you. I did a lot of original research before entities like Stack Overflow opened up their data and made it easy to access. The sad reality is that no objective measure of programming language adoption paints the rosy picture its fiercest advocates promote. But as David Heffernan once wrote, “a language doesn’t have to be popular to be successful”. And as Saul Alinsky observed, you can’t get to where you want to go without first knowing where you are now. If the community could understand (and accept) where they are now, realistic plans could be made for getting to where they’d like to be.

  7. April 7, 2020 at 9:52 pm

    And for April ’20 they’ve now even split Delphi and Object Pascal *facepalm*

  1. No trackbacks yet.

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: