Joe Schaefer wrote:

Paul A Houle <[EMAIL PROTECTED]> writes:

IMO market-share doesn't relate to project activity.  The
word I most associate with apache development is empowerment;
cheifly to empower users to build better web stuff.  Users that
need to tweak the software in order to make that happen become
committers, who are further empowered to make commits, and eventually
make decisions about the project as a whole when they join the pmc.

   Market share does matter.  It's a function of a product having a niche.

A project that's thinking about market share is thinking about end users. A project that isn't thinking about end users is a project of people working on something for their own amusement.

What I personally enjoy seeing on [EMAIL PROTECTED] is "piling on", where
one person implements something, then two or three other people
(not always committers) jump on the bandwagon and take it in a better
direction.  It's good to see more of that happening lately.

Yeah, soon httpd will have a second- or third-rate implementation of every protocol under the sun.

mod_ftp will underperform mainstream ftp servers so long as its running under prefork. Similarly, cacheing proxy servers will outperform squid.

I don't see end users clamoring for mod_ftp, or mod_snmpd. What's the point of writing a squid replacement unless you can actually make something better?

According to the statistics, most users are content with 1.3. But
that is a very short-sighted way to measure progress, because the
situation will change as the *nix distros move away from 1.3.
And it's got nothing to do with how content users are with 1.3, but with how, after 54 revisions, Apache has finally produced a server that doesn't have serious problems running in production environments.

Exploring new protocols within httpd will almost certainly will make the internal architecture better, even if none of those modules you mention are distributed with httpd. IMO mod_smtpd will be a fine example of that, because unlike httpd, almost all of the real action will be on the input_filter side (which IMO hasn't received the same amount of polish that the output_filter side has).

A server framework that can implement any protocol under the sun might be a nice PhD thesis, but what does it do for end users?

I don't see excellence coming from "swiss army knife" frameworks that do everything, but from systems that are developed from a whole system viewpoint, that have a good amount of codesign between layers of the system -- if you build a system that lets you plug in arbitrary junk, you're going to get arbitrary performance and reliability.

(I think of the old days of Java Applet programming, where people who were just learning OO techniques were writing great complicated classes that were trying to be infinitely reusable, and it took them a long time to realize that people were going to have download every byte of the class files they were generating... But it's not just the old "bloat" argument, but the burden of maintaining superfluous code.)

To sum it up:

better server architecture => better modules => more toys for users => more interest in the 2.x internals => more patches => more activity
=> better server architecture ...
Sure, I appreciate mod_ssl and mod_dav in Apache 2 -- but the reason why so many people have stuck with 1.3 for so long as that 2.0 has had very little to offer end users. A few people thought it would be great to have pluggable MPM's, and a few other people introduced half-baked systems such as mod_cache and filters. You know a tree by its fruit, and the fruit I care about is performance and reliability. Apache 2.0.54 is a great server, but the fact that it took 54 revisions to get there isn't a good indication about the design and development process.

Were Apache development targeting real problems that real users have, I think things would be quite different. A big part of the problem is that the Apache project has settled into a local equilibrium -- this explains the paradox of a product that obviously satisfies end user's needs well (no competition has emerged) but has a moribund development process. Any real innovation in the web server space will need to be disruptive, to break things. Apache, as we know it, just can't do that.

Reply via email to