On a quick side note: I (and my computer) managed to survive a second try at yoga.
Now on to why you started reading this post in the first place. You were just trying to know how I was going to relate those two topics! These topics may seem to be unrelated but I have come up with a quick little explanation.
During software engineering process you often toss out more code than you finally use in the end. The tossing out can be for various reasons: found a better way, changed the design of other components, not needing the component, redesign, it only was needed once and was really short, combining multiple similar components, etc. I think I remember something about tossing out 70% of the overall code written for a project. Anyway, throwing away and starting over is often a requirement or a good thing.
Knitting has frogging. (No I am not making that term up my non-knitting friends. Need proof: read this). Frogging involves completely starting over or preparing the yarn for a new project. Like with software engineering, frogging happens for a bunch of reasons: mistakes, dropped stitches, deciding that the project does not work with the yarn/needle size, you just don't like the project, need to make the item bigger or smaller, etc.
Summary: Both are hard to do, but it is often for the best.