Crossfit is a strength and conditioning program which is very popular and for a large part I like what they are doing. A lot of bodyweight exercises, kettlebells and barbell workouts and generally well rounded program is something that I practice myself.
Of course what I’m talking about here is a generalization. Not all Crossfits and their trainers are going to be equal.
Apart from a couple of small things I dislike about Crossfit, like the kipping pullup (which is ok, but if you are doing only kipping pullups and avoiding regular ones you are definitely missing out), I don’t like the fact that Crossfit program is too random and it lacks progressive training.
In case you aim to get better at something like handstand pushups, the workout of the day or going to a Crossfit gym will give you a handstand pushup workout only once in a month or so. To be honest, that’s not nearly enough training if you are looking to improve your strength and technique for that particular movement.
Variations and changing up your exercises is generally a good thing, but if you don’t have any kind of a structured way to work toward your goals, you won’t be able to make much progress. Whatever your goal is (handstand, muscle up, freestanding handstand pushup, etc), you need to work on those particular movements on a regular basis.
In case you want to continue with Crossfit workouts, what you can do is practice specific movements for your goals before Crossfit exercises and work on a skill, but make sure to keep them light and easy.
In the upcoming No BS Strength secrets workshop one of the coaches, Travis Stoetzel competes in the Crossfit games. But he doesn’t just do WOD’s daily. Instead he follows a program to get himself better and what he needs to do, and throws in more “metabolic conditioning” workouts on top of that.