I'm not a fan of the shaved head look, so I always cut my own hair with scissors. There is a basic technique to doing this properly, but once you learn it, you can easily give yourself a quality haircut. You will need an extra mirror for the back, or get a friend to help you out.
You will need sharp scissors, comb, mirror.
It's very important to do this with wet hair. Cutting your hair dry will leave random stray hairs hanging everywhere.
First, you want to look at your hair and see how it falls. Most people will have a cowlick in the back, with the rest of the hair laying/leaning away from this point in all directions. You want to start cutting in the back near the cowlick so that as you cut, You get a shingled, layering effect so that it looks even and there are no gaps.
Basically, clasp the scissors in your dominant hand. With your other hand, loosely pinch some hair between the index and middle fingers. The length of hair that you want to take off should be what is ABOVE the fingers. You don't want to cut the hair below your fingers. Start moving forward as you go, making sure that you take off an even amount each time, and that the hair that you are cutting is uncut hair, and not the patch that you previously cut. ( combing your hair straight up while you cut is a good way to check for uneven spots)
Use that same technique all around your head, and you are good.