2 ms·
That’s not the definition of yak shaving I’ve ever used. I’ve always thought of it more like: - I find a bug - I track it down to a library I’m using. The fix i
by zelos 4y ago
That’s not the definition of yak shaving I’ve ever used. I’ve always thought of it more like:
- I find a bug
- I track it down to a library I’m using. The fix is in a later release.
- I go to upgrade the library, but that brings in some transitive dependency upgrades that accidentally broke an API used elsewhere.
So now instead of fixing my bug I’m rewriting API call sites across my project.
- vertis 4y agoI think my understanding of yak-shaving was more, can't get to the thing you were trying to do because of cascading blockers. Less distraction, and more unknown scope and complexity. I quite like the Malcolm in the Middle[0] example of yak-shaving, though it's a combination of both blockers and distraction. [0]: https://www.youtube.com/watch?v=8fnfeuoh4s8 https://www.youtube.com/watch?v=8fnfeuoh4s8
- itronitron 4y agoMy understanding of yak shaving is that if you need to create a system for selling ads then you'll start by developing a graph layout algorithm that produces a set of optimal layouts for routing power in a data center (because you don't want to be called out if your system doesn't scale.)
- detaro 4y agoIndeed: > yak shaving - Any seemingly pointless activity which is actually necessary to solve a problem which solves a problem which, several levels of recursion later, solves the real problem you're working on.
- logandk 4y agoThat's a much more correct example than the one in the article. The "real-world example" in the article describes doing something completely different than intended, not out of necessity but by distraction.