Turbo Pascal fealt great then (everything was coherent, relatively well-designed, speedy, etc), but after recently looking back at the code from then.. ehh.. we have better things now.
(Except perhaps in ease of getting started - for beginners.)
BTW, Synapse is better (IMHO) than Indy. One of the biggest damages of MS (yes I blame MS first) is that turn anything in a monster of complexity, I don't know if trying to mimic Java or as side-effect that a big company like MS can't understand how do lean app development.
Then the management idiots at borland follow MS (like everyone else) and the rest follow both. That is how you get something like Indy and other libraries.
Was WAY LATER with the arrival of python/ruby that that become more popular the idea of simple/good design on libraries.
Some of it is returning back to Delphi, however, because management price Delphi out of the equation of many of his own customers not exist a good ecosystem to rely on.
--- P.D: Still do good web development in languages with static types is a bit harder (even F# struggle with it); and I'm unsure what language of this family show a great experience here.
Are you using a framework for that or is it your own implementation? I've found mORMot to be useful:
However, in this case, this is our own implementation. And unfortunately, this is due to a large number of corner cases we need to handle (such as Sybase support, own SQL driver support, because of multiple result sets, etc.), I don't believe a framework could replace our implementation.
Trust me, though, if we were to rewrite this all from scratch, a completely new approach would be taken.
But generally speaking, if a company is still using Delphi, it's probably because they don't have the liquidity to actually re-write their code base.
Personally I just want to Get Stuff Done.
> I don't believe a framework could replace our implementation.
It's pretty easy to use as much or as little of mORMot as you like. I use it for its webserver and websocket implementation but I don't, for example, use its database layer (using FireDAC in preference).
There are some great sets of component libraries around though - tmssoftware and devexpress are very good, and of course you can always use c.
Whereas someone working with, say, C# or Java, can just go and find a library that's native to their language, ready to use out of the box (even if internally it wraps that very same C library).
It's the usual curse of a small ecosystem. Things were different back when Delphi was popular.
Easy, fast Delphi based web server. No affiliation, just a happy customer.
It was a constant infuriating disappointment. Delphi should have been so much more.
Hell, I miss it. Very much.
Delphi may be easy, but it's not simple. Once you get into the meat of things, Delphi's ecosystem truly becomes a limitation.
Delphi's main drawback is its lack of library availability. If you are in the marked for modern technology, using Delphi is a major hindrance. And if you do find something, it's usually not of the same quality as the alternatives for other languages.
I have nothing against Pascal, per say, but I do feel that I am being deliberately terse for the sake of the compiler, rather than for clarity. Indeed, having to declare all variables at the beginning of a method doesn't necessarily make it more clear, sometimes the reverse.
Even a popular tool like Indy for Delphi doesn't correctly implement the HTTP protocol, and therefore doesn't respond as you'd expect on malformed headers, so you have to handle those calls yourselves.
Delphi was leading the pack in the 1990s, but has since fallen behind greatly.
I've written a web server - and maintain a web server - in Delphi, and it's not something I would wish on anyone else.