Give me some feedback!

| | Comments (13)

So I've been doing a lot more work in Visual Studio 2005 lately, and I've noticed something truly strange: there's absolutely no progress indication aside from an animated icon in the status bar.

Yes, it's nice to know that it's still doing something by having a whopping three to five frames of animation in the status area. However, that's pretty worthless to me -- I *know* it's still compiling since it's using 100% of my CPU. What I am most interested in is what percentage of compiling is done and what's left?

I can understand that for very small projects, a progress indicator is useless. It would just flash and you'd probably waste more cycles to do that than it's worth. Just skip the indicator if the compile is going to happen very quickly (which does take some foresight to determine). However, when you have a large project, the progress indicator is a must.

What's truly mind-boggling to me is that there are very simple metrics for progress indication in C/C++. 1) How many lines of code have you compiled vs how many lines are left? Yes, C/C++ isn't line based. I know that there are people out there who are childish enough to write their entire application on a single line and then file a bug report about the progress indicator not being helpful. However, the vast majority of programmers out there actually want to accomplish something aside from making a point and their applications are split into multiple lines (and over multiple files). 2) Multiple files also makes for a reasonable metric. If you have 1000 files to compile and you're on #3, then chances are, you have a fair amount of work left to do. 3) Bytes of data left to compile would work as well. It's trivial to calculate, and is slightly more indicative of work load.

I realize that all of these methods can be picked apart as to why they're not right. However, this isn't about being 100% right. It's about providing some margin of feedback to the user. It's something the file system and networking people have known for years. It'd be nice if the VS team caught on as well.

When you start a large file transfer from one disk to another, or a download from one machine to another, you have no pre-ordained knowledge of how long it's going to take. However, that doesn't stop the designers for providing the user with a progress indicator that at least makes a stab at it. Sure, it's not 100% right and it's not always that helpful in an exacting sense. But it still tells the user what's going on and gives them a broad overview of progress, which is all that's really important.

So come on Visual Studio team... give me some feedback, will ya?

13 Comments

You're kidding ... right ?
NO feedback ? WTF is that ?
And this is a shipping product from MS ? Wow!
Why do people put up wih that sort of thing from MS ?

To be fair, CodeWarrior has the same issue. It just shows you the name of the files as they're compiling (which VS does as well). gcc is the same way also. I think it's just a matter of C/C++ compiler/IDE teams not thinking outside of the box enough.

CW 8 gives you some feedback in it's dialogs about what's being compiled and how many lines it's done. Don't know about CW 9 though.

gcc I rarely use from the command line.

In Xcode you get a little bit of feedback about "compiling file X of N" and if you reveal the activity window and some of hte other status monitoring windows you can get more detail. But not a lot more than if you used a makefile.

Of course the RB compiler is not much different in that regard. It doesn't tell you much about what is being done but the progress bar gives you some visual clue as to how far in the process it is.

Dammit! I blame Bush!

@Bill -- Not a bad idea, he's responsible for the death of America, the hole in the ozone layer and killing kittens. Why not poor UI design as well?

Hey, MeatSack, what is the current Vista version? I am running Parallels on my MacPro and want to try out this new fangled windows thingy.

RC1 was released today, so that's the latest. You're welcome, republican.

Already downloading it Laggard!

LOL, all this name calling is starting to remind me of home with my folks :P

I love Aaron like a younger, dumber brother.

Gimme a hug.

LoL, and I love Bill about as much as one can love a snake-like, greasy republican. I'd hug him, but it might rub off on my liberal senses. ;-)

Boy, this comment thread went South in a hurry.

Leave a comment

Disclaimer

I'm currently an employee of REAL Software. My blog is mine. The opinions represented in this blog are mine as well and may not represent my employer's opinions. All original material is copyrighted and property of the author.

REALbasic® is a registered trademark of REAL Software, Inc. REAL SQL Server™ and Lingua™ are pending trademarks of REAL Software, Inc. All rights reserved.