The best way to contribute to the Apache Software Foundation (ASF) is to get involved with one of our many Apache project communities. The best way to ask general questions about community involvement is to read about Community Development at Apache.
Remember that the ASF is made up of over 140 different projects, with many new project submissions (or podlings) coming into the Apache Incubator every year. So no matter what kinds of technology or software you use, we most likely have an Apache project that you'll be interested in.
Use Apache products and give us feedback
Using Apache products, asking (and sometimes answering) questions, reporting bugs and making feature requests are critical parts of all Apache project community. User feedback helps drive our projects and the technologies behind them.
Contribute back to the community
Beyond simple user activities, it's great to see users becoming contributors by helping with the development of Apache projects. This can mean getting involved with the discussions on the development mailing lists, answering other users' questions, providing patches for bugfixes or features, and helping to improve the documentation.
Become a committer
We love to see contributors showing the commitment that means we can make you a committer and invite you join in to shape the future of a project.
Apache is a meritocracy. That is, once someone has shown sufficient sustained committment to a project by helping out and contributing work to the project (and the ASF) may be voted in by the project as a committer.
How does one show committment?
Get involved and contribute via the user and developer mail lists, Wiki and forums (if any), provide patches for documentation, work on the issue tracker or submit code patches. Answering other users' questions is a great way to get started, or suggesting patches or improvements to Apache project websites.
If your work shows merit, the PMC for the project may hold a vote to invite you to become a committer.
Note that becoming a committer is not just about submitting some patches; it's also about helping out on the development and user discussion lists, helping with documentation and the issue tracker, and showing long-term interest.
For more reading on how to get involved and the open source mentality, see:
Contributing -- Craig R. McClanahan
Understanding Open Source -- Cameron Riley
Producing Open Source Software -- Karl Fogel