Those are excellent points Egg!

Many times when I first started coding AS I would look back at a previous project, scratch my head, and wonder what I was thinking. Either I couldn't remember, or I thought that was just a really complicated way to code and didn't know why I chose that method. I've learned the hard way to comment everything, and then keep it as simple as possible. Which leads to a good point, Availor, once you get your code working, comment it well. That way in the future, as Egg mentions, you'll be able to understand what you were pulling together and why.

I like your analogy of knitting spaggetti! I often go through that when a client wants me to modify someone elses coding, particularly when the original developer didn't comment.