7 Major versions later and Delphi hasn't improved a bit! Delphi IDE's error insight complains about this perfectly valid code:

7 Major versions later and Delphi hasn't improved a bit! Delphi IDE's error insight complains about this perfectly valid code:

if aHeader.RecType.IsEmpty then
sl.Add('RecType is missing.');

where RecType is of type ROUTF8String and ROUTF8String is defined as follows:

type
ROUTF8String = string;

So it's just an alias for String really. Delphi IDE gives me a error that IsEmpty is not implemented for type ROUTF8String. But, when I compile the code, then magically the compiler itself is perfectly happy with it.

I came from XE3 to XE 10.2, and it seems that after 7 major versions, the IDE Error Insight has not improved a bit. Still the first "feature" you need to disable when using Delphi! Why do people still buy Delphi?

Comments

  1. Do you feel better now that you have vented? ;) I have to say that I find some things like error insight to be a pain and tend to ignore it. Often it highlights inconsistently, or after a compile it will show different highlights.

    I have not yet upgraded from 10.2 to 10.3 simply because I am waiting to see what other people think of the upgrade before taking the leap. Whether or not 10.3 improves the error insight remains to be seen, so far as I am concerned.

    As to why I continue to pay for it, for me it still remains a tool that I am able to create applications quickly and it does what it does do very well. I tend to excuse its foibles.

    ReplyDelete
  2. The problem with error insight is that its not the same compiler compiling for error insight as is compiling for code. Its some originally Java based code, (auto?) converted to .Net which is at least one reason why Delphi still require .Net framework installed. The solution is "difficult" to upgrade with the new features in the Delphi language as far as I know.

    I know Idera is aware about the problem, and there are plans in stall to my knowledge.

    ReplyDelete
  3. Good to know that there is an explanation and that a resolution may be in the pipeline.

    ReplyDelete
  4. Hmm, Error Insight was introduced in Delphi 2005, so the same number of 'major versions' occurred between its introduction and XE3 as between XE3 and 10.2...

    ReplyDelete
  5. Martyn Spencer > Good to know that there is an explanation and that a resolution may be in the pipeline.

    Umm, I wouldn't hold my breath. Like I said... 7 major delphi versions later and it still wasn't fixed. As as far as I know, people have already reported this in Delphi XE too, so that would make it 10 major versions later! If you calculate how much a subscription would have costed from the XE3 days to XE 10.2.... That's an awful lot of money wasted for what is still a broken tool.

    I develop in many languages, and Delphi is by far the worst development tool I've used in recent times. With Java and Eclipse I can knock up the same applications and features in a fraction of the time it takes in Delphi - with development tools that actually work and has infinitely more useful features. The days of putting Delphi high on a pedestal is long gone. Other tools and languages have long since caught up and surpassed Delphi.

    ReplyDelete
  6. Graeme Geldenhuys I have learnt long ago to not hold out for things like this. Like you I use other tools as well but they are also not without their minor irritations. I can understand your frustration if this is a feature that is important to you.

    ReplyDelete
  7. Delphi 7 had the last well working IDE.

    ReplyDelete
  8. Graeme Geldenhuys Just disable Error Insight and forget about it - it's never worked, and the chances are it never will do. This doesn't mean the whole product is rubbish, it just means Error Insight is...

    ReplyDelete
  9. Ralf Stocker Delphi 7 is definitely no alternative any more and has not been for years. Every time I am forced to work with this thing I spend a multiple of the time compared to Delphi 10.2.3 Tokyo.
    BTW, Delphi 7 has no working Error Insight either.

    ReplyDelete
  10. Chris Rolliston > and the chances are it never will do.

    And with statements/mentality like that, that is why I can't ever imagine myself recommending Delphi development tools to any developer.
    If you don't use Java, search the web or YouTube for some features Eclipse and Intellij IDEA has - it's mind blowing how much those IDEs do for you. And before anybody even thinks it, NO, those Java IDE's are not slow. Delphi IDE takes about 15 seconds longer to start than Eclipse on my system, and Eclipse IDE does a ton more than Delphi (eg: deep code analysis, api help, constant code recommended improvements, auto code refactoring etc).

    ReplyDelete
  11. Graeme Geldenhuys I really don't care the time it take to load. I have to install 3rd parties library that usually takes some time to load. What bother's me a lot with Java, VS and the like is their ability to predict what I'm writing. If I type "Result" and hit [space], those IDE comes with the a replacement as "Microsoft.WindowsAzure.Storage.ResultSegment< >" (for example), when all I want is to type "Result = 4". Too damn smart!

    ReplyDelete
  12. Graeme Geldenhuys Agree with the JetBrains love, but Eclipse - yuck! No, really ;-) Do you run RADStudio fully loaded? (E.g., Enterprise SKU with nothing turned off, custom component packs, etc.?) Use FMX? Otherwise performing worse than Eclipse is surprising. (And yes, you may well say RADStudio should work efficiently fully loaded, FMX included!)

    ReplyDelete
  13. Bare... that means without my kbmMW ;) I agree.. But with kbmMW (its not an advert I promise! :)) I really cant use any other development tools as efficiently as Delphi. Im actually serious about it. I have an up to date subscription for IntelliJ Ultimate and its a fantastic IDE... it really is... for Java and Javascript primarily although it supports several other languages as well... but the darned Java frameworks are just too longwinded to use, and the application servers (even the easy of them) simply too cumbersome... not to mention the myriad of XML and JSON and YAML configuration files, all intertwined with the best AND worst of IoC simply sucks the fun and efficiency out of programming.

    ReplyDelete
  14. Chris Rolliston Threw out my D2006 box a few weeks ago, for me the first look at ErrorInsight, and it never worked in that either. Nothing like being consistent..

    ReplyDelete
  15. Clement Doss that's what cnPack is doing to to me too when assisting co-workers that have it installed. Totally nerving (:

    ReplyDelete
  16. Clement Doss : > If I type "Result" and hit [space], those IDE comes with the a replacement as "Microsoft.WindowsAzure.Storage.ResultSegment< >"

    Clearly a Visual Studio thing or some setup issue. I just tested that to make doubly sure, and neither Eclipse or Intellij IDEA does what you say. I can press Ctrl+Space to force suggestions in the Java ide's and the options are all from most valid to least valid.

    ReplyDelete
  17. Chris Rolliston > Do you run RADStudio fully loaded?

    Yes it is RAD Studio with the Delphi language and I have RemObjects Remoting and DataAbstract installed. I also have CodeSite installed. Nothing else.

    As for Eclipse, that is full of custom add-ons, and not small ones either. eg: I have the standard Eclipse for Java Developers, then manually added other add-ons over the years, like Maven integration, Spring (various frameworks), JUnit etc components added. It's not just the start-up that is faster. While coding, I got auto-compilation, code suggestions, code navigation... All feels a lot more responsive than what I experience with Delphi IDE.

    Your last sentence summed it up perfectly. There is no excuse. ;-)

    ReplyDelete
  18. Kim Madsen : I don't know how much recent Java development you do, but if you do any web services and web app development, take a look at the latest Spring MVC, Spring Boot etc frameworks. Unbelievable what functionality you can implement in only a few minutes. And no, editing XML and JSON files for JEE applications are are a thing of the past (with Java Spring at least). You simply create a class, add code attributes and the framework injects the required code at runtime to make it into a service or api call, or even CRUD for data persistence.

    ReplyDelete
  19. Graeme Geldenhuys I last used Spring Boot about 14 months ago.... and I learned good things from it... but it along with all the other black box packages still use the regular configuration stuff from Spring, which means that noone can guarantee how an application will work, simply because there can be embedded configuration IoC files all over the field, which may or may not override other settings in one big ugly spider web.
    kbmMW contains lots of idea from Spring Boot. IMO all the best ones, which makes it a real breeze to make REST and non REST services, CRUD etc. No doubt there were nice features in Spring Boot and hibernate, but they are imo better implemented in kbmMW ;)

    ReplyDelete

Post a Comment