There is an active developer community working on the various aspects of OpenStreetMap development. The project involves many separate components, and a diverse range of programming languages (and spoken languages!).
We have thousands of users all keen for the site to get better - and, like any open source project, not enough committed developers. So you can make a real difference. But the best way to make a difference is by writing and committing code - not by saying "what you're doing is wrong, I think you should do it this way".
- Absolutely essential - read the firstname.lastname@example.org mailing list. Major decisions are discussed there - not on this wiki, not on the OSM forum.
- Learn who to approach for what. The wiki pages about particular projects or servers will tell you who maintains/administers them, or you can ask on the mailing list.
- Be friendly.
Don't be an "Architecture Astronaut"
- We all know the database/x/y/z isn't perfect. Really.
- We would like your help.
- Telling us how to solve the problem does not help. We probably already know.
- Solving the problem does help.
- You may have extensive reasons for not solving the problem. That's fine, but that doesn't help.
If you don't understand the above, please watch this video: How Open Source Projects Survive Poisonous People (And You Can Too) Or try this list debate about Parkinsons Law: http://www.bikeshed.com/
If you still don't understand, that's fine, but we should now part ways. The best way to help openstreetmap's technical base, as a coder, is do some actual coding.
FIXME need some links to past endless mailing list debates about some of the key issues.
Afraid of walking alone trough the codebase? Join a hackfest and meet the maintainers and get help