This is an excellent approach. More generally, verbalizing and discussing your process passes it through your language centers, and forces you to get specific. Your ideas may be much more vague than you realize, or perhaps you could use a 'fresh' perspective by thinking about them in verbal terms.
This has helped me in many contexts, including software development and strategy gaming.
One good aspect of using a human as rubber duck is that you help share knowledge - plus the human could actually have some ideas based on your own problems too.
This has helped me in many contexts, including software development and strategy gaming.