Well, I am not that good at getting all this flames ( and to be honest I'm
not used to get the "thanks" that I got lately - mostly in private mail -
it looks like a very different world, and an wonderful Christmas gift for
me )

In any case, I'll try to stay away from further arguments - I know now
that I'm doing the right thing, and until I finish the development and
what I started there is no point in endless discussions.

I'm very close, and if I stay out of mail I'll probably be ready to the
first milestone in early January. When it'll be ready I'll make the
proposal and then you can vote whatever you feel, based on the quality of 
the code or your private interests.

As long as there is an open development branch in jakarta-tomcat tree and
I am a commiter I'll accept any critics for code that I write, but I don't
think Pier or Jon have any authority or right to tell me what to do or
to not write code, for any reason. This is open source development and as
long as they don't prove that my code is bad, I'll keep coding. If they
don't like it - I'm sure they can ask for a vote to remove my account 
( or just do it ).

I think I did a decent job during the tomcat3.2 development ( not
perfect, of course, because I'm not perfect either ) - and enough users
and fellow developers feel I'm still doing a good job on 3.3 - so the
argument of "community united against 3.3 " or "that's the community
decision" doesn't seem to hold water.

As for:
> Tomcat 3.2 has *only* happened because Tomcat 4.0 wasn't ready.

Well, thank you for letting it happen ( and thanks for letting us
doing development for a year and  so without too much s**t ). 

As for resources - remember that in open source you must go get them, and
it's quite a bit of competition for smart people. If tomcat 3.x is able to
get smart people involved you should say thanks, and not to tell them
they're stupid. 

And as an open source developer you should remember that code lives and
dies on it's own quality and the quality of the people who contribute to
it. 

> Remember the history of Tomcat 4.0 and the fact that if Sun didn't donate a
> bunch of cruft software, we would have spent the time working on JServ 2.0

Yes, a bunch of cruft software, with a good design and some great ideas. 

Tomcat3.0 had pretty bad code, 3.1 was stable and usable ( IMHO ), 3.2 is
faster and a bit cleaner - not too bad for a "cruft" software ( while 4.0 
is still, after a year, "the next big thing" ).

That's probably another proof that in software, the design is what matters
the most. QED.

As of JServ 2.0 - it has in common with JServ 1.0 the same as Tomcat4.0
has with Tomcat 3.x - the name. If you remember I spent some time on the
jserv list trying to improve the design, and I also spent lots of time
after Catalina was announced pointing problems with the design - I don't
think you have too many contributors who spent so much time on it. I gave
up on Jserv2.0, and I gave up on Catalina - either I can't present my
ideas or nobody was listening. 

( you can check the archives - like the endless flame-war about how
un-important is the web server or how bad is to do in-process java )


> which is now what Tomcat 4.0 is. The fact of the matter is that because we
> had to deal with 3.x and support improving it that delayed the development
> of 4.0 to not being ready until now.

"we had to deal with 3.x " ???? "we had to support improving it" ????
Damn, I thought we are still individuals - and most of your mail talks
about "we".

Are you talking for ASF ? For your company ? For you and your friends ? Or
for us, the tomcat comunity ? 


And one more thing - it's very important for me to 'discharge' myself from
having tomcat 3.x as my "baby":

- the original design is done by a certain James ( AFAIK ). And it's damn
good, better than any other container I know. 

- most of the server adapter is done by Pier, Stefanno, Jon - the
mod_jserv code - and Gal - the new mod_jk, based on mod_jserv. And there
are very good pieces of code - yes, not too much comments, but still great
code.

- most of the bug fixes were done by countless contributors, and 
most of the commits are either Larry or Nacho. Probably they should feel
the most that tomcat3 is their baby, as they spent lots of time caring for
it ( while I was just playing with it ).

- Logging - Alex, based on initial ideas from Anil ( both had many other
contributions ). I didn't liked it initially, but it is a very good
contribution with some great ideas in it.

- sandbox - Glenn. That's the area I felt I want to contribute the most,
but Glenn did it faster and better. 

- SSL adapter - based on Harish's ideas  

- Interceptor architecture ( the main architectural thing I added to
tomcat ) - is copied from Apache, I don't know who is the original author
but unfortunately it's not my child.

- most of the refactoring is again based on Apache design ( with a lot of
inspiration from Apache2.0 - take a look at the MPM modules, etc )

- The TCP, thread pools - Gal again

What have I done to tomcat 3.x ? Well, far less:

- spent lots of time on email, fighting stupid wars like this one 

- huge amounts of time moving code around so it's easier to read, and
trying to put in value the inherent design features. I don't know if you
can count this as real work :-)

- same as previous item - again and again and again.

- lots of benchmarks and tests trying to figure out ways to make
tomcat faster and cleaner at the same time. That went back into moving
code around and refactoring.

Yes, I spent far less time on bugs than either Larry or Nacho - and I'm
sorry for that, but I did that on belief that it's better to have a clean
code that was a good implementation of the design, and then start fixing
the bugs ( that will remain - most of the time refactoring is cleaning
more bugs in a better way that just debugging it one at a time ).

Pier - I'm sorry if you believe I lied to you, but based on my knowledge
what I'm doing is not changing the design. ( and this is not a kind of
"oral s.x is not s.x" - I honestly believe the refactoring I've done is
preserving the design and patterns ). As for not contribution to 3.2.x -
this is for the same reason I didn't worked on 3.1.x - I did the best I
could in the development of 3.2, and I had a huge amount of work to do (
understanding xalan 1 and 2 is not easy thing to do, and I had some
impossible deadlines ). The little free time I had went into 3.3 - as I
think most of the ideas are too big for small dot.dot releases. 


I still believe that we should all work together and reuse each other's
work - and mod_jk and mod_webapp may show us how easy this is. If we are
able to merge them into one module, and use it in both tomcat 3.x and
tomcat4 - we will make a huge step forward, and that may be followed by
more steps. 

We are talking about modules and objects  - and if anyone cares to look at
the code, tomcat3.x goes a long way making sure most of the code is
independent of the architecture ( be it 3.x-interceptor or 4.x valve ).
If the code we are writing is not reusable - it is bad code anyway,
regardless if you call it 4.x or 3.x.  

Remy - I'm sure you can make Catalina faster than tomcat3.x, but it would
be more fun to work togheter and make both tomcat3 and catalina faster
than anything else. 

Merry Christmas to all of you, and thanks for the wonderful gifts,
Costin






Reply via email to