4 ms·
Python had one: https://morepypy.blogspot.com/2016/07/reverse-debugging-for-python.html?m=1 https://morepypy.blogspot.com/2016/07/reverse-debugging-for-... Ne
by BiteCode_dev 7y ago
Python had one:
https://morepypy.blogspot.com/2016/07/reverse-debugging-for-python.html?m=1 https://morepypy.blogspot.com/2016/07/reverse-debugging-for-...
Never got popular enough to be ported to cpython, let alone python 3.
It's no surprise though: my experience is that most python devs don't know how to use a debugger. In fact, the huge majority of tutorials to learn python don't include one, nor they give explanation about python -m, venv, pip, the python path and other very important basis.
Even the people using pdb don't know very important commands like until, jump, up or tbreak.
- maest 7y agoJupyter notebooks are also hilariously debug-unfriendly.
- BiteCode_dev 7y agoPdb works fine in notebooks though, and that's one of the numerous reasons students should learn it first, before any GUI debugger.
- missjellyfish 7y agoThat implies that students don‘t stop listening as soon as anyone mentions command line. Those who desperately need a debugger to learn are the first ones to not use it because of no GUI.
- prennert 7y agoWait what? Do you know about the %debug magic? It is the best thing ever, particularly when prototyping in the notebook which keeps most of the state. I saw Fernando Pérez use it in a YouTube video. Shame I cannot find it anymore. He was saying he debugs his code only by placing 1/0 in the part of the code he wants to inspect. After the exception is thrown %debug allows you to step into the stack and explore it via a repl. I found that crazy and tried it it. It is life changing. That's how I debug my python code for years now.
- maest 7y agoExpecting users to sprinkle 1/0 through their code is arguably what I mean by "debug unfriendly".
- Iv 7y agoMaybe that's because of the different kind of work I do with but I have wrestled, frustrated at some bugs hard to spot with gdb, but I never felt retrained by pudb despite it being, I guess, more limited. All the bugs I had in python were easier to reproduce, probably because it provides less rope than C or C++ to hang yourself. Usually, stopping a bit before the exception, exploring the variable states was enough to spot the bug. Isn't there something about garbage-collected, dynamic-types, GIL-constrained languages that makes their typical bug easier to spot with a more limited debugger?
- cik 7y agoIt's sad really. I gave a talk a year ago on debugging with the pdb, the basics. Turns out I was the only developer who had ever used the pdb as opposed to bucket listing it.
- chillingeffect 7y agosame with arduino. breaking from pro emedded work to Arduino for some just for fun projs, im flummoxed wo my debuggers and astonished how unfamiliar the community is!
- cik 7y agoUser name checked out ;)