Stuart Halloway of Cognitect argues for debugging with the scientific method: form hypotheses, try to falsify them, and write everything down. The talk is given to the Clojure community but applies to any language.
Why Hacker News points people here: HN recommends it as a talk that changed how people debug, worth rewatching periodically.
“changed how I debug problems. I try to watch it once every year or two.”HN comment, 2022
“changed how I debug problems. I try to watch it once every year or two.”
Debugging by forming and falsifying hypotheses while writing everything down
Full comment
This talk, "Debugging with the Scientific Method" changed how I debug problems. I try to watch it once every year or two. tl;dr, when debugging people naturally form a hypothesis about what is going wrong and then set about gathering evidence to support or refute that hypothesis. When you do so unconciously you are very prone to biases of all sorts, most importantly confirmation bias. When you do so mindfully, and Write It All Down then you are much more likely to a) come up with an evidence gathering exercise which will usefully falsify your hypothesis, and b) respect the gathered evidence, reject the now false hypothesis, and move on to a new one. this video
RecommendschrislloydDec 2015
“This talk is a good backstory as to why the errors are so bad, and useful no matter what language you use”
Backstory on why Clojure errors are bad, useful in any language
Full comment
I think your criticisms are definitely valid. The learning curve is steep (intentionally so) but definitely worth it. Your programs will become more reliable and you'll get more done as a consequence. Please push through! The error messages are terrible, and there are a lot of ongoing conversations about them at the moment in the Clojure community[1]. The Clojure[script] toolchain does tend to be all-in but there's work happening now to break that up — stay tuned. StackOverflow and the Clojure Slack channel also full of people who know how to fix issues :) Stick with it, when you'll have an "ah-ha!" moment soon enough! [1]: This talk is a good backstory as to why the errors are so bad, and useful no matter what language you use this video
RecommendsgriersonSep 2018
“Stuart Halloway from the Clojure community has some great a talks using the REPL to debug.”
Halloway talk on using the REPL to debug
Full comment
Stuart Halloway from the Clojure community has some great a talks using the REPL to debug. Links: Debugging with the Scientific Method - Stuart Halloway ( this video ) REPL DEBUGGING: NO STACKTRACE REQUIRED ( link ) scope-capture ( link )
Recommendssimon_accaMay 2023
“Stu Halloway (also a member of the Clojure core team) has a couple of great talks on using the scientific method in programming”
Halloway talks on applying the scientific method in programming
Full comment
Stu Halloway (also a member of the Clojure core team) has a couple of great talks on using the scientific method in programming: this videolink