Developing one step forward and two steps back.

I think most developers will probably relate with this frustration.

I don't know how many times I've gone to add some cool new feature to an application only to find that it requires an update to some dependent project or another. Almost without fail such an update requires further updates and somewhere in the chain is one or more breaking changes. The result always seems to be that my "quick" add of the cool feature spirals out of control and ends up costing me hours of frustration as I try to get my project back to the state I started in.