Hacker News new | ask | show | jobs
by jt2190 874 days ago
I’m having trouble understanding your example.

Yak-shaving is a chain of preconditions, e.g:

- In order to do Z, I must first do Y

- In order to do Y, I must first do X

- In order to do X, I must first do W

Etc.

Clearly the way to improve things is to shorten the chain of preconditions as much as is reasonable.

In your example, it sounds like refactoring can “go off course”, but if we’re just shortening a chain of preconditions, how would it go off course? Wouldn’t we know what precondition we were eliminating?

1 comments

Poor choice of words on my part. In my example one is going "off course" in the sense that one is spending more time on the yak shaving than is justified by the scope of the problem being solved (e.g. let's say refactoring a script that is only run once, and spending more time on the refactoring than if one had manually replicated the script's output). Maybe "too deep in the rabbit hole" would be a more illustrative phrase.