The Top Ten Niggling, Irritating, and Downright Bad IDE Bugs List
One of my main jobs is to figure out what you guys want and need, and then figure out how to match up those wants and needs with what we can deliver in a product. It’s quite clear to me, both because of what you all say and from my experiences as a developer, that quality and stability are key features that you want in your development tools. Well, you can rest assured that while I am the Delphi/C# Product Manager, “Quality” will be a the top of the priority list. We have an R&D Engineer whose sole job is to improve quality, stability and performance, and it will continue that way if I have anything to say about it.
Pursuant to that, then, I want to solicit feedback from you all so that I can put together a “Top Ten Niggling, Irritating, and Downright Bad IDE Bugs” list. Now, I know that there very likely more than ten of them out there, but this will be the ten most irritating and niggling. (We can always do another list later, right?) I’ll put together the list based on your feedback, and it will get put into the next Scrum Sprint we have for the IDE.
Now, because there will no doubt be a lot of quibbling and discussion about this, I’m going to have to be pretty ruthless about what gets on the list, so here are the criteria for your issue to be considered:
-
The bug must be reported in QualityCentral.
-
The bug must be reproducible in the current release of Delphi — i.e. Delphi 2006 Update 2.
-
The QC report should be well written and fully describe the problem.
-
The bug must be a bug in the IDE – not the VCL, compiler, etc.
-
It must be a bug, and not a feature request. That is, it has to describe designed functionality that isn’t working properly, or a series of events that lead to a crash or access violation or other exception. I’m especially interested in problems with the un-docked, un-embedded VCL designer. Also, if something used to work in previous versions and doesn’t anymore, that is of interest as well.
-
Did I mention that it needs to be reproducible and in QC?
Now, I know that the above may be a bit restrictive, but narrowing down a list using that criteria is the best way to actually get something done. I’ll be as objective as I can with the list, but naturally some subjectiveness will enter into it.
So, break out QC, and start poking around to find your most irritating IDE reports. Post them as comments here, in the newsgroups, or email me. Cast and/or recast your votes in QC, as I’ll be looking at that as well. I’d like to have this list done in about a week.
I’m looking forward to seeing what you all come up with.



Nick:
Funny thing is, I’ve got no gripes with the IDE. Really. Yeah, I’ve got Delphi Speedup loaded, Yeah, I’m running GExperts, MMX and Castalia and have a hook up to Modelmaker.
With those tools in, it runs a treat, does everything I want and then some, and even with all that external kit loaded, it’s solid as a rock…
The only way I can crash the IDE is if *I* do something really, really rude with a component that I’m building, but then it’s my fault, not the IDE…
June 27th, 2006 at 1:26 pmHi Nick,
I believe your requirement of Delphi 2006 Update 6 is a bit misleading. I believe you mean Delphi 6 + Update 2 + HotFix 6 applied.
However, I would argue that Update 2 should be sufficient. That is, the hot fixes do not need to be applied, especially since only HotFix #5 appears to affect a wide audience of developers. It is also my understanding that the hot fixes can be installed as needed. In other words, I can install HotFix #5 only if the other fixes do not affect me.
-Ray
June 27th, 2006 at 1:33 pmRay –
"Update 6" is a typo, it should, and now does, read "Update 2".
Nick
June 27th, 2006 at 1:40 pmI want your blog in a different color scheme.
June 27th, 2006 at 1:54 pmAnthony –
If I change my colors, then someone /else/ will complain about /those/ colors.
Nick
June 27th, 2006 at 2:09 pmWell, I guess QC 22481 (IDE memory meak) must be one of those you’re looking for.
When working with the IDE with larger units (1500 lines and many methods) the IDE tends to eat a lot of memory. That big memory leak seems to happen when doing something that refreshes structure view (switching units, saving files, …). Memory usage can be 1GB and more after 1-2 hours. When all my system memory is used up, Delphi will first slow down and then produce lots of AVs until I kill the IDE using task manager.
June 27th, 2006 at 2:15 pmNick,
I dont want to fill up the list, so I’m only posting one (for now ;-):
Report No: 29810 ( RAID: 240505 ) Status: Open
June 27th, 2006 at 2:20 pmPressing F11 choose Name property, but don’t scroll the list
http://qc.borland.com/wc/qcmain.aspx?d=29810
My Delphi 6 is perfect (fast IDE, good help files). I would like to see a language update after 5 years. Maybe Generics, operator overloads, etc.
June 27th, 2006 at 2:21 pmI think you missed
* "The bug must not be about the online help"
June 27th, 2006 at 2:40 pmHere are the ones that bother me the most:
http://qc.borland.com/wc/qcmain.aspx?d=29214
(should be easy to fix, and is troubling while debugging with packages)
http://qc.borland.com/wc/qcmain.aspx?d=20640
(a major PITA when dealing with VFI)
http://qc.borland.com/wc/qcmain.aspx?d=12860
(very annoying focus issue. The easiest test case is to just open a datamodule inside of a project, close the project, and reopen it to see that the IDE gets sent behind)
Thanks for doing this, and here’s hoping mine make the cut!
June 27th, 2006 at 2:53 pmPeter,
June 27th, 2006 at 3:02 pmUh… I guess since you only have Delphi 6 I can see what you mean… but the language *has* been updated in the last 5 years. For instance, it does support operator overloads, function call inlining, methods on records and several others that are escaping me at the moment… Oh, and this is Win32 *and* .NET.
Nothing says quality like a company saying "do it our way or get lost".
Thank goodness Quality Central is so easy to navigate and use, huh?
June 27th, 2006 at 3:13 pmC Johnson –
My whole goal in this job is to get you to post a comment on my blog that doesn’t read like it came from Eeyore.
What is hard to use about QC? What suggestions do you have for improving navigation? Have you tried the web client?
Nick
June 27th, 2006 at 3:19 pmI can’t get the darn IDE to start up on Mac OS 10.4. Any suggestions?
June 27th, 2006 at 3:29 pmcorbin, you better come back and fix this! ;->
June 27th, 2006 at 3:34 pmCorbin,
June 27th, 2006 at 3:36 pmLOL! Maybe you need a OS transplant?
for now, i just want it to stop crashing. i get the "oopsy, do you want to send a report to borland" dialog several times most days. a delphi devotee on our team can’t understand why it crashes so much for me. he said to me "you must be doing something strange, maybe you move your mouse funny or something, because it only hangs/crashes about twice a day for me". LOL. nick: maybe my expectations are too high - how many crashes per day should i be expecting?
June 27th, 2006 at 4:57 pmHow about fixing the amazingly dysfunctional Help system ? It is currently unusable.
Oh, and if BDS 2006 would stop randomly crashing, that would be a bonus.
At the moment, I find that moving to Visual Studio is looking increasingly appealing.
June 27th, 2006 at 5:16 pmAlain, Please read carefully:
"Did I mention that it needs to be reproducible and in QC?"
June 27th, 2006 at 5:58 pmwhy do you limit yourselves to problems that are "reproducible"? a murder is not reproducible (since the victim is already dead), yet it still can be solved. limiting your focus to the "reproducible" bugs is not a good idea IMO.
June 27th, 2006 at 7:13 pmWell, here are my IDE only bugs:
http://qc.borland.com/wc/qcmain.aspx?d=30673
http://qc.borland.com/wc/qcmain.aspx?d=30672
http://qc.borland.com/wc/qcmain.aspx?d=30671
The last two are very easy to reproduce and should impact a lot of people, especially at companies where "lock your session" is the word when leaving one’s desk.
June 28th, 2006 at 12:13 amThe main one has got to be the layout switching time. It makes layouts unusable in my opinion, I always set the debug / standard layouts to the same thing. No QC report needed there, everyone is aware of the problem
Mine is a small gripe, but it *really* annoys me so much!
I like to use the TAB character for indentation so that other people can see indents the size they like to see them when reading my code.
Unfortunately the IDE editor keeps converting them to spaces, especially when I press <RETURN> at the end of the line and get an auto-indented line.
This also happens in code templates too, fixing this (properly) should fix both issues:
June 28th, 2006 at 12:31 amhttp://qc.borland.com/wc/qcmain.aspx?d=24549
Oh yes
The IDE does not play nicely with multiple monitors. Although I have two monitors I am forced to use it on only the first one!
http://qc.borland.com/wc/qcmain.aspx?d=30674
June 28th, 2006 at 12:42 amI can easily find lots of bugs that are left open in QC. When will u fix these bugs??
I bought Delphi 7 and Delphi 2005 but
I’ve stopped purchasing ur all products because Delphi 2005 annoys me thanks to its lots of bugs. so my main IDE is delphi 7. I(We) have wasted lots of money on ur products.
Im so disappointed at ur products.
I cant trust ur products any more.
Whats the purpose of ur products?
its to help us to develop our applicaitions, isnt it??
but its amlost fact that ur products stop us
from developing our application.
But i hope update 4 for Delphi2005 will be released.
June 28th, 2006 at 1:59 amPLEASE fix this problem. It’s extreamly annoying. Block completion does not work in nested procedures QC24076. For me this totally negates the benefits of having code completion work in main procedures as I instinctively start to manually complete the block because of having to do so in a nested procedure. I understand that nested procedures are not often used, becuase of performance concerns, but to leave functionality uncompleted just because you think most users won’t use it very often creates the impression of a product more like a half-assed open source project by a bunch of grad students than a professional commercial product. Love Delphi… Hate what has happened to it lately!
June 28th, 2006 at 4:30 amRated highest on top.
First one is that design surface still moves in front of object inspector on occations:
http://qc.borland.com/wc/qcmain.aspx?d=13691
Still the steps are now different, so I need to make new ones when I get the time. There should be some other reports on this in the database.
My second one would be the horrible new adjustments for using remote debugging:
http://qc.borland.com/wc/qcmain.aspx?d=23807
Actually the next two was introduced in one of the updates while trying to fix another problem:
http://qc.borland.com/wc/qcmain.aspx?d=30691
http://qc.borland.com/wc/qcmain.aspx?d=27895
And then there are all the block completion problems that made me shut down the whole feature:
http://qc.borland.com/wc/qcmain.aspx?d=23472
http://qc.borland.com/wc/qcmain.aspx?d=25240
http://qc.borland.com/wc/qcmain.aspx?d=26165
These have bugged me for as long as I can remember:
June 28th, 2006 at 4:44 amhttp://qc.borland.com/wc/qcmain.aspx?d=19655
http://qc.borland.com/wc/qcmain.aspx?d=6589
BTW. Are the results of this going to feed into update 3, or will we need to pay to see the benefits? Can I just say IMHO that quality is so much more important than tons of new features. Block Completition and Error Highlighting are both good features in theory but I,ve had to turn both of them off. Block Completition because of QC24076 and Error Highlighting because of QC23010. I would have settled for just one feature working properly.
June 28th, 2006 at 4:45 amHi,
Here we go
:
http://qc.borland.com/wc/qcmain.aspx?d=30402 (Object Inspector dropdown list takes ages to be populated on forms having a lot of objects)
http://qc.borland.com/wc/qcmain.aspx?d=27997 (Object inspector isn’t displaying properties of the selected Object after having clicked on the project manager view (project manager grab the focus))
http://qc.borland.com/wc/qcmain.aspx?d=25572 (Tool Palette wont get the focus when clicking on the Filter icon.)
http://qc.borland.com/wc/qcmain.aspx?d=23713 (Sync Edit Block is cancelled if Editor is scrolled using the scrollbars)
http://qc.borland.com/wc/qcmain.aspx?d=22270 (Object are displayed in a C++ Style instead of a pacal style (-> instead of .))
June 28th, 2006 at 5:49 amMy top bug is the random crashes. It’s unreproducable so it’s not in QC. It’s not even a niggling bug, it’s a major pain in the ass. I’ve been editing for about 15 minutes and just after a save (whew) lock up. With Delphi 2006 Update 2.
I think the ide editor code needs to be reviewed very carefully.
June 28th, 2006 at 6:34 amHere is mine.
http://qc.borland.com/wc/qcmain.aspx?d=23222 (Class Completion does not create a newly created method implementation in a new line)
This bug was introduced with D2005 and it is still on D2006 Upd2, patches, hotfixes… This worked fine in all previous Delphi Editions. This happens with codecompletion and also with the designer. Every time I create and eventhandler with OI I have to copy the event code and place it correctly at the code editor. Imagine how many event handlers one can create at daily basis…
June 28th, 2006 at 6:45 amHi Nick,
great idea!
Here are a few items that are annoying:
AV in tool palette with some components if filter is active (ASP.NET and winforms)
http://qc.borland.com/wc/qcmain.aspx?d=24327
- this bug makes the great toolbox filter function significantly less fun to use when adding stuff to ASP.NET pages
Unable to add reference to assembly that ends in .1.dll to Delphi.NET package
http://qc.borland.com/wc/qcmain.aspx?d=25806
- You have to do nasty workarounds such as creating a library instead of a package or just write the thing in C# instead.
Delphi.NET packages depended on are rebuilt
unnecessarily
http://qc.borland.com/wc/qcmain.aspx?d=27463
- Increases compilation times a lot but is not a showstopper, more of a constant annoyance.
But to be honest, the reproducible bugs are not the worst since I know how to avoid them. The worst is the IDE instability when working with ASP.NET applications. I (and my coworkers) usually have to restart the IDE several times a day due to massive memory consumption or sudden access violations in dccil100.bpl. The ASP.NET designer is also unreliable and sometimes loses event connections on components, or refuses to show the design tab at all for a page. I have tried to make reproducible test cases but failed so far.
(But on the other hand I have also reported reproducible library bugs with test cases and possible fixes for the source code and they have not gotten any attention in a half year so…)
June 28th, 2006 at 7:26 amDelphi 2006 SP2
Small but annoying bug with Win32 toolbar at design time. Toolbar.DrawingStyle = dsGradient. Using icons from imagelist situated in a Datamodule. When moving a tool button to another position on toolbar. Delphi does not repaint the icons. Only if the app is closed and reopened do the icons appear.
June 28th, 2006 at 8:08 amBug 23198 (and duplicate 24746)
Code editor not receiving focus after compiles and debug runs, etc.
Very VERY annoying and detrimental to productivity.
June 28th, 2006 at 9:44 amhttp://qc.borland.com/wc/qcmain.aspx?d=25882 (Problems with the IDE’s main menu.)
http://qc.borland.com/wc/qcmain.aspx?d=23198 (Focus goes to the wrong window after running a project in the IDE.)
June 28th, 2006 at 10:03 amThis annoys me: #30283 and #30647.
June 28th, 2006 at 1:24 pmI prefer new event handlers to be added at the bottom of the file, rather than being inserted alphabetically.
There should at least be an option to turn it off.
BDS-assisted crash reports i have submitted during the past 10 days:
30727, 30725, 30724, 30720, 30663, 30661, 30659, 30657, 30614, 30612, 30610, 30609, 30577, 30571, 30479, 30475, 30472, 30471, 30470, 30469, 30468, 30467, 30463, 30423, 30421, 30419, 30418, 30417, 30416, 30415, 30414, 30413, 30324, 30313, 30256, 30255, 30254, 30253, 30252, 30251
please hire some more R&D engineers to look at stability.
June 29th, 2006 at 12:23 amWhen your project files are read-only the IDE gives an error saving projects that haven’t changed. And of course, if I haven’t asked it to save and don’t have any autosave setting on, it should save nothing.
Highly annoying, and it has led to me having to kill the Delphi IDE a number of times.
http://qc.borland.com/wc/qcmain.aspx?d=30493
On a side note, I know that Delphi 2005 was much maligned, but we only started using it after update 2 was available. I have always needed to kill Delphi 7 several times a day, and while debugging COM objects I also needed to exit it to get the debugging to work. As a rule, I found myself staring at the D7 splash screen upwards of ten times a day!
In Delphi 2005 updates 2 & 3, with FastMM, I have had virtually no problems with instability. Which is maybe why the above error is so annoying to me - after all the hype surrounding quality in Delphi 2006, I received this irritating message within ten minutes of using it. Overall though, I would say the progress has been commendable. Keep up the good work!
June 29th, 2006 at 12:23 amThis one, about custom property editors not showing at OI, for .Net personality:
http://qc.borland.com/wc/qcmain.aspx?d=11850
Another one:
June 29th, 2006 at 1:49 amJava personality can’t be installed, can’t be found <gg>
>Alain, Please read carefully:
>"Did I mention that it needs to be >reproducible and in QC?"
Nice attitude from a manager.
Make it as hard as possible for customers while MS bend over backwards.
I think that your new incarnation of Borland is going to be stillborn.
June 29th, 2006 at 2:04 amHi!
I would like to fix the following issue:
http://qc.borland.com/wc/qcmain.aspx?d=30740
in several words: when add bds.exe.manifest to bin folder several toolbars (Standard, Browser and Debug) have wrong sizes (Height). And if you close and restart IDE several times toolbar heights will increase everytime comparing to previous state
I’ve added screenshots to the issue so you can easily watch.
Also, look at
http://qc.borland.com/wc/qcmain.aspx?d=30743
this behaviour annoys me all the time I use Delphi (from early versions)!
it would be great to fix these two issues. I don’t think it will took a lot of time
June 29th, 2006 at 2:46 amHi, appart from some issues that were already mentioned, here goes my list:
1. Typing slowed down in Code Editor with Together support:
http://qc.borland.com/wc/qcmain.aspx?d=22173
2. Code Editor: non-english (non-ASCII) characters make the editor scroll prematurely:
http://qc.borland.com/wc/qcmain.aspx?d=10241
3. Code editor Column-selecting problems:
http://qc.borland.com/wc/qcmain.aspx?d=10240
4. Code Editor: brace highlighting (parenthesis matching) problem:
http://qc.borland.com/wc/qcmain.aspx?d=10243
5. Code Editor: brace highlighting (string quotes matching) problem:
http://qc.borland.com/wc/qcmain.aspx?d=10242
And 2 suggestions:
1. Switching between Designer guidelines and Snap to grid alignment:
http://qc.borland.com/wc/qcmain.aspx?d=22183
2. Project Manager: exploring folders directly from Project Manager:
http://qc.borland.com/wc/qcmain.aspx?d=10245
Regards and keep in touch with us developers!
June 29th, 2006 at 3:04 amFor me, the most annoying is lack of help. See http://qc.borland.com/wc/qcmain.aspx?d=28074
June 29th, 2006 at 3:38 amIf you want to keep Delphi alive you need:
a)to attract new users.
b)to keep existing users
New users need a proper help system, with links, like in the early Delphi versions.
Existing users need a stable IDE, in preference new gizmos.
Otherwise, your existing users will slowly leak away to Visual Studio and new users will give up at evalutation.
Sorry, I don’t have time to spend forever learning the weird and wonderful QC system. Employ some more testers to do it, instead of customers with time on their hands.
Thanks for listening.
June 29th, 2006 at 3:58 amThe top IDE error we would like fixed is the IDE not freeing memory when large pas files are loaded into the editor.
http://qc.borland.com/wc/qcmain.aspx?d=22481
This has definately been improved, but still needs work.
June 29th, 2006 at 7:31 amHere’s a couple that I would like to see addressed:
Main Menu on form no longer clickable
http://qc.borland.com/wc/qcmain.aspx?d=30819
Designer Guidelines activated on MouseDown and not on Mouse Move
http://qc.borland.com/wc/qcmain.aspx?d=30822
Ray
June 30th, 2006 at 2:01 pmAdd one more vote from me for fixing the memory leaks!
July 2nd, 2006 at 5:20 pmNick, why don’t you use your own "fantastic" tool QualityCentral to get your top ten list. I thought that was the whole idea with voting?
July 4th, 2006 at 4:41 amMy main vote is for QC# 27545. Whenever I open an app that has a datamodule, whatever other windows app is next in line, is brought to the fore, in front of Delphi. I have never seen any program, of whatever size, that brings another program in front of it when you simply open a document/project. One other QC item is #29118. It should be extremely easy to fix. It is not a major problem, but since it worked perfectly in past versions of Delphi (since Delphi 1), and fixing it would take 2 minutes, it might as well be fixed right away.
July 5th, 2006 at 2:07 pmQC#27979 involves the Instance List of the OI. There have been times where I dropped down the combo box, started typing (as per past versions of Delphi), hoping to jump to the component in question — and what really happens is that the current property in the OI is edited! (while the combo box is dropped down!). The Instance List of the OI is such a core element to Delphi, that it ought to be fixed, if it hasn’t yet.
July 5th, 2006 at 2:10 pmI can’t believe that no one has mentioned the structure pain. It is really difficult to use, as it keeps closing down.
July 5th, 2006 at 2:12 pmhttp://qc.borland.com/wc/qcmain.aspx?d=24350
Well, how about the Remote Debugger feature in BDS 2006, that is completely broken, such that even the Borland support guy in charge couldn’t get it to work at all!?
RAID:240563
Borland Support case 632354
Warren Postma
July 6th, 2006 at 8:53 amTekran Instruments Corporation
I agree with Christopher Mark, Grant Allan, and especially with Mark. A system like QC makes sense when 1) there are so few bugs that it is hard for testers to find them, and 2) the system is stable so that there are few irreproducible bugs QC cannot handle. Delphi 6 has not reached this point yet.
More so, IMHO that which is unstable is at best beta by definition and cannot be subject to commercial offer.
Even though I think Delphi 6 is finally usable, thanks to Delphi 5 and Delphi 6 quality I cannot recommend it to anybody who has no huge investment made in Delphi.
This will change when Delphi 7 (better quality then 2k6, but occasionally starts to generate exceptions and finally crashes), Delphi 2005 (unstable beyond usability) and Delphi 2006 are ALL made rock solid. If that happens when Delphi 2008 is the latest, let it be so. Otherwise, paying for Delphi is for gamblers only.
My selected bug: start "find in files" and observe the pink progress icon background where it should be transparent. It is most irritating because being extremely obvious it makes me feel I am using a product nobody bothered to start before.
July 6th, 2006 at 10:09 amI vote for:
http://qc.borland.com/wc/qcmain.aspx?d=22481
This one is a major PITA, each and every day. I’m "this close" to get another gig of memory just so I can keep BDS open without closing it a bit longer.
July 7th, 2006 at 10:43 pmHere’s my take on it (agree/disagree as you will):
1) You charge near-on a grand for the "bottom-rung" version of your product.
2) It’s unstable in many area’s as noted by QC - these are IDE faults, not compiler/bad coding/etc issues.
3) You’re losing market ground to more stable environments like JCreator, Eclipse, and (laughingly) MS Studio.
For the money involved; if there is a bug causing an IDE issue, it gets fixed. End of story.
Any other philosophy, then resign yourself to a product that will continue to die in the market place.
For the sake of loyal Delphi-ists out there (still includes me, for all my hard words), take this on your goal: Fix the problems that are there as a matter of urgency. Release a patch for the current IDE BEFORE releasing a new IDE. Why? Because those people buying the new version will see your commitment to the product.
July 9th, 2006 at 3:04 pmBut hey, what do I know? I’m one voice, one sound among many - a big contributor in those little voices, but still one voice.
Nick
(Am I late here? Ooops.)
As a Visual Studio user wanting to return to the fold,
http://qc.borland.com/wc/qcmain.aspx?d=8400
baffles me - why has this been closed without a resolution?
Andrew Tierney is right…
July 14th, 2006 at 12:54 pmDelphi destructs the "uses structure" in the .dpr file:
http://qc.borland.com/wc/qcmain.aspx?d=21339
July 14th, 2006 at 7:02 pm[#1:]QC23222 - "Class Completion does not create a newly created method implementation in a new line"; [#2:]QC24634 - "Project manager locates unit in wrong project"; [#3:]QC7174 - "VFI Descendants’ Uses clause (re-)inserts all VCL Units of Ancestor".
October 5th, 2006 at 1:51 pmMy biggest problem with the IDE is :
i am designing web page then switch to webform1.aspx page , press "Save all" button and button is grayed.Everything is allright.when i switch to design page again , page is tampered and "save all" button is enabled itself again.but if i run the page , everything is good in Internet Explorer.
Result : Aspx page is error free (structure windows has no error)
Design page is tampered.
Internet Explorer is good.
What is the problem ?
November 10th, 2006 at 1:29 pmI am using D2005 update 3.
http://qc.borland.com/wc/qcmain.aspx?d=8211
My code completion pop-ups appear off the left side of screen more than 1/2 the time rendering this feature useless. I use BDS 2006 update 2 for Win 32 VCL.
November 28th, 2006 at 9:27 am