5 ms·
I fondly remember the days of using Borland Delphi, and then Embarcadero RAD Studio, to build fully-functional GUI applications in a matter of hours. As a teena
by lima 7y ago
I fondly remember the days of using Borland Delphi, and then Embarcadero RAD Studio, to build fully-functional GUI applications in a matter of hours. As a teenager, no less.
You had great libraries like Jedi/JVCL and various data binding layers that would allow you to assemble highly complex UIs.
Of course, today's technology is so much better in so many regards (code quality, security, proper backend/frontend separation, UX, to name just a few), but I wonder if it'll ever be as easy as it felt back then.
- pjmlp 7y agoOther than Java, .NET and mobile OS native stacks, I am not sure that today's technology is so much better in so many regards. In fact in some areas I think we went backwards, doing 20 years circle to meet such tooling where they were at the early 2000's.
- api 7y agoDesktop GUI development definitely peaked in the late 1990s / early 2000s in terms of lightweight but capable tooling and good design tools. Today it's a damn mess, though I see signs of some movement toward improvement driven by the realization that mobile is not going to replace desktop for high-end, developer, and "pro" use cases.
- dvfjsdhgfv 7y agoWhat signs? My impression is that it just gets worse and worse.
- lima 7y agoQt, for instance, is still very alive and constantly improving.
- lima 7y agoThere's a lot that we take for granted nowadays, that either did not exist back then, or were expensive commercial products: - Ubiquitous transport layer encryption. - Secure memory-safe programming languages. - Structured data exchange formats that do not suck. - RPC that isn't SOAP, or DCOM. - Distributed consistent databases. - Proper sandboxing for applications. - Resolution-independent proportional UI. - A vibrant open source ecosystem used across the industry. ... and much more. Today's foundations are a lot more solid than they were back then, but I still miss the rapid prototyping. We even have an ok-ish Linux desktop! Even the most powerful React tree views are much worse than what we had 15 years ago, and are much harder to use than dragging a component onto a form. No nostalgia though, everything else sucked.
- pjmlp 7y agoGiven how modern OSes still insist in using C derived languages at their bottom layer, instead of the Pascal and Modulas from the 90's. How those RPC alternatives keep re-inventing the validation schemas, performance optimization and code generation tooling of SOAP, CORBA and DCOM. Sandboxing is mostly a mobile OS thing, with devs clamouring against it on their desktops. Many give up on open source, make use of SaaS, or switch to commercial because people leech their work and they need to pay bills. Linux desktop is 1% of world market and keeps being plagued with audio, 3D drivers and lack of hardware acceleration for video decoding in browsers. I kind of disagree.
- lima 7y ago> Given how modern OSes still insist in using C derived languages at their bottom layer, instead of the Pascal and Modulas from the 90's. On the other hand, the bottom layer is exposed to very little untrusted input nowadays, and the upper layers are mostly either using memory-safe programming languages, or languages with C++ with a ton of effective exploit mitigations (we owe much of that to PaX and grsecurity). The days of Java, ActiveX and Flash browser exploits are long gone. Windows browser exploits have become so rare and complex that they're worth $1M+. Still not ideal, but a lot better than it ever was. > How those RPC alternatives keep re-inventing the validation schemas, performance optimization and code generation tooling of SOAP, CORBA and DCOM. SOAP and DCOM were big balls of mud with myriad compatibility and security issues. CORBA was a designed-by-committee disaster. It appears that we're finally close to getting this right with Protobufs, gRPC and Cuelang. > Sandboxing is mostly a mobile OS thing, with devs clamouring against it on their desktops. Desktop apps have mostly been replaced by web apps, which have excellent sandboxing and fine-grained permissions. The only native desktop apps I run nowadays are highly specialized (like an IDE). The days of having to download and run a zoo of random third party applications are mostly gone. ChromeOS exists. > Many give up on open source, make use of SaaS, or switch to commercial because people leech their work and they need to pay bills. This is true for end-user applications because yes, bills need to paid. Exceptions apply - well-funded open source projects like Krita and Blender have managed to not only keep up with commercial competition, but surpass them. The rise of SaaS had the side effect of VC and corporate money funding a ton of open source libraries and infrastructure tooling, released under permissive licenses. > Linux desktop is 1% of world market and keeps being plagued with audio, 3D drivers and lack of hardware acceleration for video decoding in browsers. Last time I checked, it was ~3.5% if you include ChromeOS. As long as you're careful to buy compatible hardware, audio, 3D, and hardware accelerated video decoding works just fine nowadays. I've been using a Linux desktop for more than ten years and I haven't had to mess with any hardware issues for the past four. With ChromeOS and Crostini, you get a macOS-like experience where everything just works with zero fiddling and compatibility issues.
- themodelplumber 7y agoJust to share that it's available and doable--I have been getting back into the old Delphi-style work recently using Lazarus IDE / FreePascal Compiler / Object Pascal language. The same approach still works well. I've heard that many Delphi apps will require very little tweaking to get working. Personally all my projects are selfish productivity- and solo gaming-related apps that will never see public release, but I like it that way for now. And it's fun. Anyway, by the end of the day you could be one of those programmers with a 25 year gap in their release notes, to the amazement of onlookers! BTW, maybe relevant in the current pandemic: https://twitter.com/SciPasTips https://twitter.com/SciPasTips
- dvfjsdhgfv 7y agoThat's interesting. I'm curious to hear what's different, how you deal with the challenge of meeting modern expectations and so on.
- themodelplumber 7y agoThe only expectations are my own... Not too different from any other project in that way. But I will say that I think it's a good idea to keep a loose & playful grip on any given programming language... They're all good or even great in this way or that, so I don't mind having a lot of favorites.
- quelltext 7y agoI wonder though, what made Delphi so simple in terms of UI development? Is there anything that could not in theory also be applied to other languages, e.g. Java?
- dsparkman 7y agoI remember those days. The age of "shareware". I made a good side income in the late 90s writing software utilities in Delphi. I do miss the days of a good visual IDE.