One of the biggest challenges posed by living in Seattle and bike commuting year round has been keeping my glasses clear of rain while riding. I have a small visor that came with my helmet, but it isn’t long enough. This visor, which can be attached/detached via velcro, is the best resolution I’ve come across so far. While my glasses still get wet when it is very windy out (or very misty), the visor drastically increases visibility on most rainy days, keeping my glasses dry.
Although it is designed for kayak helmets (primarily to keep out the sun I assume), it has served me well on my bike helmet and the velcro attachment means I can easily take it off and store it in my pannier on sunny days. Best of all it is cheap at $10 and made by NRS, a company with a strong reputation for quality gear.