4 ms·
I'd been a Delphi dev for several years. One of the funny things I share with other devs is how Universities are sometimes maligned for teaching content that is
by kreelman 4y ago
I'd been a Delphi dev for several years. One of the funny things I share with other devs is how Universities are sometimes maligned for teaching content that is interesting and in depth, but perhaps not applicable in the real world.
I learnt Pascal in my first year of University. After a brief stint of BASIC, I fixed up a failing project using Delphi. This was the start of a long (long..) stint of Delphi programming.
I've now opted for a lower paying role to learn new skills. I'm loving it. I should have done this a long time ago, but life is what happens while you make plans.
I think one of the biggest problem older Delphi apps have is that they lock themselves in to working well in a Windows GUI environment. Early Delphi based project successes, because of quick initial deliveries (due to RAD/ROI), of mostly working applications mask the problem of a lack of architectural forethought.
I suspect a very difficult problem for most Delphi apps these days is disentangling working, legacy business logic from many sometimes very old forms and code into a more web consumable format. I've thought of starting a business to do this very thing, but others are doing this quite well I think.
The well thought out apps, that did have some reasonable architectural forethought, have probably been ported to C# by now. The apps that can't do this can be quite tricky to work with.
Working in a dynamic lang, Python, Scheme, etc. also I think allows easier shape-changing for new requirements. Whereas I think Delphi apps can get bit locked down into a way of thinking/doing tasks (GUI talking to a DB).
YMMV,. but that's my experience :-)
Glossary:
RAD: Rapid Application Development
ROI: Return On Investment
- braabe 4y agoI have a similar story to this: Learnt Delphi (Lazarus) in school, got put on a Delphi project on my first job because I was the only one to "know" the language. The application only had maybe 100k lines of code, but had been started around 1984 (in Pascal, I imagine) and had expanded ever since. I only took over because the previous (only) developer had just retired. I got hired for my second job, because of my previous experience with Delphi. It was a cool job with amazing colleagues, but I have opted to go for a degree in Computer science and I am not going back to Delphi. There were many small frustrations with the language. I have recently worked a lot with GoLang and Python and have come to appreciate the extensive (standard)libraries these language provide. I know how to manage memory or reverse/traverse some iterable by hand - but do I have to? I feel like my time is spent much better by thinking about architecture, maintainability, testing, actually solving problems than wrestling with tasks, that computers can do much better by now.
- GoblinSlayer 4y agoArchitecture is needed for relatively big software, but not all specialized software is this big. I once made an application that got away with being just an html document, no angular I swear, its function was to fill a medical form and print it with IE's builtin printing function.