Comments (14)
> Artificial intelligence (AI) is one of the most fascinating and rapidly-growing areas of computer science. Although still in its early stages, AI has already started to revolutionize the world we live in, with applications in everything from self-driving cars to medical diagnosis.
I worked with Delphi personally and professionally for many, many years. You were at the precipice of unemployment in the 2000s if you used it then. To do it now? You're like a looney toons character suspended in mid-air. There's Delphi work around, to be sure, but you're competing against people with 30 years of commercial experience building -- or rather just keeping them limping along -- today, and they are as desperate as the Powerbuilder, Oracle Forms, FoxPro and Lotus Domino folk in scratching out an income in a stagnant pool.
Delphi died an ignominious death a long time ago, and it is truly sad. I miss it; frontend development today is a joke compared to what we could do with Delphi. But so what? It's dead. And it's not coming back.
Yeah, Delphi is not in the top 5, but is clearly very far from dead. Especially in comparison to the untold number of languages and companies out there.
Object Pascal can also be transpiled into other languages, where people are not aware of what the original code was written in. For instance, Russia makes wide usage of PascalABC, which compiles/uses .NET. There is also Oxygene (RemObjects), that can compile to .NET too.
Popularity and usage does not equate exactly to the job market. For instance Scratch is more popular and widely used than Rust, because of its reach with the young and schools. And, many jobs can ask for programming skills, like knowing Python (which boosts its ranking). But they are often asking for that language as a supplement or plus, not as the main reason why they are hiring a person.
Plus upcoming conference, https://entwickler-konferenz.de/en/
Genuinely asking, not trying to be snarky. My prior assumption is typically that a capable engineer in one language or stack can learn another relatively easily.
why?
This is the evolution. It has never been easier to make apps just by using a browser that runs on all platforms.
I'm not saying it's better - Delphi sucks for a lot of reasons - but this is the only aspect where it really shines.
So with VCL/FireMonkey, you get all the RAD like tooling that VB/Delphi are famous for, full AOT, and low level systems programming capabilities, including inline Assembly.
Also, Delphi apps can be made to run on Linux, Mac and even Android and IOS.
Interface builder had that on macOS; that’s basically dead now. I feel like Visual Basic had that too? I don’t know if that still exists.
- the IDE was unstable and crashed a lot
- the license was very expensive and the commercial relationship felt predatory
- new features got added all the time, while long standing bugs weren't prioritized (e.g., mobile apps support)
In the C++ variant (a combination of C++ with Delphi wrappers):
- the compiler(!!) was unstable and crashed a lot, where you had to make small irrelevant changes to your code to make it compile without crashing itself
In general:
- the overall culture around it seemed to attract developers without concern for technical debt, which maybe was a consequence of Delphi's own strengths; i.e., every Delphi project was a big ball of mud that you had to fight against
AI may be helpful at times, but to limit one’s self to only the knowledge and experience they have is… short sighted at best.
I for example find LLMs not useful in regards to coding on 6510 or 68000 especially in assembler when developing code for a product of the demo scene.
x86 became pretty useful lately, but still, on certain machines with bit manipulation, you would better take your time to triple check your code and don't rely on LLM.
I would love to see a change here.
As next step of low code/no code tooling, the agent will do the actions for us.
We are already seeing this on SaaS offerings.
(Free)Pascal seems to work great though. I think enough of that is in training data that it can be used as well as any language. There isn't much special to consider to get it right. It is not like figuring out how to do Rust or C++.
- professionally (for money) - personally (for knowledge’s sake)
Regarding the former, I’m nearing retirement age, so personally I don’t care as much; I’m no longer “investing [in] a dead craft”. Assuming it is dead (I don’t think it is).
Re the latter, I have rejected it. I love problem solving. And I consider programming a tool I use to solve problems. Regardless of whether it’s an LLM or my old C text book, if I limited myself to only what came before me, then I can’t possibly improve on the current situation. My solutions would be in a perpetual state of stagnation. I can’t speak for others, but that sounds boring AF to me.
A 22 year old fresh out of undergrad almost certainly wants actual money far more than they want intellectual engagement. Most of them are better served by picking up a boring workhorse language that they can reliably get paid to write. Inevitably some will speciate into more esoteric fields, but that's the exception, not the rule.
At least it’ll eventually become easier to distinguish oneself with something better. You’ll just always be slower.
It takes time to train and use a new tool. That applies to LLM and humans. Would you use the same drill to hang drywall and core through a concrete floor?
Personally I've never seen anyone use Pascal as anything other than the butt of a joke or a background slide on "how far we've come" since the 80s. Nobody even seems to remember object Pascal.
... But I'm also in a sector that routinely relies on Fortran code so ymmv
There are people who want everyone to forget Delphi/Object Pascal and they wish it was dead. But what they wish for and reality are two different things. Delphi still makes money, otherwise they wouldn't sell it.
Maybe in some alternative universe they would have been just as successful using BCPL, but the fact C and C++ were ignored at Apple until some employees came up with MPW as side project until it was too late to turn back, speaks volumes about Apple culture.
Just as it does the way A/UX was originally designed.
I wrote Mac OS, which was replaced by OS X.
macOS is a rebranding from OS X.
Delphi is pretty much relevant in Germany, to this day there are conferences to attend to.
You can still get tickets for this year,
I hear it is quite popular for creating GUIs wrappers for CLI tools.
See this example: https://github.com/lelanthran/frame/blob/master/frame-browse...
They are the main product, not something that is seen as cost center nowadays.
Also they cross compile to all major desktop and mobile OSes.
The most important ones I found are the windows MySQL GUI, Cheat Engine and Total Commander. I genuinely was searching for more than 10 minutes and everything else is either abandonware or has been rewritten to a different language.
That is not evidence for "no reason to exist".
The major reason for Delphi and/or Lazarus and/or Qt and/or similar WYSIWYG tool to exist is "when you want to produce a cross platform GUI application using a drag-and-drop form builder."
The fact that I can write a chat application that uses 30MB of RAM at runtime instead of 800MB like electron does is just icing on the cake.
You can also use Delphi to produce Android, iOS, macOS, and Linux apps. All from single code base.
You do not get that much portability with many other languages. C, perhaps. But FreePascal has a bigger standard library and many other libraries that support many platforms. It is also a much safer language with checked array bounds and while there is support for low level unsafe things you do not have to use those nearly as often as in C. And while the compiler might not be as fast as Turbo Pascal (or Delphi?) it is still amazingly fast compared to any other compiler I have used this century.
What's not to like? Guess the lack of attention from developers and potential risk of there not being enough around to maintain it? I honestly do not know, but you do not hear much about it and not many projects seem to use it.
I did consider becoming a contributor to make Lazarus better, so maybe something I should revisit.
The first thing I’d do is make sure Lazarus works perfectly on Windows, macOS, and Linux. For the other platforms, fpc excellence is fine, but they’re not important enough, I think, for Lazarus. One counter argument might be certain embedded applications but I suspect that would not be the right prioritization…
From his own words, https://behindthetech.libsynpro.com/001-anders-hejlsberg-a-c...
... and Anders Hejlsberg continues to be the lead architect of C# and is also core developer of TypeScript!