Skip to content
0:00 / 0:00

#remedybg#caseymuratori#windowsdebugging

Twenty Minutes of Reasons to Use the RemedyBG Debugger

Molly Rocket

148K subscribers • 33 videos on Hallway

YouTube
  • Recommended by 4 people: 4 on Hacker News.
  • Presented by Casey Muratori, creator of Molly Rocket
  • An opinion. It argues one side of a question engineers disagree on.

Intermediate. Assumes working knowledge.

69K views4 years ago4 recommendations

Tools and practiceSystems programmingDebuggingVim, Emacs and editorsPerformance and optimization

Casey Muratori demonstrates the speed and features of the RemedyBG debugger for Windows, highlighting its watch window capabilities.

A whirlwind tour of the debugger I use every day: remedybg.itch.io

Why it's here

4 people recommend this

What people say. Recommended as a demonstration of high-performance developer tooling compared to slow modern IDEs.

PainfullyNormalon Hacker News • Recommends

On “Ask HN: What developer tools would you like to see?”

A debugger like RemedyBG, but for linux and macos. Bonus points if you could use it for all the things, including but not limited to: WASM, javascript, android, and iOS. To clarify: I use Vim as a text editor. I use it for all of my programming editor needs no matter what I'm making. I also make a large variety of things because I'm a consultant. Vim has never let me down as far as being able to intelligently edit everything from React to assembly and everything in between on every desktop OS. I'd like a debugger that is suitably small, fast and flexible. link Here's Casey Muratori demonstrating all the way in which RemedyBG rocks. link to this video

vinyl7on Hacker News • Recommends

On ““I think the vast majority of developers still debug using print() statements””

Anyone frustrated with debuggers, check out RemedyBG link Insanely fast and capable debugger for Windows. link to this video (I have no relation to the project, just think it's great)

vinyl7on Hacker News • Recommends

On “Windows 95 in Electron”

> I start Visual Studio, which doesn't feel faster than Electron Well...Visual Studio is a part of the horribly written software collection. Here's an example of actually good software: link to this video

fwlron Hacker News • Recommends

On ““Clean Code, Horrible Performance” Discussion”

>What’s an example of a fast debugger? My apologies in advance if this feels like a gotcha, but… Casey ended up swapping to RemedyBG for debugging. He made a video about why. From about 0:50 onwards he talks about the speed and feature set of the watch window link to this video Also, I don’t mean to be rude by ignoring all the questions you posed; they’re good questions, I just don’t have answers for them (I would hope the developers whose full-time job it is to build debuggers would , though).

dundariouson Hacker News • Recommends

On “Why You Should Learn Linux (As a Developer)”

The watch windows are vastly inferior in the kinds of formatted information they can very quickly show, as the program is stepped through. Take a look at "Twenty Minutes of Reasons to Use the RemedyBG Debugger": link to this video Haven't tried the Qt or KDE or Jetbrains environments in about 3 years, but last I did, they were much like Visual Studio -- slow, odd latency in displaying formatted values as you step through, lack of easy ways to format data in a human readable way in the watch window. To be clear, when I say "slow", I mean the GUI is slow, not the underlying debugger, which I presume is plenty fast.

u/skeetoin r/C_Programming • Mentions

On “Your Thoughts on C vs Go”

To clarify, I'm talking about a workflow of edit, build, then switch focus to a long-running debugger instance with the project loaded and hit "run." Repeat. You can see this basic workflow in action in [Handmade Hero] for thousands of hours, first with Visual Studio and later with RemedyBG. A debugger is [integral to the workflow]. If you've never experienced this, you should try it out. Visual Studio (esp. 2008 or earlier), raddbg (open source), or RememdyBG (cost some money). Though currently this wealth of debuggers is Windows-only. (Or maybe don't try it out, because ignorance is bliss and it will ruin Delve for you.) Delve is like he opposite of this, and everything about it indicates…

u/skeetoin r/C_Programming • Mentions

On “Modern C development in Visual studio talk in 2023.”

Great video! The unix ecosystem could eat some humble pie and learn a lot from Visual Studio. > (13:16) the future of C is not more language, but more tools. Completely agree. Updates to the C standard in this century have been functionally irrelevant. All the evolution has been in tooling. Better compilers, static analysis, runtime checks, fuzz testing, and hardware. That being said, nearly everything shown could have been done 20–25 years ago! That's the past, not the future. Back in the 1990s and early 2000s, Visual Studio was *lightyears* ahead of its time and competition. However, the only substantial change since that time, aside from C99 support in Visual Studio 2015, is that [it's…

u/skeetoin r/C_Programming • Mentions

On “I've just finished to upgrade my raycaster game engine, adding multiplayer and more! Written from scratch in C and SDL2. GitHub in the comments :)”

Ha, thanks! To be fair, I've looked at this code a couple of times before: * https://old.reddit.com/r/C_Programming/comments/yrr3qu/_/ivvjr4t/ * https://old.reddit.com/r/C_Programming/comments/12fifet/_/jfg9719/ Though, still, I could have found these details nearly as quickly without, as I do this sort of thing often. (Search for "+++" in my comment history for more diff-using reviews.) It mainly saved me here from retreading old ground. Familiarity with game structure helps, too. The key navigation tools for me are ctags and a debugger. For bug hunting, sanitizers (`-fsanitize=...`), compiler warnings, and fuzzing (afl). I use `ctags -R` to build a tags file, in Vim `CTRL-]` jumps to de…

u/skeetoin r/C_Programming • Mentions

On “Advice for a new professor teaching C”

You're using one of the greatest debugging environments available in any programming language, so you should take advantage! Most programming languages don't have tools even half as good as what you're already using. No, `printf`-debugging is not nearly as effective, and a debugger will give you more insight into a program, more efficiently. You want a tool that will pause the program when you've made a mistake so that you can look around and figure out what happened, without manually inserting `printf`s, rebuilding, re-triggering the bug, and hoping your print statements covered enough. It's well-worth the investment to learn your debugger. In your case you'd typically want the "watch" pan…

u/BaffledKing93in r/C_Programming • Mentions

On “Any good and easy-to-use C debuggers?”

Video demoing RemedyBG: link to this video

u/skeetoin r/C_Programming • Mentions

On “I'm fairly new to c++ and have never seen this error message before, any idea on how to fix it?”

> doesn't even need the debugger. Just so you know: You can run the example I gave you without a debugger, and (as I learned today) the SDL logger will even route messages to the console if launched from one. (`printf` or `cout` on standard output/error still won't work under the Windows subsystem.) I mentioned the debugger as recommendation ("should"), especially for developing an interactive application, since it's such an effective development tool, it's essential on Windows where the console is second class, and printf-debugging — including debugging through log traces rather than a debugger — is a bad habit. There's no reason not to always run the program with a debugger attached duri…

u/skeetoin r/C_Programming • Mentions

On “c/c++ memory map schema debugger”

RemedyBG is a debugger much like Visual Studio, but [packed with even more features] including a table view that perhaps touches on what you're looking for. In the watch window you describe what columns you want and it renders a table from a variable. Example: Screenshot of watch window: https://i.imgur.com/AYsI7Hb.png Source: struct judge { char *firstname; char *lastname; }; struct dog { char *name; char *breed; }; struct judging { long long showtime; char *breed; struct judge *judge; char *showring; char *show; }; int main(void) { struct judge judges[] = { {"Fr…

u/skeetoin r/C_Programming • Mentions

On “Third-party Windows API (windows.h) and syscall documentation created (or at least resorted) by --not-morons--?”

With a change in attitude you might actually learn something. Sure, some things behave poorly on Windows — embarrassingly poor in some cases — but believe it or not, some things are actually *better* than on Linux. In a few cases *much* better. For instance, unix systems have never had a process debugger nearly as good as RemedyBG or even older versions of Visual Studio. It's far better about userland backwards compatibility, which remains a complete disaster on unix-likes. POSIX has nothing even close to IOCP, a high performance feature Windows has had since 1993. Linux only got on par (and more) with IOCP with io_uring in 5.1 (2019), a quarter century later. Most of your complaints amoun…