New To RB #1: The Call Stack

My employee has a decade of experience using Visual Basic 6.  The first thing he’s doing is figuring out how the REALbasic IDE works.  For his first project he’s running the IDE and setting breakpoints to see how things are called.

When he asked me how to get to the call stack I was somewhat taken aback.  It’s that little popup menu at the top of the window, it’s obvious, right?  Well, obviously not to a new RB user coming from VB 6.

After I showed him what it was and how to use it his words were, “Well, that’s not very intuitive!” and I’d have to agree.  What is the function of a popup menu?  Well, it allows the user to make a selection from a list of choices.

In the RB IDE the call stack popup menu has no label to indicate what it is nor what its function is.  It’s only when you click on it do you find the really valuable information – the call stack.  And then the popup menu makes sense because you use it to traverse the call stack.

While the popup is a good control to make a choice it’s not an optimal control to display varying information.  You have to click on it to get the information.  That’s not efficient in my opinion, but I’m not sure there’s a good alternative either.

Ideally, you’d like that information in a listbox so you can see it all times because that’s what a listbox is good for.  But clicking a listbox to traverse the call stack isn’t exactly intuitive.  Do you put the listbox on the right side of the window?  Above or below the variables section?  Perhaps it should be at the top where the popup menu is now but bigger so it takes up more room?  Is it redundant to have both the popup menu and the listbox and making a selection in either does the same thing?

I don’t know the answers to any of these questions.  However, I like listening to REALbasic newbies because if a little tweak here or there can help change their experience it’s worth exploring.

There are number of things users would like to see improved in the debugger.  Let’s focus on this one little thing.

What are your thoughts?