2011/12/21 - Jakarta has been retired.

For more information, please explore the Attic.

Support

Ex-Jakarta

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

About Apache

Retired Subprojects