Open source is driven by people scratching their own itch
Someone has an itch they want to scratch, the need for a tool that they don't see being met in available software, a desire to create something just because they can, or a wish to improve on something that already exists.
So you get involved. You design. You code to the best of your ability. Then you announce the birth of your new baby. And make no mistake, it may not have a smile or blood coursing through a heart, but it is a child of your creativity.
And the people come to look at your baby. They ooh and they aah. They say It works or That is cool. They use it.
And they use it in ways you never thought of. You hear about a bug here. Then another there. You slowly realize that your baby belongs to the public as well as to you. And you start to code changes to fix the bugs they find. You add features they find indispensable. If we're lucky, you write documentation that a normal person can understand.
Slowly your software, the intellectual child of your heart, grows up. One day you wake up to find that, much like a human child, it was shaped as much by the social world as it was by your private wishes. And it's a better, more rounded entity because of it.