I've found that the best way to avoid punctures is to ride very, very slowly and observe the road in front of you. You won't see every possible hazard and, admittedly, my 15 minutes commute now takes a shade under 2 hours, but your chances of getting a puncture will be greatly reduced. If that doesn't work then I've also found that popping out the night before with a good quality stiff-bristled brush and giving your route a sweep really helps too.
In the end though there's a limit to what you can do.
I've found that the best way to avoid punctures is to ride very, very slowly and observe the road in front of you. You won't see every possible hazard and, admittedly, my 15 minutes commute now takes a shade under 2 hours, but your chances of getting a puncture will be greatly reduced. If that doesn't work then I've also found that popping out the night before with a good quality stiff-bristled brush and giving your route a sweep really helps too.
In the end though there's a limit to what you can do.