I have studied the principles of animation many years ago, but the link does indeed help as I dont remember a whole lot of it.
Originally I had someone else doing the animations, but they cancelled on me so I'm having to relearn a lot.
Budgies are known for their excessive pecking, but if they are walking longer distances, the head only moves side to side a bit and up and down movement from my observations seems unintentional due to terrain or to get a better view. I like to think of it like an Ergotron computer monitor arm mount. You can move it around and it stays there, but there is a maximum distance.
Anyways this is a picture to hopefully better explain what I am trying to do with the rigging.

aside from the lack of neck, this is as close of a rendition as I can create quickly of what a budgie jump looks like. It will pop up its back before lowering it and then springing in to a jump. Here I just manually set the position and rotation numbers for the head bone but it takes a long time and is quite hard to keep track of. When I move the body, it moves the head as well which I dont want in this case. I tried rigging it up in a few different ways but I always end up with something moving when I don't want it to.
Also is it bad practice to move the bone away from its parent or does anything go as long as it works?
The other option that I'm currently testing out is having the head as a separate piece and using code to position the head in the game, but it's tricky timing everything.