4 ms·
Agree with the main point: Do regularly step outside "your" assigned work to fix problems. I still think yak shaving is bad, but tautologically. It's only ca
by Deestan 8y ago
Agree with the main point: Do regularly step outside "your" assigned work to fix problems.
I still think yak shaving is bad, but tautologically. It's
only called yak shaving when you go too deep.
Not yak A: My build failed with no sensible error given, so I improved the build process to log errors better.
Not yak B: My build failed with no sensible error given, so I had to log into the build server to inspect it, so I had to run around asking people how to get remote desktop credentials. I then documented on the internal Wiki how and where to find credentials, and improved the build process to log errors better.
Yak territory: In scenario B, I found the remote desktop software is running an old version, so I set out to update it on the build server.
Deep Yak territory: While updating the remote desktop software, I realized that it would be good to update it on all build servers, so I make a script to do that. Such a script should also run automatically to upgrade to a newer version when it becomes available so I don't have to manually to this every time. I could run the script on the build master, but the script is in Python 3, and the build master only has Python 2 installed. Installing Python 3 I notice I need to keep Python 2 the default to not mess with execution of existing scripts. But the existing scripts are mostly thin layers above Python libraries that exist in Python 3, so it wouldn't be a big task to port them over and thus simplify everything.
- crispyambulance 8y agoThe things you cite as "Yak territory" are just bad, anti-productive decisions. Yak shaving, by definition, is a seemingly unrelated problem that _needs_ to be solved before progressing with the primary task. In other words, if it's merely an optional decision, it's not really "Yak shaving". The only way you avoid Yak shaving is by an uncanny combination of careful planning and organizational flexibility. Sometimes Yak shaving can't be avoided, that's OK, it's a learning experience and it builds skills, character and funny stories.
- peteretep 8y ago> Yak shaving, by definition Depends whose definition you choose to use. The apparent primary source[0] doesn't have it as a dependency, the later jargon file does[1], and then there are seem to be an approximate equal split of others. [0] https://projects.csail.mit.edu/gsb/old-archive/gsb-archive/gsb2000-02-11.html https://projects.csail.mit.edu/gsb/old-archive/gsb-archive/g... [1] http://catb.org/jargon/html/Y/yak-shaving.html http://catb.org/jargon/html/Y/yak-shaving.html
- setr 8y agoMy internal definition is something close to "7-steps removed"; yak-shaving is yak-shaving when you end up pretty far from the problem itself; whether its actually good or required is independent, just the fact that it might be time to start wondering if you went on too many tangents. Eg quintessential example of knuth -- everything he did was good work, and in the end useful for his overarching goals... but at some point in the middle of that situation its time to start wondering if he's gone off the deep end. Whether you decide yes or no, it doesn't matter, you're still deep in yak territory
- jammygit 8y agoThe problem is that nobody else is paying attention to the Yak. Its getting out of control and your house guest thought it was a rug the other day. All you need in order to shave it too is to sharpen your scissors, and the sharpener is at the hardware store. Easy.