Elm Debugging techniques* Debug.todo
* Frame then fill in
* Annotation let bindings
* Using nonsense names as a step
* Elm review rule to check for nonsense name
Hardcoded values vs debug.todo* Todos don't allow you to get feedback by running your code * TDD * Fake it till you make it * Simplest thing that could possibly work * Joël Quenneville's article Classical Reasoning and Debugging * Debugging is like pruning a tree
Breaks* Take a walk. Step away from the keyboard when you're grinding on a problem
* sscce.org (Short, Self Contained, Correct (Compilable), Example)
* Create a smaller reproduction of the problem
* Reduce the variables, you reduce the noise and get more useful feedback
* Reasoning by analogy from Joël's post
* Elm debug log browser extension
* node --inspect
* elm-test-rs
Debug.log in unit tests* Test.only for running just one test or describe
* Put Debug.logs in each path of an if or case expression
* Use the browser elm debugger to inspect the model
* Scaling Elm Application episode
* Narrow down your search space with Elm types
* Parse, Don't Validate episode
* Tiny steps help you prune the tree
* Exploratory Testing
* Wrap early, unwrap late