User experience reports #13
Replies: 2 comments 5 replies
|
Ok I'll go... There's this old debugger by Borland I used to use in DOS in the 90s - Turbo Debugger. It was amazing. You could see everything all at once: CPU registers, disassembly, memory as hex... things were simpler then though. I was looking for a similar, contemporary experience as I had a particular use-after-free segfault in a release build I wanted to understand. I've never felt at home in gdb or lldb; ddd works but it's a sluggish ui and I prefer command line tools. I came across nnd and decided to try it. Once I got debug syms in my release build, ALL the expected information displayed. I was very pleasantly surprised to see the debugger show me a Rust stack trace, let me pick a call frame and browse the local vars. It even showed a red "bad address" next to the local pointer variable that had gone wrong. I could even do this all by mouse clicks in the terminal window, which is the first thing I typically would try just to see things work before getting used to keyboard shortcuts. A couple things that have felt unintuitive/awkward:
What I really enjoy is that the discoverability is very good. Yes, the controls pane isn't easy to follow but just pressing all the keys to see what would happen out turned out to be harmless. Often in complex user interfaces, trying things out makes controls, dialogs, settings appear or disappear in ways that are unobvious how to undo. Not the case here! Question: in the code pane, why do some function names have their first letter highlighted? What does it mean? |
|
my first experience opening this debugger when used to something like one thing that also comes to mind as a point of potential concern is the controls pane. this is an excellent addition that has been immensely helpful in picking up the debugger but, could potentially become overcrowded if more features are added. some way of offloading that information to other parts of the ui might be worth investigating i found the "continue to cursor" feature extremely nice when debugging a strange layout bug that was causing my textboxes to flicker to their previous state for one frame after submission. this allowed me to jump over larger blocks of code without having to mess with breakpoints i would have immediately removed the final thing i noticed that was a bit of a gripe for me was that code panes, watches, etc persist between sessions, even when in completely different parts of the filesystem. this is great when i'm doing multiple debugging sessions within a single project but was a bit of a pain point when hopping over to other projects |
Uh oh!
There was an error while loading. Please reload this page.
A type of feedback I'm particularly interested in is raw reports of the experience of using the debugger for the first time (or first few times). Think videogame playtesting. E.g.:
Hope this makes sense.
Feel free to post something like this here. Or something not like this, no pressure. You can also send me an email.
All reactions