Adojrts advice is great!
What is very important, in every day walks, is teaching your dog that they are not going ANYWHERE if that leash is taut. Learn to stop dead in your tracks, every single time the leash is tight, even for a second. Call him back, interact with him, encourage him to get into the heel position and reward him with treats/praise/petting each time he goes to your side. He will learn that your left side is a wonderful place to be.
I use "heel" for fun (practicing in intervals), busy streets, heavy distractions, or crowded areas. For normal walks, they are allowed to sniff around and check out the world, as long as the leash is loose. When you are first teaching a heel, you ARE going to need to reinforce it frequently (with praise/treats, not by endlessly repeating the command, as doing so devalues the command itself), especially around various distractions. Even if he can heel for a minute straight in the backyard without reinforcement, he might only be able to heel for a second before losing interest when out in the neighborhood. Keep him interested and keep heeling exciting. Turn left, right, slow down, speed up, turn around, and act like the most interesting, happy person in the world.
Note: A dog pulling has nothing to do with alpha theories and everything to do with a lack of training/reinforcement/conditioning. IF, in fact, a dog walking in front of you means he's trying to be the alpha... subordinate wolves would never, ever walk in front of an alpha wolf... which is obviously not the case. Not that wolves are dogs, or people are dogs, for that matter!