"I started my coding career using a Turbo Pascal clone for the Commodore Amiga, something called High-Speed Pascal, published by UK based company Hi-Soft."
It would be interesting if an open-source version of this Amiga Turbo Pascal clone - was available somewhere...
I loved Delphi. It was amazing. But then they ate their own future by going to the stratosphere with enterprisey tool acquisitions nobody remembers the names of any more; then they fell back down to earth, and flirted with Kylix -- Delphi for linux -- but at a time of great upheaval in the linux desktop world, and it never really took off either.
Meanwhile, the former creator of Delphi had left for MS and created C# that at the time was already beating Delphi at its own game.
By the mid 2000s Delphi was already dead in the water: poor unicode support, no 64-bit compiler, and a language that hadn't innovated much since the 90s.
It's a shame, really. Delphi in the 90s was on its way to rule the world. Only then suddenly it wasn't.
My first paid programming job was Delphi. Worked with 1, 2, 4 and 6 I think. Then it went extremely enterprise. And I'm saying that even though it was used for an accounting application.
I had the same experience and I often wonder about the tendency to "go enterprise" - it seems more like sabotage than idiocy after enough coffee. Probably just the consequence of excessive profiteering /shrug.
I still remember interbase, now called firebird. Of course, sqlite is much more prominent today for an embeded database, but for the times without sqlite...
Sadly i have to use that piece of shit called firebird.
It has all the downsides of service based DB without all the advantages of file based DB.
And the documentation is way below average, backwards compatibility is a joke.
Not to mention the 3rd party software had to design their own(horribly bad) way to handle geometry in firebird... and they keep transactions open forever - and bloody firebird prior to 2.5 had no way to drop the dead connections.
I’m genuinely interested in your frustrations, because I’ve been using Firebird to great satisfaction for about a decade. Some more substance would be required, however...
Interbase was a proper client server db. If you wanted embedded you needed Paradox. Ah, I have many happy memories of pulling all nighters repairing corrupted Paradox files...
I vaguely remember that Interbase was a proper client/server thing at first. I'm pretty sure we were using Paradox databases with all their quirks in 1998-2000, including support people fixing broken db files for customers.
Heh, good memories of hitting ^Z in the Interbase command line client app to suspend it, and it pausing the entire server until the client was unpaused or killed. I'm not even sure how that could possibly happen (unless there was some blocking heartbeat thing), but it was 100% reproducible.
An it was called Phoenix before that because, you know, "Netscape, reborn", but they had to rename it because of a trademark complain. And that's why Firebird was choosen.
My impression was they had already lost the race before they went down the enterprise route. If anything it was their general failure in the market that pushed them down that route.
They were under pressure from Microsoft (Visual Studio, FoxPro, Access and others) as well as from the web which was disrupting everything at the same time.
I organized the Borland developer conference in my country as a marketing intern in 2004 and it was still quite popular, but it's true the web was just around the corner to eat desktop apps.
I also remember a coworker had been approached by MS to work on the DotNet marketing campaign and he declined, as it was seen as kind of a failure with a very uncertain future. Hindsight is 20/20.
edit: personally I have found memories of Delphi3.
> flirted with Kylix -- Delphi for linux -- but at a time of great upheaval in the linux desktop world, and it never really took off either.
It's worth noting that Kylix's failure to take off had a lot more to do with Borland's variously stupid, obnoxious and immoral business decisions than it had to do with the upheaval in the Linux desktop world. It was a strong enough concept for a product, and the base technology was implemented well enough, that all they had to do was not screw it up... and guess what they did?
All these years later I remember saying "fuck it" when Borland decided to wrap up some important bug fixes into the (full price) upgrade for Kylix, rather than just giving them to existing users. The smug uselessness of the one or two Borland employees who liaised with the community online has kind of stuck in my memory as well. The technology deserved to survive but the company sure didn't.
In the bubble they definitely thought they could not die; they were shooting up people who were aware of Linux made a lot of money from their shares at that time (if they sold in time as they never recovered). The CEO at the time acted like it would last forever and I guess he took the employees with him on a smugness ride. Such a shame as they could've gotten far as you say.
Wow, 25 years. Wasn't onboard right from the start but something like Delphi 4 or 5 when I was in school. Ended that "career" with some cracked version of Delphi 7 Enterprise (obviously one needed the biggest version as a 16 year old!). I have good memories of Delphi, was my start into programming. Nice to see it's still around.
I've basically learned programming and database design in Delphi 7, using a couple of thick textbooks + Win32 API reference (.chm; no internet back then for us). The smoothest developer experience (build, GUI design, debug) I've ever had. Despite I had a rather mediocre PC at that time, it was snappier than anything modern, save for not-quite-IDEs like VS Code.
They also have a significantly lower barrier to entry. Just by scanning the Delphi page, I'm guessing the free one doesn't include the Linux version as advertised for the big for-pay editions. And the download is hidden behind a registration form. blah.
annual birthday party didn’t happen though - one developer couldn’t make it due to sickness and the second one decided not to go not wanting to feel alone ;-)
It was (is?) also popular in eastern Europe, especially considering a relaxed attitude towards copyright laws - even gov and public schools used to run (still run?) illegal copies :)
For those missing Delphi, have you considered VS/C#/Winforms? I gonna tell you than its binaries as portable as Delphi/Kylix(e.g. major platforms covered).
The language is much less annoying (oh how i hated Type and Var sections in the times).
The gui programming style can be similar or can be modernized.
The designer and component library is vastly improved. Third party components are cheap compared to today's "cloud" prices.
There are libs for everything.
Its free.
Can be compiled to native binaries(not sure this will leave 'experimental').
Feels like a direct replacement to me.
A lots of industrial/medical/lab instruments still use Delphi for user interface and some high level control. Delphi is still quite popular, but more and more niche, in Germany, Austria and countries with manufacturing/development ties to those countries.
I actually did some scant research on this recently and found out that they have a free Delphi Community edition which seems almost identical to the Professional Edition, has full cross-plattform capability incl. iOS and Android, and you can even use it commercially until you made a profit of $5000 off of your apps (if I'm not mistaken).
That'll probably allow 99.99% of students and hobby programmers and a good chunk of small businesses to use it free forever without ever hitting this mark and seems to me like one of the fairest schemes to use expensive software out there. It's what we always wanted 15, 20 years ago.
Imagine Microsoft or SAP or whoever offered you to use their Windows Server Datacenter or ERP or even Office suite for free until you made a $5000 profit off of using their programs...
On the main embarcadero.com website, hover over 'Free Tools' and click 'Delphi Community Edition'.
You're right, it is not very visible by going to the normal Delphi page. Not sure why - I think our website folk want to push people to the trial not Community. But here's the link: https://www.embarcadero.com/products/delphi/starter
Like 1600 and you get 1 year of support. After that you pay the yearly subscription fee to stay on support (about 400 or so). If you skip a year, you are back to the "never have been a paying customer" status.
It is not cheap.
Not all bad though, I do like Delphi itself, but the customer hostile attitude of the company does leave a bad aftertaste and make me want to ditch it.
This template project has a REST back end (sounds like you already have that) and demos connecting to it from native clients and from AngularJS. You don't have to do anything special to hit Windows/OSX/Linux with it. The one project will compile to all 3.
I'm sure there was management issues in the 90's. But I'm of the opinion Borland's fate had a lot to do with Microsoft's embrace, extend, and extinguish strategies of the era.
I think there was a news/gossip item back in the day that MS offered him 1M/year and Borland/Inprise refused to even come close to matching that. Their loss.
Still, to this day, I know of no other solution that beats Lazarus+Free Pascal in easiness of stitching together a cross-platform GUI program and just works out of the box.
I find it ironic they describe it as “25 Years of Excellence” because, as much as people go on about the competition, what really broke Delphi was its poor quality control
I bloody loved that language, but all of the components had serious errors that resulted in crashes. To make it worse, they are their own dog food, meaning the IDE itself crashed all the time.
This wouldn’t have been so bad, but then VB5 happened, which was much, much worse semantically but absolutely rock solid.
Of course, then C# happened, but devs like me had already left the ecosystem. (And the less said about all that bundled cruft the better.)
Delphi was pretty notorious for having some sort of tick/tock quality problem, for unclear reasons. Presumably some kind of botched project management inside Borland.
Delphi 1 was a mess. Delphi 2 was rock solid. Delphi 3 was a buggy mess. Delphi 4 kind of recovered things but was never as good as Delphi 2. By this point we'd figured out the pattern and skipped Delphi 5, if I recall correctly.
I always found the even versions (D4,D6) buggy while D5 and D7 were very reliable.
D4 had bugs in its COM code. In 2000 I worked at a Dotcom (homedirectory.com) and we used a D4 COM search component running in SQL Server 6.5. It used to crash when the CPU load went above 5%. I guessed it was D4, recompiled under D5 and that fixed it.
Microsoft as part of its settlement to Borland over the employee poaching (including AH) provided technical info that let D5 generate reliable COM code.
The IDE was still a 32bit app and was seriously unreliable and insanely slow last I looked (2017 or so, the compiler finally got 64bit support though!).
I made my first substantial, steady paycheck with Delphi. It was pretty great for its time, and it really lowered the barrier for entry into programming, and especially GUI-based programming. I wasn't a huge fan of Pascal, so I ended up continuing to work in C++ Builder, but this stuff was _such_ a breath of fresh air back when Microsoft tooling sucked real bad, and Visual Studio was not "visual" at all. There were entire sites chock full of reusable Delphi/C++ Builder components that you could just download and easily integrate into your code. Then Borland lost Anders Hejlsberg, and Microsoft gained Anders Hejlsberg, and within a few years we saw C# (clearly inspired by Object Pascal) and Windows Forms (clearly inspired by VCL).
OK but I've used vb6, vb.net, Delphi (and Lazarus) and they are all pretty much identical in terms of dropping in controls onto a form, writing event handler code and setting properties. So to claim that delphi's vcl is clearly the inspiration for this in .net is a bit of a stretch.
They are very similar architecturally and in terms of language features, to the point where someone with Object Pascal background would feel right at home. Also it was the first Microsoft visual UI design framework backed by a _real_ programming language.
When I started in college in 1989 our school had an IBM mainframe with terminals where you would type in your Pascal code and submit a compile job and if there were bugs you would get a green bar paper printout that you had to go across campus to get. Through a friend I was able to get a official IBM file upload utility (he was in IBM’s summer sales rep program) and figured out that Turbo Pascal also compiles the (UCSD?) flavor of Pascal that the mainframe ran. While everyone else was doing the compile-print-walk loop (there were no terminals in the building with the big mainframe chain printer) I was interactively debugging my code in Turbo Pascal on my Tandy 1000 in my dorm room and then uploading it over dialup. It was awesome.
Delphi was great for developing custom solutions for middle class companies. Not end-user stuff, but no enterprise either. That kind of software vanishing coincides with that whole business sector getting smaller.
From a technical perspective, it was my favorite attempt to tame a often horrible mess of half-baked database design and ad-hoc solutions -- you can do spaghetti code in every language, but the Delphi apps I saw were usually a bit better than their FoxPro/Access/FileMaker/VB equivalents.
I don't see your point. Skype was done in Delphi, and it was pretty much end-user and very successful. There are many other apps: Skype, Nero Burning Rom, WinRAR, Partition Magic, Panda Titanium Antivirus, TuneUp Utilities, Aida64, BeyondCompare, Total Commander, CloneDVD, Ultra ISO, KMplayer, Gold Wave, Sound editor. And I am sure there are many others.
I meant that software for mid-sized companies isn't end-user programming, but not enterprise development either and that Delphi was pretty great for that. Often single developer, often embedded database.
Didn't want to imply that Delphi wasn't/wouldn't be great for the other ends of the spectrum, too.
Siege of Avalon was a pretty great RPG written in Delphi, now open-sourced[1] (no work done on it since ages). I remember liking that it was somewhat "mundane", i.e. upgrading your armor didn't mean that you start out with knightly full plate and it goes all out fantastic after that.
I used to love Delphi in the late 90s, and if someone could do a late-90s-Delphi-like experience for programming UI-heavy software today, and do it right, and in a way that properly integrates with the anno 2020 tech landscape, then I would love to use such a thing.
In a bout of late 90s nostalgia, I convinced my then-employer in 2011 to buy a license for the professional version of Delphi for a software project I was doing, and I was just absolutely shocked about how far it had fallen behind the curve. It seemed that attempting to support a modern tech ecosystem while maintaining some semblance of backwards-compatibility was giving it the worst of both worlds. Add to that enterprise bloat.
I don't know what it's like today, but I sincerely hope that someone will get it back on the right track (or has already done so, as I haven't retried since my experience in 2011).
Hi there! I’m working on Retool (https://retool.com), which is “Delphi in the cloud”. The goal, as you said, is to make it easier and faster to build “UI-heavy software”. If anybody has any comments or suggestions on how we could market something like this, please let me know! In david@. Thanks!
Not sure exactly where your product lands in a continuum between where Delphi was in the late 90s and where Microsoft Access was in the late 90s with its ability to create forms on top of databases, or maybe Oracle Forms. Delphi was the more heavy-duty option for cases that involved a more substantial investment in coding-up actual logic.
Now when I think "substantial investment" and then look at your website, what comes to mind is "lock-in nightmare". Sorry, not trying to be cruel, just wanting to give you an honest opinion.
I mean: Picture a development team pouring real efforts into development work, then training end-users to use the final product. That represents a real investment. And that investment is then locked into a vendor, where it's unclear what will happen to that investment if the vendor should decide to change the pricing model or go out of business.
I guess the original Delphi did have that problem, but the world was just a different one in the late 90s. You bought your copy of Delphi on a CD with a perpetual license, and an organization that had lock-in to Windows NT software would see it as a perfectly viable path, to keep those Windows NT systems running for the next 20 years to recoup any investment in software. Plus Microsoft was actually pretty good (and continues to be good) at establishing backwards-compatibility.
That applies to any platform though. It being open source doesn't mean it won't be abandoned or become poorly maintained. Look at the massive churn web frameworks have seen.
Cloud tooling definitely has the problem that vendor financial troubles = a sudden "our incredible journey" and poof, your app is gone. That's something client side apps don't have to worry about.
> I sincerely hope that someone will get it back on the right track (or has already done so ...
2020 Delphi supports five platforms, has 64-bit compilers everywhere, has modern language features, interoperates with C++ through C++Builder, and more. In the past few years especially, we've* seen both a lot of work on it, and increasing interest in using it.
It's modern, and used more widely than one might realise.
* "We've": This is a personal HN account but I work on Delphi and C++Builder.
...although language features, 64bit, and integration with C++ were never really where my quarrels were.
If we take "rapid application development" out of its trademarked context, applying just its common-sense meaning, and applying it to the year 2020, then the modern tech ecosystem that one would want to integrate with is clearly not C++, but rather maybe JavaScript & the browser ecosystem, Python, and low-overhead JVM langauges like Scala or Groovy.
The next thing that immediately jumps out at me is that the form designer is still using pixel-based positioning, instead of layout managers and units of length that we know from html, like em (fontsize-based), or vh/vw (percent of view-height/view-width), etc.
I was trying to research these things more extensively just now, but giving you my name, street address, company, phone number, and then "Error: Field required: Yes, I would like to receive marketing communications" for downloading the COMMUNITY edition? Come on! Enterprise bloat: Check.
Haha. 10 minutes further into my Delphi-in-2020-exploration (60% of which was the time that the installer actually took), this was the sequence of events:
* Hit the installer and switched windows, to let the installer work in the background.
* Installer mysteriously gone.
* Tried to run the programme, and it took some digging to understand that the product seems to be in a half-installed state.
* Re-run the installer. This time, keeping the installer in the foreground. Now it works.
* Started Delphi.
* Dropped a button in the form designer to start playing around.
* Oh gosh. Form designer still using pixel-based layouts.
* Deleted the button.
* Doing some Googling to figure out how to do layout managers, and found an interesting youtube tutorial on something called TGridLayout.
* Dropped a TGridLayout on my form.
* Form Designer now caught in an infinite loop bringing up an Error modal that says "Control TButton($17EE2200) has no parent window. Path: ~TButton($17EE2200)".
Thanks Delphi! See you again, another 10 years from now.
...feels like a relationship with an old friend who you've lost touch with when he became an alcoholic, but every now and again you feel bad for him and think you owe him a meeting.
I’m working on yazz Pilot which is supposed to be a modern take on Delphi or Visual Basic. I will take your comment to heart and make sure we implement proper layouts and positioning for the web
We use Delphi for some of our older applications (everything new is migrating to either C++17 or Go). I remember upgrading the IDE (forget which version, but it was about 3 years ago) and after loading my project, I hit F1 to bring up the help menu. The whole IDE crashed... Between little surprises like that and the insane licensing price, I'm glad we're moving off of it. I don't have any objections to the language itself, but the tooling just isn't where it needs to be.
Sorry to hear it crashed. And no idea re the installer. Just out of interest, did you file a bug report? Because I've been using the grid layout recently and have not seen an error.
> Oh gosh. Form designer still using pixel-based layouts.
If you build a desktop app, you'll get pixel-based layouts, because that's how Windows works. It is fully high DPI enabled and scalable, so it's not accurate really to call the units pixels. Call them design units or similar.
As you noted there are various layout tools, from containers with various flow behaviours, through to anchors and padding.
Do you plan to open source it and adopt e.g. Qt-like business model? e.g. charge for service, not tools (except probably some enterprise chart or reporting components).
At the time of the Delphi 8 release I went to a Delphi conference to get to know the community better. This was 2003 or so? I was evaluating whether or not to get more licenses for our company so we could put extra effort into developing Delphi for .NET.
Let's just say that I found the people there to be rude and insulting. Not just the people at the conference there but also by some of Borland staff there as well. A joke was played on me which I won't get into here but I didn't - and don't - appreciate being bullied.
Let's just say that the next day I abandoned Delphi and moved our entire company to Visual Studio and never looked back.
No offense, but that'd be like if you stopped eating your favourite vegetables because you once met an offensive vegan :-)
Why would you move your ENTIRE company to a different language/development system because someone was rude at a conference?
FWIW I felt out of place at conferences before, many are just an exercise in peacocking and showing off (and still, I have learnt some interesting things from some incredibly irritating people in my time). But I would never change something that I like and that works for me because other people that just so happen to use it too, are rude.
I've met arrogant and frankly insulting people at both Linux and Microsoft events, for example (Linux famously has people who can be wonderfully insulting on mailing lists and dare I say often deservedly so) but it would never occur to me to switch my entire company to, say, Windows Server, because Linus (heaven forbid) said something rude to me :-)
I can't even actually rule out that I might have behaved in a way that might have been interpreted as rude at conferences myself, especially after several days of travel, talks and general exhaustion. So I'd actually be curious to hear how you felt you were insulted or bullied or made a joke of so that I might keep an eye out for such behaviour myself.
FWIW, you may find that Borland is no longer around or involved with Delphi (and hasn't been for a decade now, I think), so the people might be different, too. I've certainly found Delphi worth a second look recently and hope the forums and communities of old have been or will be revived in some way.
OK I guess I did feel a bit butt hurt, but I was at that conference to genuinely get information about the latest features (MIDAS, ASP.NET integration, etc...) and my questions fell on deaf ears. It was being ignored and pranked upon combined with a general sense of directionlessness that turned me off of Delphi.
I had an acquaintance who bought the most recent Delphi release (he’s a long term customer), but had some troubles so he installed the free community edition as a stop gap solution. They phoned him and bolloxed him and demanded he buy another copy, extremely rudely and extremely forcefully (almost as if the person calling had KPI’s for upsells).
Unless I had a burning reason to use Delphi, I would avoid it, since I don’t like dealing with stupid businesses if I can avoid it... Don’t burn your loyal customers...
Do you guys think that closed source general-purpose programming languages have any future? In the late 90s and early 2000s both Java and C# were closed source. Still, they became highly successful. Today many people wouldn't even touch a language or a framework to build a business on unless it's Open Source. It's surprising how the programming landscape has changed in the past 20 years.
C, C++, Ada, Pascal, Basic, Oberon compilers for embedded market, in many cases, certificed compilers.
Commercial UNIX, mainframe and Windows compilers (VS Community doesn't cover everything) are still a separate product.
Sony, Nintendo, MS SDKs for their game consoles.
HPC compilers, yeah you can try with clang and gcc, but if you are doing top research, then IBM, Intel, CodePlay, PGI compilers is what you want to be using on that hardware, and they cost pennies versus the total hardware cost.
And even in what concerns Apple, I would consider that XCode is somehow included in Apple^s hardware price.
I think the standard approach is to not add extra constraints.
Are you writing general purpose, portable code code? You'd rather not be locked in to a specific vendor's compiler.
Are you working in embedded systems? Your code is probably hardware-specific, at least to some degree. You probably aren't going to switch CPUs very often. You probably are never going to switch CPU families. You also probably are never going to upgrade the compiler, still less switch to a different vendor's compiler. So if you aren't going to do that anyway, you don't worry much about a one-vendor-only compiler or language.
I think it's a similar story in HPC. You're constrained by your hardware. You get the best compiler for that setup. That means it's hard to change compilers? It's even harder to change your hardware, so you didn't add much of a constraint.
.NET only became open very recently, it's been quite successful. The entire iOS/Apple developer ecosystem is closed source of course. Maybe Swift isn't but nobody uses it outside the Apple platform.
You could argue Microsoft is an exception and them opening .NET shows the end of that era though.
The "open source or nothing" mentality might change in future. It means there's not much market for developer tools, so everything gets hacked together out of random "frameworks" found on GitHub that are here today, gone tomorrow when the bored developer at Netflix or Google gets their desired promo and moves on. There's no real planning or design, just whatever random stuff tech firms throw in the mix as a side effect of other projects, which is why HTML has virtual reality support but no table or spreadsheet view worth a damn.
Hmmm. Agreeing with the sentiment of your argument while looking at the flip side of the coin, the fruit borne of the ad-hoc lack of coordination you describe is sadly easily overwhelmed by domain domination exerted from committees and bureaucracies with vested interests in specific fields.
Which kind of information-leaks that either VR is hype noone really cares about, or that none of said committees (with attendant lumbering bureaucracy) have really noticed it yet. Wait, I just described the same thing two different ways.
But yeah, no, it would not do to have The Web℠ Platformᴳ, errrrr, "excel". :P
Yes, there's a certain robustness that comes from an evolutionary approach. And some of the web's competitors died because they couldn't (in my view) correctly analyse and match the web's strengths, because those strengths were never planned or written down anywhere. Figuring out why the web is strong is sort of like trying to figure out how our own bodies work. Sure, we can see the component parts. How they come together to make the whole a success is often less clear.
On the other hand, let's not kid ourselves. The web wasn't actually built by making a melting pot of diverse ideas with an evolutionary process to select between them. The web has always been controlled by one dominant company, and the stuff that gets added (or not) reflects the agenda of their internal committees. The web went from being controlled very, very briefly by Tim BL to being controlled by Netscape who added forms, cookies, JavaScript, CSS etc. Then to Microsoft, who added a pile of other stuff and then froze development for years whilst Mozilla tried to get off the ground.
Mozilla added relatively little to the web given the resources invested into Firefox; virtually all their energy went into trying to fix their own architectural mis-fires. Then WebKit came along and very briefly Apple was in charge. That era didn't last long until Google came along and took the crown, which they've had ever since. Unlike Apple and Mozilla, Google actually have added a lot of stuff to the web platform but it reflects a consumer driven agenda. Hence WebVR, WebRTC etc.
To the extent the other players exerted any influence on the Chrome team during this time it's - in my view - been mostly negative. Mozilla lost to Chrome because their technical choices just weren't that good, but they've continued to exercise outsized influence on decision making despite dwindling market share.
Additionally the lack of any real support for libraries or dependencies in the web platform means many of the new APIs added to HTML can't be challenged by competitors. WebAudio sucks but nobody can make a better one because of the sandbox.
In the end the web isn't really the result of ad-hoc coordination so much as a dysfunctional lurching tug-of-war between different groups of engineers who all work down the road from each other at different firms in California (with a detour through Seattle).
What killed Delphi is $3000 per seat cost. Single starting developer or students cannot afford that. So there is no community and it's impossible to find Delphi programmers.
We give it away now too :) There is a Community edition, where the license terms are basically that you should buy it only if you make significant revenue. Students, hobbyists, early stage startups etc - free.
It is quite simple.
I mean that if you install the software N times; perhaps because you often switch and rebuild machines; and you do not have a current subscription; Dennis in tech support will not reset your license registration limit; and you will never be able to install the software again.
If that happened, it is an error. I believe the flow these days is to go through Sales, but you do not have to buy or have a current subscription to install.
I'll repeat that: You can install a hundred times if you need. You do not have to buy or have a current subscription to install.
The license server counts installations and flags for verification after a certain number because it's quite common for people to install far more times (ie, for more people) than they actually bought. All that is required after you install a one-person license enough times to trigger the server asking questions is to contact us and let us know you really are using it legally. Then you're good to go.
I can't see students not needing DB access let alone 'early stage startups', without TDataSet et al, it would be effectively useless/worthless.
(we're STILL using D5 where I work)
No - you can do everything in Community you can in Pro, the main paid edition. You can certainly use databases. We generally have a higher SKU for remote databases.
sorry but
remote database = postgres, mysql (or any relational db server)
that is ridiculous in 2020
and you only get that with the "enterprise edition"
"professional" only gets you embeded and localhost DB ?!?
I still have my old separate Firedac licence for an old project i support,
but anybody new coming to this mess will just have a good lough and move on.
Delphi's Community edition comes with source code and you can debug into the inbuilt libraries. And with Community you can build 32 and 64 bit apps for Windows, iOS, Android, and macOS.
I'm not sure that $5000 would count as significant revenue (I'd prefer an extra zero on that) but I suppose it's reasonable that if you earn enough from Delphi to pay for it, you should.
I can't find the new pricing on the website (everything is free trial / request a quote) but I remember the last time I saw pricing it was so much that I opted to kill the one Delphi-made product I had rather than upgrade. I'm using Xojo instead for my cross-platform RAD development now.
For those interested, Free Pascal and Lazarus, the free open source implementation of Delphi, is amazing. It has an active development community and works on most all platforms.
What are the advantages / pros of this vs. the free Delphi Community Edition? Seriously asking, as I've been out of the "Delphi sphere" too long and not really familiar with the latest developments but looking to get back into it.
The advantages? The compile works on must every CPU and platform, including Windows, Mac, Linux, Raspberry Pi, Gameboy Advanced, Amiga, and on and on.
Also it's open source, so when you are writing code you can actually navigate to the underlying sources and step into everything with the debugger if you want.
Finally, it comes with library support for so much more than Delphi, including Google APIs, FreeType, Cairo, Fuse, and so on.
Oh and it can also build to Java byte code and run in a Java JVM, also to Android.
Did I mention it's free and open source under active development?
"The compile works on must every CPU and platform"
Not just the compiler. If the board has enough juice one can run the entire IDE itself on it, therefore developing on the same iron.
I've tried Lazarus on old H3 based NanoPIs and slowness aside (microSD, years old board, 1G RAM) it was perfectly usable to write, compile and run code on the same board. Not an ideal condition, still speaks a lot on why Open Source is great.
I wish the IDE supported more languages and compilers though, and even a basic port of the LCL and debugger to them would be a huge achievement.
No, it is less than mediocre. It has not kept up at any sufficient pace to other languages and environments. Just a small excerpt because I don't have the nerve to write an exhaustive critique: bignum, first-class functions, generators, lazy lists, lexical scope, macros, namespaces. Single window in Lazarus requires recompilation that errors out in CheckLst.pas instead of being a preference somewhere in a menu.
A while ago I got to do some consulting/auditing for a couple of companies in the medical field, and looking under the hood of their infrastructure, I was surprised to see that two of their most important apps for daily use (one a scheduling/filing/CRM behemoth, one a 3D analysis program) are developed in Delphi. You couldn't tell it from the GUI but in one program directory I saw a VERY familiar ico on an exe and my interest was piqued). I went so far as to put one through a decompiler (IDR) to find out which version of Delphi had been used.
So, it seems that Delphi is alive, kicking serious butt and making some companies loads of money, developing beautiful modern enterprise apps.
I, like many others, got my start in programming with early Delphi versions in school - Delphi 3 truly was my first love and I recognize the splash screens that are currently on display at https://delphi.embarcadero.com up until Delphi 2007, but 6 and 7 give me a warm, fuzzy feeling. We parted ways in the mid-2000s but I can honestly say, I never got back that feeling of joy and love for a language and a programming environment that I had for Pascal and Delphi (then again, I never had to deal with any messy legacy projects and component issues back then which surely drove some developers nuts).
Anyway... seeing that Delphi is still alive and watching a few YouTube videos about the new features it got over the last 10 years, including the stunning cross-platform development options for Android, iOS, web and PC (and apparently you can integrate with Sencha ExtJS, although I'm still unclear on how), I downloaded the free Delphi Community Edition - which is GREAT - and knocked out a beautiful little client-server app for a PoC over a weekend. Could hardly fathom the adrenaline rush I got from that...
I'm seriously considering putting in a purchase request for the Architect edition now... buying that at full price used to be a dream of teenage me and I think it's not even as expensive as I remember :-) Can't really justify it but then again, it's a chicken-egg problem and you've got to start somewhere.
You probably can't say that out loud, it being heresy and whatnot, but I could imagine that even now, schools could get more students to develop a love for programming on a wider and more versatile scale with Delphi Community Edition rather than Java or Python... There I said it, pls don't kill.
> I downloaded the free Delphi Community Edition - which is GREAT - and knocked out a beautiful little client-server app for a PoC over a weekend. Could hardly fathom the adrenaline rush I got from that...
I'm one of the product managers who works on Delphi today (together with Marco Cantù. I actually work on C++Builder, Delphi's sister product.) I am really happy to hear that.
Your question about Sencha: we recommend using Sencha for web front-ends, and we have a server product written with Delphi for creating REST services or converting your desktop apps to REST-based backends, called RAD Server.
> I could imagine that even now, schools could get more students to develop a love for programming on a wider and more versatile scale with Delphi Community Edition rather than Java or Python... There I said it, pls don't kill.
It's widely used in non-English-speaking countries for education today. I too expect it would be much better than Java for learning.
Ah, C++ Builder... Borland wasn't afraid to patch the language (hello closures!) to get the features they needed. I loved that IDE, it made me a decent amount of money back in the day and it was ridiculously easy to get a full featured desktop application up and running, sprinkled with some Paradox on top it could do a lot! I will have to give it another look today, if nothing else then just to check who's aged better - the tool or the programmer
> I'm seriously considering putting in a purchase request for the Architect edition now...
Go ahead, make Embarcadero sales department happy. Delphi has not evolved substantially in years. They pretty much keep the product on life support, milking whatever they can from support contracts. I don't see a reason to invest your money and time in Delphi unless you have a legacy application to support.
Delphi is great; just ensure you always stay subscribed.
Their tech support team regard properly managing their own strict license system as 'a courtesy' and will prevent you from installing the licensed software that you purchased.
For that reason alone; I am out.
> will prevent you from installing the licensed software that you purchased
Could you elaborate on that? I'm actually interested in procuring Delphi commercially after getting to know the free Community edition recently and I'd like to avoid any licensing pitfalls if possible. I can't really imagine how they would stop you from installing a properly licensed and purchased software but if they do, I'd be curious to know how to avoid running into that situation. Thanks.
Firstly: I liked Delphi a lot; learned it a long time ago.
Straight risk avoidance advice:-
You need to install the Delphi software on a completely dedicated system that you never plan to reset; and image back it up; and hopefully that will work.
And install the software on a Virtual Machine and back that up.
And/Or always renew the subscription if the new features make any sense to you or not.
Do these things and you will be Ok.
My experience was:
I am programming as a hobby; even so - I don't like to commit a huge amount of my personal evening and weekend time to software with a toy license that restricts what I can do with it.
In 2017; Delphi started to look good again; I got the starter edition; really liked it; found it useful; thought why not support the developers; and upgraded to the commercial version at 10.1; also purchased a number of really nice plugins; (used Delphi in my spare time project for a year or so); very happy with the results.
Stopped using it for a while; because my project was finished.
I also messed around with Delphi on a couple of my systems while playing with mobile apps and Macs; found it much less useful there.
My main focus is windows desktop not mobile; I was playing around with new pre-release versions of Windows; I had to reset those systems when they got out of hand.
I ended up unable to reinstall 10.2
(my third party components need that.)
So I contacted support; and was knocked back; with a cold email.
I guess the licensing methodology may be legal (not a lawyer); but it does not seem fair or reasonable to me.
I have written a lot of Delphi in projects I can not rebuild; I own several third party components that are now useless to me.
The current version is I think 10.3; I was subscribed up until 10.2.
Other feedback
I think Delphi is good for Windows desktop programming; especially for GUIs that connect to data bases; nothing like as exceptional for Mac or Mobile.
With respect to those databases you used to need the Enterprise version to use MySQL etc; as the lower license agreement did forbid the use of database services; only allowing local data.
I ended up spending many enjoyable hours learning or re-remembering how the database connections worked in Delphi; and figuring out how my third party components all worked; then enjoyed gluing them all together in my programs.
Where I am now:
I could purchase the latest Delphi and update all my components; for no real benefit to my project; or I can learn to like .NET core and get translating. The third party components I used; are also available for .NET; and there are thousands of open source packages for .NET as well. Not so sure about the GUI.
How do they stop you?:
To be completely clear; because that company likes to be fuzzy about it; I have a valid license; serial number; invoice; and online account (which I really need to delete); I am blocked because I re-installed the software too many times.
Where too many; was not very many; and was not even concurrent.
Sorry, mixed with C++/CLI (which needed .NET Framework). As for WinRT - I wouldn't pick anything that doesn't support the second most popular desktop OS - Win7.
198 comments
[ 2.9 ms ] story [ 248 ms ] thread"I started my coding career using a Turbo Pascal clone for the Commodore Amiga, something called High-Speed Pascal, published by UK based company Hi-Soft."
It would be interesting if an open-source version of this Amiga Turbo Pascal clone - was available somewhere...
Meanwhile, the former creator of Delphi had left for MS and created C# that at the time was already beating Delphi at its own game.
By the mid 2000s Delphi was already dead in the water: poor unicode support, no 64-bit compiler, and a language that hadn't innovated much since the 90s.
It's a shame, really. Delphi in the 90s was on its way to rule the world. Only then suddenly it wasn't.
RIP. You were great once.
It has all the downsides of service based DB without all the advantages of file based DB.
And the documentation is way below average, backwards compatibility is a joke.
Not to mention the 3rd party software had to design their own(horribly bad) way to handle geometry in firebird... and they keep transactions open forever - and bloody firebird prior to 2.5 had no way to drop the dead connections.
http://firebirdsql.org/
I also remember a coworker had been approached by MS to work on the DotNet marketing campaign and he declined, as it was seen as kind of a failure with a very uncertain future. Hindsight is 20/20.
edit: personally I have found memories of Delphi3.
It's worth noting that Kylix's failure to take off had a lot more to do with Borland's variously stupid, obnoxious and immoral business decisions than it had to do with the upheaval in the Linux desktop world. It was a strong enough concept for a product, and the base technology was implemented well enough, that all they had to do was not screw it up... and guess what they did?
All these years later I remember saying "fuck it" when Borland decided to wrap up some important bug fixes into the (full price) upgrade for Kylix, rather than just giving them to existing users. The smug uselessness of the one or two Borland employees who liaised with the community online has kind of stuck in my memory as well. The technology deserved to survive but the company sure didn't.
Maybe I should get into it again, not sure. :-D
https://www.embarcadero.com/products/delphi/starter
Lazarus and FreePascal are great, but they aren't 100% Delphi.
Ok I kinda find out.
https://www.lazarus-ide.org/ is made by the Free Pascal team, that's the "official" version. It has precompiled binaries to download https://www.lazarus-ide.org/index.php?page=about
https://www.getlazarus.org/ is a different version (but not sure by how much), using download scripts https://www.getlazarus.org/about/
Delphi is alive over here, even if only on corporations with big pockets.
The language is much less annoying (oh how i hated Type and Var sections in the times). The gui programming style can be similar or can be modernized. The designer and component library is vastly improved. Third party components are cheap compared to today's "cloud" prices. There are libs for everything. Its free. Can be compiled to native binaries(not sure this will leave 'experimental'). Feels like a direct replacement to me.
And Delphi is still around, no need to talk as if it was dead.
In Germany, it has a regular section on the .NET developers magazine and an yearly conference.
Their pricing is a bit of a barrier to entry for new apps now.
That was Borland's mistake with their Inprise change, to abandon grassroots developers and focus on this kind of companies.
This was last year's conference, https://entwickler-konferenz.de/program-en/
Anyone using this hardware, is running Delphi on their network.
https://www.lab-services.nl/en/home
Basically losing the entire market where devs are allowed to choose their platform, because they won't be aware of it.
I suppose wining and dining the executives puts food on the table too.
That'll probably allow 99.99% of students and hobby programmers and a good chunk of small businesses to use it free forever without ever hitting this mark and seems to me like one of the fairest schemes to use expensive software out there. It's what we always wanted 15, 20 years ago.
Imagine Microsoft or SAP or whoever offered you to use their Windows Server Datacenter or ERP or even Office suite for free until you made a $5000 profit off of using their programs...
Besides it's funny. 5000 income - 3000 delphi license leaves... not much?
You're right, it is not very visible by going to the normal Delphi page. Not sure why - I think our website folk want to push people to the trial not Community. But here's the link: https://www.embarcadero.com/products/delphi/starter
Like 1600 and you get 1 year of support. After that you pay the yearly subscription fee to stay on support (about 400 or so). If you skip a year, you are back to the "never have been a paying customer" status.
It is not cheap.
Not all bad though, I do like Delphi itself, but the customer hostile attitude of the company does leave a bad aftertaste and make me want to ditch it.
This coming from a python guy who is looking to build a native admin area for a web product.
https://community.embarcadero.com/article/16560-deep-dive-ho...
If Borland's management hadn't messed up, .NET and Java probably would never had taken off on PC world.
Most university students in Portugal during the 90's would also gladly accept Microsoft job offers.
I always find ironic that the companies that sold out to Microsoft are always the victims, the poor souls never did anything wrong.
I bloody loved that language, but all of the components had serious errors that resulted in crashes. To make it worse, they are their own dog food, meaning the IDE itself crashed all the time.
This wouldn’t have been so bad, but then VB5 happened, which was much, much worse semantically but absolutely rock solid.
Of course, then C# happened, but devs like me had already left the ecosystem. (And the less said about all that bundled cruft the better.)
Delphi 1 was a mess. Delphi 2 was rock solid. Delphi 3 was a buggy mess. Delphi 4 kind of recovered things but was never as good as Delphi 2. By this point we'd figured out the pattern and skipped Delphi 5, if I recall correctly.
1 was 16 bits only. 2 turn to 32 bits AFAIK.
D4 had bugs in its COM code. In 2000 I worked at a Dotcom (homedirectory.com) and we used a D4 COM search component running in SQL Server 6.5. It used to crash when the CPU load went above 5%. I guessed it was D4, recompiled under D5 and that fixed it.
Microsoft as part of its settlement to Borland over the employee poaching (including AH) provided technical info that let D5 generate reliable COM code.
At the time we coded on a Sperry Univac 1100 system at varsity and it took bloody ages to compile/debug/run programs.
When I got a loaner PC and a copy of Turbo Pascal it was so amazing and fast.
I'm going to guess that the staff didn't have to use those terminals, only the students did.
From a technical perspective, it was my favorite attempt to tame a often horrible mess of half-baked database design and ad-hoc solutions -- you can do spaghetti code in every language, but the Delphi apps I saw were usually a bit better than their FoxPro/Access/FileMaker/VB equivalents.
Didn't want to imply that Delphi wasn't/wouldn't be great for the other ends of the spectrum, too.
[1]: http://soaos.sourceforge.net/
A lot of audio software and VST plugins, in the early days, was done in Delphi.
https://web.archive.org/web/20130121065235/http://www.sonics...
In a bout of late 90s nostalgia, I convinced my then-employer in 2011 to buy a license for the professional version of Delphi for a software project I was doing, and I was just absolutely shocked about how far it had fallen behind the curve. It seemed that attempting to support a modern tech ecosystem while maintaining some semblance of backwards-compatibility was giving it the worst of both worlds. Add to that enterprise bloat.
I don't know what it's like today, but I sincerely hope that someone will get it back on the right track (or has already done so, as I haven't retried since my experience in 2011).
Now when I think "substantial investment" and then look at your website, what comes to mind is "lock-in nightmare". Sorry, not trying to be cruel, just wanting to give you an honest opinion.
I mean: Picture a development team pouring real efforts into development work, then training end-users to use the final product. That represents a real investment. And that investment is then locked into a vendor, where it's unclear what will happen to that investment if the vendor should decide to change the pricing model or go out of business.
I guess the original Delphi did have that problem, but the world was just a different one in the late 90s. You bought your copy of Delphi on a CD with a perpetual license, and an organization that had lock-in to Windows NT software would see it as a perfectly viable path, to keep those Windows NT systems running for the next 20 years to recoup any investment in software. Plus Microsoft was actually pretty good (and continues to be good) at establishing backwards-compatibility.
Cloud tooling definitely has the problem that vendor financial troubles = a sudden "our incredible journey" and poof, your app is gone. That's something client side apps don't have to worry about.
2020 Delphi supports five platforms, has 64-bit compilers everywhere, has modern language features, interoperates with C++ through C++Builder, and more. In the past few years especially, we've* seen both a lot of work on it, and increasing interest in using it.
It's modern, and used more widely than one might realise.
* "We've": This is a personal HN account but I work on Delphi and C++Builder.
If we take "rapid application development" out of its trademarked context, applying just its common-sense meaning, and applying it to the year 2020, then the modern tech ecosystem that one would want to integrate with is clearly not C++, but rather maybe JavaScript & the browser ecosystem, Python, and low-overhead JVM langauges like Scala or Groovy.
The next thing that immediately jumps out at me is that the form designer is still using pixel-based positioning, instead of layout managers and units of length that we know from html, like em (fontsize-based), or vh/vw (percent of view-height/view-width), etc.
I was trying to research these things more extensively just now, but giving you my name, street address, company, phone number, and then "Error: Field required: Yes, I would like to receive marketing communications" for downloading the COMMUNITY edition? Come on! Enterprise bloat: Check.
* Hit the installer and switched windows, to let the installer work in the background.
* Installer mysteriously gone.
* Tried to run the programme, and it took some digging to understand that the product seems to be in a half-installed state.
* Re-run the installer. This time, keeping the installer in the foreground. Now it works.
* Started Delphi.
* Dropped a button in the form designer to start playing around.
* Oh gosh. Form designer still using pixel-based layouts.
* Deleted the button.
* Doing some Googling to figure out how to do layout managers, and found an interesting youtube tutorial on something called TGridLayout.
* Dropped a TGridLayout on my form.
* Form Designer now caught in an infinite loop bringing up an Error modal that says "Control TButton($17EE2200) has no parent window. Path: ~TButton($17EE2200)".
Thanks Delphi! See you again, another 10 years from now.
> Oh gosh. Form designer still using pixel-based layouts.
If you build a desktop app, you'll get pixel-based layouts, because that's how Windows works. It is fully high DPI enabled and scalable, so it's not accurate really to call the units pixels. Call them design units or similar.
As you noted there are various layout tools, from containers with various flow behaviours, through to anchors and padding.
What kind of modern language features has it gained?
We love making our software with Delphi since 2002 and it always provided us with a rock solid foundation until today.
In those 18 years (>2.000.000 downloads) we never had a single critical failure. Ever.
The rapid prototyping capabilities help us to design and _experience_ user interface in no time.
Firemonkey allows us to create Mac & Windows multi-plaform software from a single code base.
As a commercial software company that needs the job done reliable and efficient, Delphi just never disappointed us.
Yes, we know there is #C, .NET, Java but we see no need to change something that just works so well.
Cheers, Bartels Media from Germany
At the time of the Delphi 8 release I went to a Delphi conference to get to know the community better. This was 2003 or so? I was evaluating whether or not to get more licenses for our company so we could put extra effort into developing Delphi for .NET.
Let's just say that I found the people there to be rude and insulting. Not just the people at the conference there but also by some of Borland staff there as well. A joke was played on me which I won't get into here but I didn't - and don't - appreciate being bullied.
Let's just say that the next day I abandoned Delphi and moved our entire company to Visual Studio and never looked back.
Why would you move your ENTIRE company to a different language/development system because someone was rude at a conference?
FWIW I felt out of place at conferences before, many are just an exercise in peacocking and showing off (and still, I have learnt some interesting things from some incredibly irritating people in my time). But I would never change something that I like and that works for me because other people that just so happen to use it too, are rude.
I've met arrogant and frankly insulting people at both Linux and Microsoft events, for example (Linux famously has people who can be wonderfully insulting on mailing lists and dare I say often deservedly so) but it would never occur to me to switch my entire company to, say, Windows Server, because Linus (heaven forbid) said something rude to me :-)
I can't even actually rule out that I might have behaved in a way that might have been interpreted as rude at conferences myself, especially after several days of travel, talks and general exhaustion. So I'd actually be curious to hear how you felt you were insulted or bullied or made a joke of so that I might keep an eye out for such behaviour myself.
FWIW, you may find that Borland is no longer around or involved with Delphi (and hasn't been for a decade now, I think), so the people might be different, too. I've certainly found Delphi worth a second look recently and hope the forums and communities of old have been or will be revived in some way.
I had an acquaintance who bought the most recent Delphi release (he’s a long term customer), but had some troubles so he installed the free community edition as a stop gap solution. They phoned him and bolloxed him and demanded he buy another copy, extremely rudely and extremely forcefully (almost as if the person calling had KPI’s for upsells).
Unless I had a burning reason to use Delphi, I would avoid it, since I don’t like dealing with stupid businesses if I can avoid it... Don’t burn your loyal customers...
C, C++, Ada, Pascal, Basic, Oberon compilers for embedded market, in many cases, certificed compilers.
Commercial UNIX, mainframe and Windows compilers (VS Community doesn't cover everything) are still a separate product.
Sony, Nintendo, MS SDKs for their game consoles.
HPC compilers, yeah you can try with clang and gcc, but if you are doing top research, then IBM, Intel, CodePlay, PGI compilers is what you want to be using on that hardware, and they cost pennies versus the total hardware cost.
And even in what concerns Apple, I would consider that XCode is somehow included in Apple^s hardware price.
Are you writing general purpose, portable code code? You'd rather not be locked in to a specific vendor's compiler.
Are you working in embedded systems? Your code is probably hardware-specific, at least to some degree. You probably aren't going to switch CPUs very often. You probably are never going to switch CPU families. You also probably are never going to upgrade the compiler, still less switch to a different vendor's compiler. So if you aren't going to do that anyway, you don't worry much about a one-vendor-only compiler or language.
I think it's a similar story in HPC. You're constrained by your hardware. You get the best compiler for that setup. That means it's hard to change compilers? It's even harder to change your hardware, so you didn't add much of a constraint.
You could argue Microsoft is an exception and them opening .NET shows the end of that era though.
The "open source or nothing" mentality might change in future. It means there's not much market for developer tools, so everything gets hacked together out of random "frameworks" found on GitHub that are here today, gone tomorrow when the bored developer at Netflix or Google gets their desired promo and moves on. There's no real planning or design, just whatever random stuff tech firms throw in the mix as a side effect of other projects, which is why HTML has virtual reality support but no table or spreadsheet view worth a damn.
Which kind of information-leaks that either VR is hype noone really cares about, or that none of said committees (with attendant lumbering bureaucracy) have really noticed it yet. Wait, I just described the same thing two different ways.
But yeah, no, it would not do to have The Web℠ Platformᴳ, errrrr, "excel". :P
On the other hand, let's not kid ourselves. The web wasn't actually built by making a melting pot of diverse ideas with an evolutionary process to select between them. The web has always been controlled by one dominant company, and the stuff that gets added (or not) reflects the agenda of their internal committees. The web went from being controlled very, very briefly by Tim BL to being controlled by Netscape who added forms, cookies, JavaScript, CSS etc. Then to Microsoft, who added a pile of other stuff and then froze development for years whilst Mozilla tried to get off the ground.
Mozilla added relatively little to the web given the resources invested into Firefox; virtually all their energy went into trying to fix their own architectural mis-fires. Then WebKit came along and very briefly Apple was in charge. That era didn't last long until Google came along and took the crown, which they've had ever since. Unlike Apple and Mozilla, Google actually have added a lot of stuff to the web platform but it reflects a consumer driven agenda. Hence WebVR, WebRTC etc.
To the extent the other players exerted any influence on the Chrome team during this time it's - in my view - been mostly negative. Mozilla lost to Chrome because their technical choices just weren't that good, but they've continued to exercise outsized influence on decision making despite dwindling market share.
Additionally the lack of any real support for libraries or dependencies in the web platform means many of the new APIs added to HTML can't be challenged by competitors. WebAudio sucks but nobody can make a better one because of the sandbox.
In the end the web isn't really the result of ad-hoc coordination so much as a dysfunctional lurching tug-of-war between different groups of engineers who all work down the road from each other at different firms in California (with a detour through Seattle).
https://www.embarcadero.com/products/delphi/starter
I'll repeat that: You can install a hundred times if you need. You do not have to buy or have a current subscription to install.
The license server counts installations and flags for verification after a certain number because it's quite common for people to install far more times (ie, for more people) than they actually bought. All that is required after you install a one-person license enough times to trigger the server asking questions is to contact us and let us know you really are using it legally. Then you're good to go.
https://www.embarcadero.com/products/delphi/product-editions
I can't see students not needing DB access let alone 'early stage startups', without TDataSet et al, it would be effectively useless/worthless. (we're STILL using D5 where I work)
that is ridiculous in 2020
and you only get that with the "enterprise edition"
"professional" only gets you embeded and localhost DB ?!?
I still have my old separate Firedac licence for an old project i support, but anybody new coming to this mess will just have a good lough and move on.
You can use open source libraries like Zeoslib (https://zeoslib.sourceforge.io/) or mORMot (https://synopse.info/fossil/wiki?name=SQLite3+Framework).
I suppose it is not easy for you (as a tool supplier).
I can't find the new pricing on the website (everything is free trial / request a quote) but I remember the last time I saw pricing it was so much that I opted to kill the one Delphi-made product I had rather than upgrade. I'm using Xojo instead for my cross-platform RAD development now.
https://www.getlazarus.org/learn/tutorials/introduction/
Also it's open source, so when you are writing code you can actually navigate to the underlying sources and step into everything with the debugger if you want.
Finally, it comes with library support for so much more than Delphi, including Google APIs, FreeType, Cairo, Fuse, and so on.
Oh and it can also build to Java byte code and run in a Java JVM, also to Android.
Did I mention it's free and open source under active development?
Not just the compiler. If the board has enough juice one can run the entire IDE itself on it, therefore developing on the same iron. I've tried Lazarus on old H3 based NanoPIs and slowness aside (microSD, years old board, 1G RAM) it was perfectly usable to write, compile and run code on the same board. Not an ideal condition, still speaks a lot on why Open Source is great. I wish the IDE supported more languages and compilers though, and even a basic port of the LCL and debugger to them would be a huge achievement.
https://www.lazarus-ide.org/ is made by the Free Pascal team, that's the "official" version. It has precompiled binaries to download https://www.lazarus-ide.org/index.php?page=about
https://www.getlazarus.org/ is a different version (but not sure by how much), using download scripts https://www.getlazarus.org/about/
No, it is less than mediocre. It has not kept up at any sufficient pace to other languages and environments. Just a small excerpt because I don't have the nerve to write an exhaustive critique: bignum, first-class functions, generators, lazy lists, lexical scope, macros, namespaces. Single window in Lazarus requires recompilation that errors out in CheckLst.pas instead of being a preference somewhere in a menu.
The other things I understand though. I much prefer Pascal syntax and compilation time, but I have started reaching for c++ these days
Simple begin/end should create a scope, cf. { … } in ES6 or Perl. Instead, to make it work, the programmer has to nest named procedures.
> Namespaces have been supported since 3.0.
Sorry, I did not notice. Apparently it's been available for 5 years, but the standard library or other popular libraries did not adopt the feature.
So, it seems that Delphi is alive, kicking serious butt and making some companies loads of money, developing beautiful modern enterprise apps.
I, like many others, got my start in programming with early Delphi versions in school - Delphi 3 truly was my first love and I recognize the splash screens that are currently on display at https://delphi.embarcadero.com up until Delphi 2007, but 6 and 7 give me a warm, fuzzy feeling. We parted ways in the mid-2000s but I can honestly say, I never got back that feeling of joy and love for a language and a programming environment that I had for Pascal and Delphi (then again, I never had to deal with any messy legacy projects and component issues back then which surely drove some developers nuts).
Anyway... seeing that Delphi is still alive and watching a few YouTube videos about the new features it got over the last 10 years, including the stunning cross-platform development options for Android, iOS, web and PC (and apparently you can integrate with Sencha ExtJS, although I'm still unclear on how), I downloaded the free Delphi Community Edition - which is GREAT - and knocked out a beautiful little client-server app for a PoC over a weekend. Could hardly fathom the adrenaline rush I got from that...
I'm seriously considering putting in a purchase request for the Architect edition now... buying that at full price used to be a dream of teenage me and I think it's not even as expensive as I remember :-) Can't really justify it but then again, it's a chicken-egg problem and you've got to start somewhere.
You probably can't say that out loud, it being heresy and whatnot, but I could imagine that even now, schools could get more students to develop a love for programming on a wider and more versatile scale with Delphi Community Edition rather than Java or Python... There I said it, pls don't kill.
I'm one of the product managers who works on Delphi today (together with Marco Cantù. I actually work on C++Builder, Delphi's sister product.) I am really happy to hear that.
Your question about Sencha: we recommend using Sencha for web front-ends, and we have a server product written with Delphi for creating REST services or converting your desktop apps to REST-based backends, called RAD Server.
> I could imagine that even now, schools could get more students to develop a love for programming on a wider and more versatile scale with Delphi Community Edition rather than Java or Python... There I said it, pls don't kill.
It's widely used in non-English-speaking countries for education today. I too expect it would be much better than Java for learning.
Go ahead, make Embarcadero sales department happy. Delphi has not evolved substantially in years. They pretty much keep the product on life support, milking whatever they can from support contracts. I don't see a reason to invest your money and time in Delphi unless you have a legacy application to support.
Could you elaborate on that? I'm actually interested in procuring Delphi commercially after getting to know the free Community edition recently and I'd like to avoid any licensing pitfalls if possible. I can't really imagine how they would stop you from installing a properly licensed and purchased software but if they do, I'd be curious to know how to avoid running into that situation. Thanks.
This was a hot topic at their forums. Sorry, can't locate that now, but here is a post of somebody who bumped into this:
https://community.idera.com/developer-tools/general-developm...
It's pretty customer hostile if you ask me.
Straight risk avoidance advice:- You need to install the Delphi software on a completely dedicated system that you never plan to reset; and image back it up; and hopefully that will work. And install the software on a Virtual Machine and back that up. And/Or always renew the subscription if the new features make any sense to you or not. Do these things and you will be Ok.
My experience was:
I am programming as a hobby; even so - I don't like to commit a huge amount of my personal evening and weekend time to software with a toy license that restricts what I can do with it.
In 2017; Delphi started to look good again; I got the starter edition; really liked it; found it useful; thought why not support the developers; and upgraded to the commercial version at 10.1; also purchased a number of really nice plugins; (used Delphi in my spare time project for a year or so); very happy with the results.
Stopped using it for a while; because my project was finished. I also messed around with Delphi on a couple of my systems while playing with mobile apps and Macs; found it much less useful there.
My main focus is windows desktop not mobile; I was playing around with new pre-release versions of Windows; I had to reset those systems when they got out of hand.
I ended up unable to reinstall 10.2 (my third party components need that.) So I contacted support; and was knocked back; with a cold email.
I guess the licensing methodology may be legal (not a lawyer); but it does not seem fair or reasonable to me.
I have written a lot of Delphi in projects I can not rebuild; I own several third party components that are now useless to me. The current version is I think 10.3; I was subscribed up until 10.2.
Other feedback
I think Delphi is good for Windows desktop programming; especially for GUIs that connect to data bases; nothing like as exceptional for Mac or Mobile. With respect to those databases you used to need the Enterprise version to use MySQL etc; as the lower license agreement did forbid the use of database services; only allowing local data.
I ended up spending many enjoyable hours learning or re-remembering how the database connections worked in Delphi; and figuring out how my third party components all worked; then enjoyed gluing them all together in my programs.
Where I am now: I could purchase the latest Delphi and update all my components; for no real benefit to my project; or I can learn to like .NET core and get translating. The third party components I used; are also available for .NET; and there are thousands of open source packages for .NET as well. Not so sure about the GUI.
How do they stop you?:
To be completely clear; because that company likes to be fuzzy about it; I have a valid license; serial number; invoice; and online account (which I really need to delete); I am blocked because I re-installed the software too many times. Where too many; was not very many; and was not even concurrent.
All the best with your project.
Its still avaliable: http://www.madtracker.org/main.php
Thread talking about it: https://www.madtracker.org/forum/viewtopic.php?t=180&sid=7df...
So you could basically do anything with it, all the time not worrying about aligning buttons on a form because it was piss easy.
For a short while C++/CX seemed to be finally it, but C++/Winrt has regressed the experience.
In fact, the Office team is probably the biggest consumer of C++/Winrt.
Windows 7 is dead, it is the new XP, time to move on.