The Jakarta Site - Contributing
2011/12/21 - Jakarta has been retired.
For more information, please explore the
Attic
Support
License
Mailing Lists
Jakarta Wiki
Ex-Jakarta
Ant
Avalon
BCEL
BSF
Commons
DB
Excalibur
Gump
HiveMind
HttpComponents
James
JCS
JMeter
Logging
Lucene
Maven
POI
Portals
Struts
Taglibs
Tapestry
Tomcat
Turbine
Velocity
Watchdog
Contributing
This was originally posted on the Tomcat DEV list,
but applies equally well to any Jakarta subproject.
Michael Percy wrote:
> I believe there would be (or at least SHOULD be! :) many
> more contributors to these projects (Tomcat), but maybe
> some of us are intimidated by the level of apparent
> expertise required for this stuff. (Then again, I know
> we have some damn good people on these lists.) I am
> curious, is this the case? Have you all been writing
> java apps for years and are steeped in C++ and OOP for
> the last decade? Do you have the servlet spec pasted on
> your wall?
Michael,
In my particular case the servlet spec is pasted on the inside of my eyeballs
:-) But I'm kind of a wierd case in that respect, because I'm on the JSR-053
expert group that worked on the new specs (servlet 2.3 / JSP 1.2).
Personally, I've been a software developer/designer/architect in some fashion or
another for more years (and in more languages) than I care to admit. But I got
involved in the Apache JServ project (predecessor to Tomcat) a few years ago
when I needed a cheap server solution for an Internet-based application that I
needed to build. Like everyone, I was grumbling about how long it took for
JServ to get to final release (over a year from 0.9 to 1.0), until my son -- who
likes PHP but I love him anyway :-) -- said "Dad, you know Java, get in there
and help them finish it!". So I did.
I wouldn't worry to much about expertise (although clearly Java is a must, and
familiarty with the specifications that Tomcat implements -- servlet, JSP, HTTP,
etc. -- is vital on this particular project). The ways that people get involved
in open source are pretty varied, but a common course might go something like
this:
You see something that you think should be
added, or that doesn't seem to work quite right
You investigate the existing code, becoming more
familiar with it along the way
You might ask a "what would you think if we did this?"
type question on the developer list
You contribute to the discussion of these ideas
(yours and others) - partly to gain knowledge but also
partly to become known to the community
At some point, you propose a patch, or a new chunk
of code that gets accepted into the code base (the
detailed rules for Tomcat are on the Jakarta web site)
Iterate the above a few times, perhaps looking at bigger
and bigger chunks of code as you gain more understanding
At some point, when it is evident that you're not a bozo :-),
you can get nominated for committer status and voted on
by the developer community, and then be able to post the
changes directly yourself.
> How can I, a perl hacker and aspiring java coder get
> involved? (How do you guys know what to do?) At what
> point would I be considered to be "good enough" to
> really contribute some code? Server-side java simply
> rocks, and if I could help make it a more viable
> option for everyone (including myself and my company)
> then I would love to do it.
It all starts by becoming familiar enough with the current code base to start
understanding it. In most open source projects there is never enough
architectural documentation, so this often involves asking "how does this work"
type questions on the developer list. Don't feel bad about that -- NONE of us
knew anything about Tomcat internals before we started working on it :-)
> Hope this isn't a totally inane question, but it has
> been on my mind for a couple weeks. Just wondering...
Not at all inane -- I hope the above thoughts help.
> Thanks,
> Mike
Craig
03 Nov 2000
About Jakarta
Welcome
News
Contacting Us
Security
Charter
Jakarta Guidelines
About Apache
ASF Website
Sponsors of the ASF
Sponsorship program
How The ASF Works
Developer Resources
Get Involved
Retired Subprojects
Alexandria
Agila
Cactus
ECS
java.apache.org
ORO
Regexp
Slide
Taglibs
Apache Jakarta, Jakarta, Apache, the Apache feather logo are trademarks of The Apache Software Foundation.
All other marks mentioned may be trademarks or registered trademarks of their respective owners.
Copyright © 1999-2011, The Apache
Software Foundation.