This is just my take, but I think the simplest answer is, if you're able to wait then you should wait until at least a year old, 2 better (and some never neuter). If there are things in your life that make it hard for you to wait (ex. your apartment complex requires it, the only way to exercise your dog is at the dog park and they require it, etc), then try to wait as long as you can but neutering your dog earlier isn't the worst thing that can happen.
The analogy that I like to give people when they ask why you should wait, is imagine if you removed the source of testosterone from an adolescent/teenage boy when they were still developing. They would probably have dramatic physical consequences. The longer you can let your dog fully mature to alter him the better.
In my situation, we wanted to wait until Bubba was two, but he was viciously attacked by a loose dog on one occasion, and had several other close encounters. It was making his and our life too difficult because we could barely leave our apartment because the leash laws in San Francisco are so relaxed there are loose dogs everywhere. We neutered him when he was just over one. Now there are many other dogs who don't face any dog aggression so I am not saying this will happen to you (it most likely won't), but I wanted to give you an example of how to weigh the pros and cons of neutering.