You know what a “reduced test case” is, right? We’ve talked about it here. I imagine the concept is useful in many walks of life, but in the world of front-end development, you can think of it like:
The point of making these is typically troubleshooting. It’s both for you and for anyone else looking at the trouble. The less unrelated code anyone has to wade through to understand the problem, the better. The secret trick is that while making a reduced test case, you often figure out the problem in the process. ;)
I recently found out another acronym for all this: SSCCE.
That stands for “Short, Self Contained, Correct (Compilable), Example.” Sleuthing the meta tags, it looks like the credit is to Andrew Thompson and last updated in 2014. That landing page describes them wonderfully and explains what you need to do to create one.
It covers this classic situation where you discover the problem isn’t where you think it is:
If trimming a very large amount if code for others to see, you might trim out a part of it early on that you think is not related to the problem, yet the problem is fixed.
…and closes with the most important thing:
We are not proposing that every single problem needs a SSCCE in order to be solved. It will, however, make people much more likely to help, and will therefore increase the chance of finding a solution.
I’d say it’s a dramatic difference. The chances of me trying to help on a small bug where the bug is buried within a giant pile of unfamiliar code? Very low. The chances of me trying to help on a small bug with a SSCCE? High.
However, I think I still prefer “reduced test case” since the term is more self-explanatory.
Stack Overflow used to use “MCVE” for “Minimal, Complete, Verifiable Example” and https://stackoverflow.com/help/mcve now redirects to their “Minimal Reproducible Example” page.
Didn’t realise i was doing this… when ive been doing it all along! who knew…
Generally speaking, the system we have is so verbose that i like to head over to codepen or jsfiddle, smash out what i need to do and fix it there with the least amount of code required!
I often use Codepen for this!