Will Open Source Lose the Battle for the Web? 562
snotty writes "A well written article by Ganesh Prasad over at linuxtoday arguing that the shift towards web services has reduced the attractiveness of the current generation of Open Source web products. He talks about the market share decrease in Apache. Also mentions how .NET, Microsoft, Sun, Java, and Open Source Software fit into the picture." I think that the decrease in Apache's share is a red herring, but the bigger picture of web services is a troubling one.
Two dubious points (Score:3, Insightful)
Second, and more importantly, since when has feeding the fires of corporate IS departments been the prime motivator of free software development? It's a pity so many otherwise intelligent people have swallowed this poison pill of believing that profits are the sole metric of human accomplishment. What is important is this: How many people have a choice that they would not otherwise have, at work or, better still, in their private lives? How many people have we helped ?
That's all that matters in the Big Picture. Everything else is just ego games with twisted little men in suits who fancy themselves alpha males because they have a bigger number in the bank database than you do.
Re:Two dubious points (Score:2)
:)
Seriously, i notice that all the time. And what's worse, you will see people arguing that such-and-such is the "smart" thing to do, and what they really mean is that it's what will make you the most money. It's one thing to say that money is what matters, but quite another to denote intelligence itself to the level of hoarding.
Giving up (Score:2)
Search for IIS: over a thousand jobs. Search for Apache: 130 jobs.
130 jobs at the biggest job website on the web.
I give up.
I really should have started the company (Score:3, Interesting)
Right now, there are no options.
What we need is the ability to develop these applications in a scalable and modular way with the components of our choice. I was planning on using a mod_perl-based system as the core framework, but with a set of development tools for any language. Presumably when the Web application market matures, we'll find that language and platform interoperability is still key and C is still the only language that is, itself, language and platform neutral. But, that's only my guess.
What I know is that Microsoft is winning this race because it has no competition. Does that matter? Probably not. Open source efforts almost always get started late. The advantages of coming in after MS screws it up could be large.
I think that MS is missing one large item here (one they always ignore): the developer.
I've worked with the likes of Vignette, and I know that building applications there is a mistake. I've worked with low-level tools like mod_perl, and while I think that mod_perl is fundamentally the best technology for talking to a Web server, it's also very poor for developing applications. Why don't I have a debugger for building Web applications?
Ok, now that I've pissed everyone off or conviced you all I'm a loony, let me really jump off the deep end with a few assertions about the coming age of Web application development:
1. Using HTTP and (may all the little gods defend us) XML to shuttle data between application components is so fundamentally brain-dead, I'm suprised anyone's even taking it seriously. Let's just take a step back and remember that performance and complexity are the reasons that most people didn't like CORBA, and CORBA will soon be made to look light-weight by comparison.
2. You will soon begin to see the dawn of a scary phenomenon: shrink-wrapped, store-shelf Web applications.... Yep. Scary (and probably wrong, but that never stopped anyone).
3. Java is never going to die, but it's about to start entering the COBOL phase. Because it's a poor language? No, in fact it's a pretty cool language. No, Java will begin to atrophy because we've reached a point where the strongest advocates have begun to see projects get mired in the Java platform and its isolation from the rest of the world. The only people left touting Java will be the people who are saying "look at the giant, insulated, institutional system we built" or "look at the tiny self-contained widget frobnitzer" I built, and the next generation of developers are going to get wise to the common thread in those two statements.
Please understand that this rant is the result of 10 years of watching the Internet come to terms with the lack of a HOSTS.TXT. I'm not just jumping into this. I may be wrong in several places, but you should at least have considered these things before you jump of Microsoft's OR open source's band-wagons.
Re:I really should have started the company (Score:2)
As far as the HUH? More specifically I was trying to figure out why you had misunderstood Microsoft's
SOAP isn't complex, certainly not compared to COM or CORBA. That's one of the great things about it, it's relative simplicity.
As far as being slow, that's a debatable question. It depends on your bandwidth available, I suppose. That seems to be your point. No more slow than using http to display web pages, and I see no reason why it couldn't take advantage of compression like mod_gzip across the http stream.
Possibly more Win2k Boxen? (Score:2)
Some remarks (Score:2)
B: Why the author did not note that M$ does also suffers of this? In Mars or April BigSoft did also lost a large share of Web servers. And it also recovered.
C: Web apps? Does anyone gets the idea of what is this and what will lead to? I don't wanna say that Web apps are Bad Thing (TM). But I believe there is a lot of whoopla about this. Too much indeed. Some people also predicted the dead of Unix because of the lack of "normal" GUIs and that now we would all look the Web through Internet Explorer.
D: There is a crisis going on. Has anybody noted it? And it is natural that things will slow down. And this seems to concern volunteer work doesn't it? Well people need to care to eat...
E: M$=The World in 20 years? Two years ago I would agree. Now, I'm sure that even if they get near it, then they will blow it up. They made too much air in these XPs
The OSS Community Should Embrace Java (Score:2, Insightful)
My feeling is that a dedicated group of Java fans needs to get involved in Mono, and promote Java as a first class citizen alongside C#. Heck, the open source community already has a Java compiler [gnu.org] that's miles ahead of the Mono C#/CLR combo. It shipped as part of gcc 3.0.
While Java was not submitted to ECMA, Sun has stated that anyone is free to implement it based on the open specification as long as the "Java" brand isn't mentioned. This is quite similar to the Mesa 3D library vis a vis OpenGL, and Mesa has been quite successful. Further, Sun and IBM have both provided high quality VMs and development kits for Linux.
Java (despite all of Microsoft's spin to the contrary) is still growing in popularity, and is the dominant technology in several important areas. Over 100 million Java enabled phones should ship this year, for instance. Java is also dominant in the application server arena. Sun is still investing heavily in desktop Java (most of the 1.4 release is aimed at an improved client side experience), and MacOS X proves that Java on the client can be very nice. In fact, another area that could really use work is simply better integrating Swing applications into the Gnome/Ximian desktop.
As a final point, Sun has stated that it has no problem open sourcing Java at some point...when it is clear that Microsoft won't co-opt the platform with it's famous 'embrace and extend' tactics. C# is the latest (weak) attempt to do so. The best thing you can do to prevent .NET (.NOT!) from taking over e-commerce is to learn Java, and leverage the tremendous amount of high quality Java code out there to write great cross-platform web applications.
Extra credit for client side development...check out the Grand Canyon Demo [sun.com] for inspiration...it is pretty awesome!
186,282 mi/s...not just a good idea, its the law!
Mod this article -1, Redundant (Score:2, Insightful)
I'm just getting tired of hearing so many 'experts' predict the end of something and then watch it prosper for years to come..
Face it people, Software and Stock analysts are the same as weathermen, except less dependable.. The wind shifts and they scream "its a hurricane", well i'll be one to stay calm until my shed blows away, then it will be time to worry...
I don't know... .NET is actually a cool platform (Score:2, Informative)
I'm a web developer, so it's my job to stay up on the newest technologies. I recently picked up "Professional ASP.NET" by Wrox, and, about 650 pages in, I have come to the conclusion that ASP.NET is one of the most fuctional, flexible web platform I have ever seen.
Sure, PHP is just dandy... But ASP.NET adds on so much functionality, it's scary. Sure, that may be one of the reasons to shun it from a certain viewpoint--letting a MS platform have so much control--but as a developer, ASP.NET is a dream come true.
I know this goes against the general
Re:I don't know... .NET is actually a cool platfor (Score:2, Informative)
No flame intended. But.
Microsoft's new "technologies" (which I put in quotes because what they call a "technology" is usually just a new implementation of features) always look cool in demos and books. You don't find out about the hidden "features" until you actually develop a reasonably large project.
I'll give one tiny example since it's on my mind right now. Microsoft's Component Object Model (COM) provides a function CoCreateInstanceEx, which takes a parameter indicating the DNS name or IP address of the remote host where you want a new COM object to be instantiated. Neato! It's like RPC but with type safety! As long as the remote host is configured to let your host do so, you can instantiate and use a DCOM object anywhere on the Internet or your private network. Not really a new idea, strictly speaking, but nice nonetheless.
But there's an annoying catch. You can't specify your own hostname or IP address. If you want to instantiate a COM object on your own host, you either have to pass a NULL to CoCreateInstanceEx or just call CoCreateInstance (without the "Ex") instead.
It's no big deal, but it breaks perfectly reasonable code for no reason. Gratuitous non-orthogonality.
I love Linux and other free software, and I'm a vocal Microsoft critic, but that doesn't mean I write this stuff out of ignorance. I've been programming in Windows since the 3.0 release, and have recently been spending probably about two-thirds of my work time programming various Win32 projects, from end-user database applications with CA-Visual Objects [underflap.com] (anybody even heard of that?) to the C++ middle tier of a couple of 3-tier client/server systems. I don't hate the stuff, I just have plenty of practical knowledge of how it sucks.
COM (and DCOM--"Distributed COM") is littered with barely-documented or undocumented details like these. Like the way strongly-typed parameters can be passed by reference across process boundaries--just not from Visual Basic clients, even though COM is claimed to be language-neutral.
Microsoft development tools, I've found, generally stop doing what you expect the moment "gee-whiz!" settles into "can you make it do this?" When you read Microsoft docs or third-party books on a new "technology" it pays to be skeptical whenever the CS student inside your head says, "That's amazing! How can they do that?"
I guess I'm saying two things:
If you write a few pretty decent-sized .NET applications and they work out as well as expected, super. But until then, I'd withhold judgement.
Read the Entire Article. (Score:2, Informative)
ive been thinking this for a long time now... (Score:2)
OSS has yet to produce something that competes with the complexity and webservices potential like .net and the like.
Heck, even for people using java on the backend (which is where java seems to be finding itself more and more these days) windows the choice because java simply runs better on windows than linux.
Huh? (Score:4, Insightful)
Let's get real.
Re:Huh? (Score:5, Insightful)
Wake up... complacency is Microsoft's best friend. Just assume we're winning already and suddenly we'll find they've stolen the goalposts and the spectators, moved to the next field over, built a stadium & are making millions from the pay-per-view market. Zealotry, and a blind preference for whatever version of the story puts OSS/Free software in the best light, gets us nowhere.
Re:Huh? (Score:4, Interesting)
Tomcat (Score:4, Insightful)
The percentage of IIS versus Apache is soon becoming irrelevant. What is important is the percentage of Servlet/JSP versus .NET/ASP sites. Which is kind of hard (impossible) to measure using Netcraft by the way.
One of the most succesful Servlet engines now is Tomcat, which is also open source coming from the Apache Jakarta project. I don't see any indication at the moment that the number of Servlet/JSP/J2EE sites is dropping in favour of ASP or .NET. No reason to worry yet.
TCO vs. TCGFW (Score:2)
Open Source advocates scoff at Microsoft's claims to lower TCO. It flies in the face of our experience that Microsoft products are a bitch to keep running and Open Source products just hum along with very little support effort.
But let's face it -- most of us didn't initially choose Open Source software because of TCO. We chose it because we had a need and the open source alternative allowed us to address it without the bother of getting permission to buy the commercial products. Low TCO was a pleasant surprise. This leads us to understand the other benefits of Open Source and perhaps eventally Free Software.
People who do have the power to buy things don't follow this adoption path. They do worry about TCO but not having a crystal ball the have to guesstimate TCO by some substitute metric.
The most obvious way of doing this for yourself, if you are not a profound technical thinker, is to estimate TCO by TCGFW: the Total Cost of Getting your Feet Wet. If there's one area that Microsoft has a tremendous lead over Open Source it is in this area.
Having installed Tomcat myself in order to evaluate a servlet based product, I don't think it is that hard to get working. But you do run into pitfalls with mysterious configuration files. A few hours of noodling over documentation and fooling around with settings and everything was running. In a production environment this kind of initial difficulty matters not at all -- it will all become as natural as breating I suppose. But in an evaluation environment it can make all the difference.
You can bet that when
Re:Tomcat (Score:5, Informative)
Allow me to humbly disagree. There are things that certain technologies can do and certain things they cannot. In this world, no one technology is ever 'best' or 'worst', they are either well-suited for the job or they are not.
In my example, I work for a company which was always a Microsoft shop (Microsoft partner, and sells tons of MS stuff). Guess what - our particular eBusiness solution, which was developed using the latest/greatest MS solution wasn't up to snuff. We couldn't get the flexibility out of the application we needed (even a redesign wouldn't work - VB had too many limitations), IIS either crashes on a regular basis or needs constant hotfixes to keep it secure, and SQL Server shuts itself off whenever it feels like it. And we can blame the 'expert' consultant who set the thing up initially, took off, and left me to try to support the damned mess that was left.
Enter Java. Using Tomcat as the Servlet engine, and the Velocity template engine, we have nearly completed rewriting our entire eBusiness web application, and this new model demonstrates the ability to customize both the look and feel (a custom framework using Velocity which can load customized templates per customer), and a Servlet framework which can automagically load custom code on a per-customer basis. This code is simply written to extend previous code. Both are loaded on the fly (not necessarily compiled into the main application). Speed/ease of development? We are adding new customizations and features in a day or two when they used to take a week or two to complete when using VB/ASP and COM. In other words, by doing the complete rewrite we have already saved significant amount of developer time, after that initial investment.
We are using this new app in production now, and there have been no problems, other than SQL Server still shutting itself down. This will change within the next two months, as we are moving our database to something more robust which we already use for our backend.
Still being a MS-shop, I was shocked to find out that the president of our company decided to let me go ahead and use what I want on our servers. He was getting tired of the constant security worries and instability of the thing. And yes, we are going to switch to Linux/Apache as soon as we eliminate our final few dependencies on MS-specific code.
java and linux. (Score:2)
Re:Tomcat (Score:3, Interesting)
Sounds like you got to clean up a mess left by someone else and you persuaded your company to use the tools you are most comfortable using. I just don't think its fair in this case to blame MS for things that are the fault of the company and the consultant that it hired.
You will need to get on the Apache mailing list and regularly apply patches to keep your application secure. Thats not something unique to IIS. And what do you plan on replacing SQL Server with, Postgres? Plan on rolling your own full text indexing, replication, and transactions, features I'm sure you already use being an eBusiness company and all.
So in fairness, the technology that is "well-suited for the job" is the one you are most skilled at, and doesn't really have to do with the relative strengths and/or weaknesses of either Apache or IIS. Right?
Although I'm glad you got your company to switch. I'm thinking of doing the same thing, but its primarily due to licensing and $$$.
Re:Tomcat (Score:2)
Agreed. At the same time, more so than the actual choice, I would blame the consultant who installed a database for which we don't have a real DBA (in house). We have had a number of 'experts' look at it, but to no avail. There's probably nothing wrong with the server hardware itself, from what we could tell.
Sounds like you got to clean up a mess left by someone else and you persuaded your company to use the tools you are most comfortable using. I just don't think its fair in this case to blame MS for things that are the fault of the company and the consultant that it hired.
Actually, during the course of my employment I was QUITE comfortable using the MS stuff. I was finding Java scary, mostly because of the scope of how much rewriting had to be done. I chose the platform best-suited. While researching, I did actually consider sticking with ASP/COM, and just doing a rewrite with that. My research (which I won't go into), just showed that Java was going to give me a lot more for the effort.
You will need to get on the Apache mailing list and regularly apply patches to keep your application secure. Thats not something unique to IIS.
I will never argue that. I will argue, however, that the 'reboot and pray' method of upgrading isn't acceptable. I can upgrade an Apache installation without bringing the box down, and have done so before, and worrying that it might not come back up.
And what do you plan on replacing SQL Server with, Postgres? Plan on rolling your own full text indexing, replication, and transactions, features I'm sure you already use being an eBusiness company and all.
You sound skeptical. Ok - we are not an eBusiness company. I work in the eBusiness department of a company which has been in existence for 20 years. Mind you, I never mentioned that the database is necessarily going to reside on Linux (though the front-end might). We have a lot of Informix expertise on our end, and are reviewing what needs to be done to move to Informix (possibly/probably on SCO), which will have the added benefit of having to only administer a single db platform. And of course there's the access to the legacy data and apps which is a nice bonus.
So in fairness, the technology that is "well-suited for the job" is the one you are most skilled at, and doesn't really have to do with the relative strengths and/or weaknesses of either Apache or IIS. Right?
Probably not. I have less experience with Apache than I do with IIS, and before we started with Java, my VB/COM experience was more developed. We did have unique requirements, however. I cannot really go into them (usual NDA-type stuff), but let's just say that we have *so* much customization with our tools that it would have been impossible to keep sorted out using VB and COM. Again, there were other tools that we considered, but when reviewing our requirements Java came out on top for everything.
Although I'm glad you got your company to switch. I'm thinking of doing the same thing, but its primarily due to licensing and $$$.
Licensing is a bitch, but we're not getting away from that with our choices anyway. Our database will be Informix, and we will definitely be maintaining support contracts for the OS platform we decide on. The money is there. We had people willing to deal with whatever platform was decided as the best one, per our requirements. Our choice has been made for Java, and we're pretty much decided on the database. The OS for the front-end servers is still to be tested.
Also look at the overall trend (Score:4, Interesting)
With the code red worm and all the latest news about security holes in IIS/NT, I believe corporate mindshare has dwindled quite alot. I have a relative who works at FedEX(one of the huge victims of code red), and bussiness was down for close to 2 days. They are a mainly unix vased company trying to adopt to win32 but now they are having second thoughts.
Go look at the chart and you will see that apache usually wiggles up and down while it rises. Also expect the number of apache installs to rise up significantly due to some bussinesses worried about security holes of Microsoft products. However the introduction of WinXP may change this. I assume college students who are not cs-majors will form their own webpages with IIS because its there on their computers for free.
Comment removed (Score:4, Insightful)
Getting real (Score:5, Interesting)
It is real. Unfortunately, take a look at history. With only a few exceptions, every time Microsoft loses a market battle, they come back stronger, only to lose, again. Eventually they come back and win.
Then (and here's the history for you) the competition lays over and dies. Again, with only a few exceptions, (not universal, but darned close) every time Microsoft wins, they win for good.
To be more concrete and less pessimistic about it, we have to hope Open Source and Linux fit into the exception side of that. But in order to do so, one must look at exactly what Microsoft is really doing. Whenever they pick one of these battles, it tends to be 'near' their core competence. Even though they lose several times, they've got the deep pockets to keep at it. When they finally win, it is close enough to their core to quickly become part of the body, instead of an extension. Kind of growing by engulfing markets, like an amoeba.
They are generally smart enough to not attempt something too far from their core. The few times they have ventured too far are when they've been stymied. Quicken and Talisman, to name two. Incidentally, once
It's now becoming apparent that there are at least three fronts on the battle with Linux and Open Source. First is legal, with patents and the like. Next is web services, essentially negating the positive values Unix (and clones) bring to the web of mere reliability by raising the bar on base function. That way Unix no longer 'meets requirements' because it is missing thise 'essential' Win-services, no matter what the reliability. Finally, consolidate those web services with the desktop - the focus of
Perhaps this is the real tragedy of Java, because in many respects it formed the underpinnings of competition to
The real question is how the Open Source community should respond. You can quote me on this one, if we simply stand behind reliability and laugh at Microsoft's security holes and crashes, WE ARE TOAST.
We need a better response to Microsoft. IMHO part of the process will be "Walling them off in the US." There are several factors in our favor here, one of the foremost being other countries' distrust of the US-based Micro$oft Corporation. Second is the MS revenue model, putting them beyond reach of the third world, where the bulk of the growth is going to occur.
So as a US citizen, I suspect I must advocate not wasting a lot of time on unique requirements of our market. Please fight the battles in South America, in Europe, in Asia, in Australia. They are *much* more important to Linux and Open Source. I suspect in the USA it now pivots around the release of Windows XP as a litmus test. If the courts allow it to happen as-is, Microsoft will feel it a green light to do anything they want, and the genie will be back out of the bottle that has been partially constraining it for a few years, now.
Yes, Virginia, they sky IS falling. There are simply too many defunct companies who failed to heed the warning for us to fail to heed it this time.
Open source problems (Score:5, Insightful)
> community should respond. You can quote me
> on this one, if we simply stand behind
> reliability and laugh at Microsoft's security
> holes and crashes, WE ARE TOAST.
Very well spoken and I agree with your points.
I have been working as a professional unix software dev for over 15 years now.
I love unix and open source, but I feel that, in general, a lot of the open source that is out there is nowhere near prime time.
It has been very frustrating for me, as I think that there are some really smart people working in unix and open source. I think that ego and other stupid not-invented-here (TM) mentalities have REALLY hurt the unix and open source communities in general.
As much as I loathe M$, I have to give them credit for a couple of things:
-consistency of user interface
Yeah, I think skins are cool and everything,
but in the end, most users want a consistent
and useful user interface and could give
a rats ass about the GUI wars that unix has
had forever (one of my major pet peaves).
-more money and effort into producing usable
products.
I'm not trying to defend M$, because they
certainly have more than their fair share
of really evil and stupid bugs, but the
perception on the part of the user is
that of a stable, consistent and
full-featured environment and suite of
software.
-incredible marketing.
Joe User could care less about us thumbing
our noses at M$. They want consistent,
useful and good products.
Some areas that I think unix/linux/open source community requires some major work on:
-consistent user interface
The X guys REALLY dropped the ball here by
saying that they are not specifying a look
and feel.
I think that having a dozen different GUI
toolkits is not only ridiculous, it is
harmful in the end.
If a particular [dominant?] toolkit doesn't
cut the mustard, have a design and revamp
review to get things right rather than
coming up with YAFGT (Yet Another F****ng
GUI Toolkit).
-let's get some good fonts
The standard X font set is pretty bad.
-some good UI designs. I've seen some pretty awful stuff and concepts that seem to go out of their way to make themselves different from what people are used to using. Being different/inconsistent is a BAD idea in UI.
-getting coding standards higher and having better design and code review processes.
There are a lot of newbie programmers out there that contribute a lot of code that is probably not suitable to go into production software...
-It almost seems as though the open source community needs a seasoned and very smart benevolent dictator to say what is ok and what is not.
-better documentation in the unix kernel sources and header sources. Some of it is just awful.
It's not all bad; I've seen lots of wonderful, intuitive and useful tools over the years.
In the end, a lot of the code that is crap will die off anyhow; sometimes it is just a painful ride to get there...
-Ralph
Re:Open source problems (Score:2)
Open source can meet or exceed one of Microsoft's great virtues: persistence. As long as there are handful of programmers committed to Apache, it will never go away.
The great remaining advantage Microsoft has is marketing. Examples:
First impressions. They understand the value of first impressions much better than Open Source. Prime example: MS Access. It is amazing the sheer number of people who are struggling with the shortcomings of this product. But it makes certain things very easy at the outset, so that people get it in their heads that "Access is easy". When they are inevitably mired in the defects of the product, they perceive the underlying problems as hard. A consistent pattern in Open Source is to shortchange initial impressions for long term utility -- to reduce TCO. Which is fine but people judge TCO by their first impressions.
Hype: Now exactly what is it the ".net" does that you can't do with CORBA? Somehow they've convinced people that XML and SOAP are magic pixie dust. Open Source people of course have their own propensity to hype, but they hype things that matter to them not the customers.
Re:Open source problems (Score:2)
Could not disagree with you more. X is old-- and has been continuously developed. The first version of X is over 16 years old iirc. It moved into markets which offered the consistant user interface you mention over and over because it had a good architecture. Part of having the good architecture was making that architecture extensible so you could plug in an engine to give windows certain behavior. X will likely continue to do well, IMO, though perhaps home users will do better with a frame buffer than an X server... Office environments stand a lot to gain from X's network transparent architecture.
How many other computer programs span decades of constant development?
One has to laugh at this story though... Two large companies switch from Sloaris to Windows and suddenly it is the end of Open Source...
Re:Open source problems (Score:4, Interesting)
You should examine OSX from Apple.
-let's get some good fonts
OSX: Some of the most beautiful fonts I have ever seen. The font sizing tool is pretty cool as well.
-some good UI designs. I've seen some pretty awful stuff and concepts that seem to go out of their way to make themselves different from what people are used to using. Being different/inconsistent is a BAD idea in UI.
Some weird stuff in Aqua, but overall nice. Also Apple listens to their market and are making requested changes and options available in OSX.
-getting coding standards higher and having better design and code review processes.
There are a lot of newbie programmers out there that contribute a lot of code that is probably not suitable to go into production software...
Darwin....
-It almost seems as though the open source community needs a seasoned and very smart benevolent dictator to say what is ok and what is not.
Whoa dude. I suppose S. Jobs qualifies here, but I am not sure if I want him making all of the decisions. Lets say Apple as a whole. The do have some pretty smart folks there. Especially after the purchase of NeXT.
-better documentation in the unix kernel sources and header sources. Some of it is just awful.
It's not all bad; I've seen lots of wonderful, intuitive and useful tools over the years.
OSX.
In the end, a lot of the code that is crap will die off anyhow; sometimes it is just a painful ride to get there...
Very painful...
Re: Stop perpetrating the myth (Score:2)
Laying over and playing dead, like their competitors of the past isn't the answer. But neither is getting rolled over, kicking and fighting. The answer is to have a smarter battle plan, recognizing their strengths and weaknesses.
I HATE putting it this way. "Battle Plan" Perhaps that's what I dislike most about Microsoft. They engender this attitude in others, because they are continually at war.
Re:Getting real (Score:2)
Re:Huh? (Score:3, Informative)
We should not really be paying attention to the Apache stats right now. We should be looking much more carefully at the Linux and BSD stats. Apache may lose some marketshare as Solaris, Irix, etc. continue to lose marketshare, but that is not a good measure of the health of open source software, or so I think. I personally would not measure Open Source health by looking into the market share of proprietary OSs.
Re:Huh? (Score:2)
Actually, a significant number of enterprises are using Oracle + COM/IIS. That happens to be my speciality, and I can tell you that there is no dearth of work.
Re:Huh? (Score:3, Informative)
what a trend (Score:5, Funny)
Seriously, the article has a few good points. E.g., a decent standard gui administration tool would be nice.
Of course, how long until MS starts trumeting the cool P2P aspects of IIS? You know, Code Red contacts other IIS systems, each contacting others, eventually building a gnutella-like network...
Re:what a trend (Score:5, Funny)
If you screen shot the graph and draw out the lines at the current slope, you'll see that they meet in mid-November.
And we all know what happens when the beams cross.
Tim
Re:what a trend (Score:5, Funny)
Re:what a trend (Score:3, Insightful)
apache even fell 1.5%? In spite of everything it
DOES have going for it (more secure, cheaper per
installation, open source...)?
And keep in mind that with the number of web servers running out there, 1.5% is a pretty large
change....
There are lots of possible explanations for this... it could just be a hiccup. But the explanation our friend who authored the column
provided is equally plausible.
He's also right on in that java/enterprise/beancomponentthingies are the only real non-vapor non-MS-controlled alternative to
Did you even check Netcraft? (Score:5, Informative)
Did you even bother to check with Netcraft as to what the actual cause of Apache's drop was? Are you there? Wakey, wakey?
Since you can't be bothered to follow the link, here's the quote:
What will happen next month? Apache won't be losing ground, unless Namezero had a couple of thousand domains lying around somewhere on Apache and decide to change them to IIS as well.
Namezero have thousands of domains. As for physical servers, no, they don't have many. The drop in numbers is due to a couple of free web sites that Namezero hosted being shifted.
I don't think it bodes badly for Apache. The author of the article linked was a troll, and comes from an disreputable [slashdot.org] trollish [slashdot.org] bundle of bollocks [slashdot.org] organisation. Do you think I believe their trash? As much as I eat my faeces.
Re:what a trend (Score:4, Funny)
Re:what a trend (Score:3, Funny)
Post CodeRed (Score:4, Interesting)
Fud, glorious Fud... (Score:5, Insightful)
I don't know about you, but I think this guy is a shill for the
I'd rather run my own shit web-server wise, and then have someone like Loudcloud style business model [loudcloud.com] advise me on the e-commerce and user interface and stuff like that - then do it myself.
So many companies are going bust these days, outsourcing the very marketing and user interface of one's e-business is like getting one's automotive steel supply from a steelmaker that is 40% likely to go bankrupt in the next year.
Linux et al is for the radical libertarian survivors out there. Like the Ford corporation, which was one of the first vertical integration innovators, with control of its supply chain, you should know from mouth to anus what your company, and industry, is up to at any given moment.
You can always control and update your own software, and pay for technical advice when needed instead of metered-cost tushy wiping from a big e-services provider that's going to give you shitty tech support anyway.
I just fired my sysadmin (Score:5, Funny)
Right now, PHB is in a panic and their site is still down, because NT+IIS really isn't easier then UN*X+Apache , despite what MS says in Pointed Haired Boss Weekly
Next month, we'll see a 1.5% gain in Apache use as the Pointy Haired Bosses are sacked and replaced by an Apache admin who is able to restore the UNIX partition from backup :)
IIS Regrets - My Former Boss - Hahahaha (Score:5, Funny)
Right now, PHB is in a panic and their site is still down, because NT+IIS really isn't easier then UN*X+Apache , despite what MS says in Pointed Haired Boss Weekly
Oh yes.
When I resigned my job, my former boss, within a week, grew a hardware budget, bought a new machine, bought and installed Windows 2000 Server, went through a week of downtime and finally got IIS and the company's LAN back up.
According to Netcraft, they have yet to break that elusive 7-day uptime barrier. And, I know for a fact that they got hit by Code Red I, because their webserver appeared in my logfile (see sig below, they've been rotated out now).
All this to replace a Pentium 100 Linux box which had been running for 178 days, handling several hundred website hits a day, providing DNS, DHCP, NAT services, and handling about 500 megabytes of AutoCAD attachments in the outgoing mail spool every day. Without a hitch.
Hell, the guy was so tight, he wouldn't let me at least buy a big hard disk to throw into an old 486 we had kicking around so that we could get the rather sensitive data that Sendmail was handling onto another host. But Windows 2000 and IIS were money well spent. [Nelson: "Ha-ha."]
The ISP goes down, the Linux machine's nameserver can't find the top-level servers, and everyone gets Server Not Found errors from Internet Exploiter. His solution? Windows reflex: Reboot the Linux machine. I had to physically remove the power and reset switches so that he wouldn't fsck up the filesystem.
He tried to log in because he'd decided he had to administer it, too. From the depths of nearly 20 years of DOS/Windows experience but absolutely no other operating systems whatsoever, he came to me shouting that the machine had a virus, because typing "SCANDISK C:" gave him back an error message with the ominous word "bash".
I calmly told him that the machine didn't even have a C: drive, and referred him back to the Linux book I'd bought him when he decided he wanted to have root access, too.
"What?! No C drive? What did you do with it, I saw you putting it in when you built that machine with spare parts!"
Yes. But it's not actually called a C drive in Linux or any other UNIX variant...
"That's preposterous! Just where the hell am I supposed to save my files then? Hmmm?"
Uhh... /home/$USERNAME comes to mind... (almost told him to save his things to /dev/null but figured it would only cause me more work in the long run)
So, he went with IIS after I left, because it seemed more intelligent to him.
Catastrophic failure is usually idiocy's best reward.
Web services... (Score:4, Interesting)
Take EJB for instance. What a bloated overhyped piece of crap. There's so much bullshit from Sun about EJB when the bloody thing just plain doesn't work. Just about every project is better off with just using servlets and standard beans and their own persistence instead of relying on the slow and crappy CMP. EJB is bullshit and so is the dotNet crap and all that web services circus. It seems to me that good coders with PHP and apache knowledge seem to be able to pull a better magic than all the Javas and dotNets of this world. I'd say OpenSource is not missing the bandwagon at all unless you have a bandwagon of hype in mind.
Re:Web services... (Score:3, Interesting)
Yes...
I'm really perplexed as to what the great benefit of those is supposed to be? Isn't all that web services crap just a hyped up way of designing a typical dotcom shopping cart?
No. You obviously don't write serious business software all day every day, and been doing it for years. Sun's API standards are nothing short of a godsend. It's not about building a fscking shopping cart, you can do that in PHP. As the author said (and im paraphrasing), Web Servers have been commoditized, what matters now is Web Services.. or better yet, e-business platforms. That means alot more than shopping carts. That means robust infrastructures for moving your entire business online, moving everything (including your partners). There is immense complexity in taking all of your in-house (in-enterprise) business systems and moving them to a web or internet (think Workflow-enabled and P2P) model. I'm sorry but you can't do that in PHP on Apache. Well, in truth, if you had a good platform Apache and PHP could factor into that but only as a small component of a much bigger picture. In-house business software is moving away from what it was in '98 -'00 and back to what it's always been: integration, integration, integration. The problems facing businesses today however are much more complex because you don't only have to integrate your "shopping-cart" with your ERP, you have to integrate it with your suppliers' MRP/ERP systems, your customers' purchase systems, and your partners' services. That's hard to do in any simple language/platform alone.
Microsoft has enough high paid strategist to know that much of server software is being commoditized, what they are trying to do is sell web services built on an infrastructure that you'll use,... their infrastructure. J2EE ,on the other hand, is less the Java language and more the API's for an e-business infrastructure. With that in mind, what the author says makes a whole lot more sense. To the most principled (or bigoted) of us, the situation looks like a choice between two evils. So be it, just make sure you choose the right one. IBM has certainly chosen J2EE and they seem to be good at choosing bedfellows lately (i.e. Linux).
Re:Web services... (Score:2)
Re:Web services... (Score:4, Insightful)
Re:Web services... (Score:2)
I've always wondered about what the issues here were... I have no experience with anything beyond some very simple client server apps. Would you be inclined to point out print or online resources that could give me a point in the right direction?
Re:Web services... (Score:5, Informative)
The concept behind a web service has less to do with "metered services", and more to do with managed code (like EJB's). Internally for my Fortune 1000 corporation, I can share the "login authentication code" amongs 10 seperate applications without the applications needing the compiled Servlet or DLL on the machine itself. Moreover, applications like Microsoft Passport (or similar solutions) can be seamlessly integrated into non-Microsoft sites. Both of these scenarios promote incredible Code Reuse, at the expense of the overhead caused by HTTP and XML serialization.
Both EJB's and
It seems to me that good coders with PHP and apache knowledge seem to be able to pull a better magic than all the Javas and dotNets of this world.
It's really all about the bigger picture. Sure, some little site that uses a couple of include files and global variables can be managed fine by PHP, but it's all about scalability in terms of the applications power and complexity. Now, I'm not saying PHP or CF can't do these things - they can. It just get's to be more of a kludge then a solution as the project requirements get larger ).
Re:Web services... (Score:2)
Location transparency is non-existant. I've not seen a single app that benefits from not knowing whether a service it's using is local or remote. This is bunch of overhyped crap from CORBA. If you do distributed objects you're always forced to cater for network failures so you might just as well have it explicitly stated in the code. Before you jump here, note that I'm not dissing the idea of a naming service or some other directory lookup system I'm just saying that if you're accessing a remote service you might as well be explicit about it. EJB is big, bloated and it's almost never the right approach to take. It's java specific (yes I know about RMI/IIOP but it's more pain than it's worth) it's complicated for its own good and very slow. You've been reading too many press releases from SUNW
Re:Web services... (Score:2)
This is where
Re:Web services... (Score:2)
It's all uncharted territory. MS would like for .NET to catch on because A) it would greatly strengthen their server side role, and B) it would allow them to gradually shift their focus from selling software to renting services (providing a much steadier income without the necessity of coming up with and sucessfully marketing new versions of their products).
However, this doesn't mean that Web Services is going to actually take off. Some poor sap (with a big pile of money) thought that FED-EXing catfood around the country was a good idea, it didn't make pets.com a winner.
Just remember, Microsoft also thought that people were going to want to use Microsoft Bob.
Now, I am not saying that the idea of web services is completely bogus. I just know that the cool parts of this concept will almost certainly be available to Free Software hackers in plenty of time to meet customer demand. The reason for this is simple. Free Software hackers are right on the forefront of actually building solutions. Microsoft is busy building a product that they hope others will turn into solutions. There's a big difference.
Beautiful! (Score:5, Insightful)
The huge, big point here is the thing about J2EE vs .NET - that's the focus moving forward. Where we really don't have any other answer but J2EE. dotGNU/Mono/whatever are going to come so damn late it won't matter.
Clusterable, component-based architecture is where it's heading, and PHP/modPERL/whatever ain't doing it NOW. The corp world has gone n-tier architecture, and other than using Apache to front-end WebLogic/WebSphere/whatever, most open source stuff is far behind.
Don't even WASTE your time whining about where they got their numbers on Apache - figure out what to do to address the big picture of web services. What do we got? Not much, JBoss is it as far as I know of for non-vaporware offerings. Tomcat is cool, but it only does servlets and JSP - Tomcat is NOT a bean container. Beans (way stupid, misleading name) are the componentized pieces of code that are needed to beat .NET.
He nailed it on the head - The same way we've been harping about the world changing and rendering Microsoft irrelevant, the way the Open Source world does things is pretty much irrelevant and obsolete as well.
His point about finishing the Open Source versions of j2EE (like way quickly now too) is pretty much the only way we are not going to fall behind. We don't have the time to architect some beautiful dream, we need to shit or get off the pot NOW, it's starting to stink in here!
Re:Beautiful! (Score:2)
Check out JOnAS [evidian.com], which serves as the core for Enhydra [enhydra.org]. Both are functional, real-world application servers.
Check out Exolab [exolab.org], consisting of OpenEJB, OpenJMS, OpenORB, and more. Again, this is another open-source application server.
For web services, check out Apache SOAP [apache.org]. The wonderful folks at IBM have gifted the open source community with a SOAP/WSDL/UDDI implementation. There was some talk a while back about JBoss integrating Apache SOAP into its offerings, although the mailing list now causes me to doubt this.
Of course, I'm taking Mono [ximian.com] and dotGNU [dotgnu.org].
What does all this add up to? It looks to me that Mono and dotGNU provide migration paths for existing MS customers. J2EE provides a software scalability that is not possible with Microsoft application servers. Between Sun, SGI, and IBM, the MS/Intel hegemony don't stand a chance with respect to hardware scalability. And with JBoss, Microsoft can't compete on price. It seems to me that the Unix camp will do quite well with this whole web services thing.
That said, it's not like one side will win while the other side loses. No matter what happens, MS will have a sizable camp of die-hard devotees. Likewise with the Unix camp. Somewhere in between, web services will support mixed solutions. Throw in non-MS implementations of the CRE, and the current quality of Java under Windows (it's still better than Linux...and, yes, I have tried the IBM VM), and we've got a situation where the underlying platform is really not that important. Finally, I'll get to focus on what I do best (programming), while avoiding all the religious hype surronding MS vs. Unix.
Who's Kool Aid have you been drinking? (Score:5, Informative)
Repeat after me, all you need to do web services is a web server and a programming language with a socket library and strings support (i.e. almost all of them). Everything else is syntactic sugar and icing on the cake to maximize developer productivity the same way VB and ASP are supposed to versus C++ and Perl CGI.
Re:Who's Kool Aid have you been drinking? (Score:2)
Is that Kool Aid have you been drinking? (Score:3, Insightful)
Among other things, that goes for performance and code maintanability. J2EE is a truly impressive platform. Trust me. Learn it before you diss it.
Web Services will need to handle huge amounts of traffic when somebody discovers them and develops a liking for them. Performance and scalability are key!
Re:Beautiful! (Score:5, Insightful)
His point about finishing the Open Source versions of j2EE (like way quickly now too) is pretty much the only way we are not going to fall behind. We don't have the time to architect some beautiful dream, we need to shit or get off the pot NOW, it's starting to stink in here!
Exactly! Ganesh Prasad has hit the nail precisely on the head with his comments about .NET versus J2EE. Forget the marketshare issues, the meat of this article is that J2EE is here, today, and that complete OSS implementations of J2EE are achieveable this year ... as long as the open/free community stops trying to change Sun, and instead works around Sun. It would be much less effort than doing a full implementation of .NET, and much of the work is already done.
All of the myths about Java's speed (slow) are just that -- myths. I've built real-time data collection applications that run perfectly fine with Java/MySQL/Linux on Pentium 166s with 32MB of RAM -- Java was more than fast enough for our needs, and the development cycle was a lot faster than would have been possible with C++. Java is more than fast enough for server applications where JIT compilers can truly optimize the code, since it is compiled once and then kept in memory and run repeatedly. Benchmarks have shown that for typical server applications, modern JVM/JIT combinations are as fast as unoptimized C++ code. While an expert can still hand-optimize C++ to out perform Java, in reality, you'll have to ship your applications before you have time to apply those optimizations ... and Java's development cycle is (in my experience) still much faster than C/C++, simply because you can rely on the JVM to protect the OS from your code (and vice versa).
I'm also tired of hearing about how Sun's JVM only supports a single language -- Java, while .NET supports many languages. There are literally dozens of languages [tu-berlin.de] that can be compiled to run on Sun's JVM, even if Perl isn't one of those languages. Anyone who thinks that they'll be able to easily port existing C code to run on .NET and use .NET services hasn't looked at how virtual machines (and the CRL in particular) are implemented. Yes, the JVM is optimized for Java (and vice versa) but you can still use the JVM to allow you to write your applications in non-Java languages and deploy them on any platform that supports a JVM. Some languages, like Jython [jython.org] (a version of Python written in Java), allow you to create non-Java classes that inherit from Java classes, as well as Java classes that inherit from non-Java classes.
Anyone who claims that Sun's control over Java makes it impossible to build an open implementation (because Sun would just change the spec) and then in the same breath says that they won't have the same problems with .NET and Microsoft needs to wake up and smell the brimstone. While Sun does control the Java specification process, they still have to work with their partners and licensees, and the specification process is open -- and most of the reference implementations for the higher-level APIs are open as well. They can't change the Java language without breaking backwards compatibility for thousands of applications and millions of users, and Sun doesn't have any monopolies to fall back on. Microsoft, on the other hand, controls the desktop OS market, and can use that and .NET to conquer the server OS, and since the implementations for .NET are closed, Microsoft can switch the back end and the desktop without breaking applications deployed on Windows ... while simultaneously breaking non-Microsoft implementations. What more can a monopolist ask for?
And the best reason to work with Java/J2EE instead of .NET -- Java/J2EE is here, today, and has been working for years. While it isn't perfect, the bugs have been worked out, and it works. .NET is still beta code, and once it ships, it will still be a version 1.0 Microsoft product. It will take two more iterations (and who knows how many years) before .NET is truly stable, useful, and reliable. I need to build and deploy applications today -- not 3 years from now.
Re:Beautiful! (Score:2)
load of crap. they may come close to being speed-equivalent if you write c++ constrained to the language features java supports. That is, you use heterogeneous container classes and downcast all the time, don't use templates or multiple inheritance, use threads where there is no good reason to, and whip expensive exceptions around like you're getting a commision on them.
Oh, and typical server applications?!? If you're writing server applications using a one thread-per-server-scheme, you are nowhere, and you are if you're writing java, cuz it doesn't know from multiplexing, at least in 1.3.
Bash c#,
Re:Beautiful! (Score:2)
I did say *unoptimized -- I know that a properly coded and optimized application written in in C++ can easily outperform a properly coded and optimized Java application. My point was that Java is *fast enough* ... given that no one has time in their development schedule to completely optimize anything, and no one has enough competent programmers to code it that way, even if they had enough time to do it and money to pay them.
Oh, and typical server applications?!? If you're writing server applications using a one thread-per-server-scheme, you are nowhere, and you are if you're writing java, cuz it doesn't know from multiplexing, at least in 1.3.Ah ... you're talking about using select() to code I/O handlers. I begin to see the problem -- you seem to think that a web server is a typical server application. I suppose I should have been more specific; I was referring to business applications -- ERP, DSS, HR, A/R, A/P, Inventory Management, etc -- the type of applications that businesses pay money to have developed, because they need them to run their businesses. These sorts of applications are rarely I/O bound, because they typically have no more than hundreds of users and spend most of their time waiting on database queries and user input. With this sort of application, the use of multiple threads to manage code execution is perfectly sensible, and results in very clean and easy to maintain code. You'll note that I was not advocating writing webservers or databases in Java -- but backend applications that serve webservers and use databases are excellent targets for Java development.
Bash c#,Go back and read what I wrote -- I didn't claim that Java was as fast as C++ for *everything* -- just the sorts of applications I develop: business applications. Of course, if you continue to think of Java (and the JVM) as strictly an interpreted language, you're not keeping up with what the JIT compilers are doing these days, and you're completely ignoring the native-code compilers for Java.
Sorry for spelling: late, drunk.Friends don't let friends post drunk.
Re:Beautiful! (Score:3, Insightful)
Re:Beautiful! (Score:2)
There are actually a lot of them, although I'll grant that they're not widely used. That doesn't mean that they're not good, though. Look at ThinkFree Office for a good example: 100% Java, runs beautifully on all kinds of machines, and is good. I think you can make a credible case that the ThinkFree Office components are far better and more usable than almost all of the "free" office alternatives out there, including all the Gnome and KDE office apps. ThinkFree Office has far better and more bulletproof Microsoft file capabilities than those types of competitors. In fact, except for lacking support for a few advanced things in Excel, like cell notes, conditional formatting, and autofilters, it interoperates flawlessly with the MS world. It's also quite speedy on an old P75 laptop that is otherwise incapable of running office apps.
(BTW: for those that will inevitably gripe that ThinkFree requires a subscription - you're wrong. ThinkFree Office is freely downloadable and usable locally: you only have to pay the subscription fee if you want to use thier backend services, which are good, but a bit overpriced, I think...)
Re:Beautiful! (Score:2, Insightful)
Re:JVM supporting other languages... (Score:2)
I can't speak for all of those tools/languages -- I'm certainly not using all of them myself -- but I have used Jython, SQLJ, BSF/BeanShell, and WebL, and can see a use for many of those languages in different situations. Certainly *someone* saw a need for each of them, and languages like Ada, Cobol, Forth, Lisp, Scheme, Pascal, Fortran, TCL, Prolog have their own proponents.
While I know that people are using C# and VisualBasic.NET for .NET development, what other languages are currently available *and being used* for development with .NET and how many applications have been actually deployed using .NET? There are literally tens of thousands, if not hundreds of thousands of applications deployed on Java/JVM -- that's the REAL difference between .NET and JVM.
Re:JVM supporting other languages... (Score:2)
But I was trying to focus on the [Everything But Java]/JVM apps, not Java/JVM. If these other languages are seriously being used, seriously supported I'd like to know about it.
I can't say that someone saw a need for each of them, it appears from going through the list that someone had an interest in seeing if it would work. But a good chunk of that list results in 401 errors, so I question the viability.
Sun certainly doesn't support or even encourage it, whereas Microsoft does.
As far as viability of
We'll see.
But again I just wanted to question the reality of this [Everything but Java]/JVM myth.
No insight at all in this article... (Score:3, Interesting)
I highly doubt that one will win out on the other totally. Either there will be somewhat of a crossover in the technology or a new candidate will come into the frey. Apache is solid, IIS has been proven to be somewhat insecure. Yes, as IIS becomes more stable it will be accepted by a wider audience.
"Now this is going to be controversial and will not win me many friends, but I think the Open Source community has to get real about a couple of things."
That comment I totally agree with, if the Open Source community wants to compare itself to, and compete with companies that are driven by profit, they have to appeal to the people that use the products for profit, Microsoft sees this, and takes advantage of the fact that people want solutions that can be developed quickly, trading a loss in performance and security for a solution that is first to market. The point about the lack of a GUI config for Apache is a good point, and should not be brushed off by those (including me) that don't have a problem configuring a httpd.conf file through vi (or emacs).
Companies are looking for solutions that require less cost in implementing, and when you (well, not most programmers, but the management "you") compare the cost of training someone to use Apache vs pressing a button to run IIS.....
Web Server Choice is a Platform Choice (Score:5, Insightful)
Nobody just wakes up one morning and says "wow, I'm going to switch from Apache to IIS". Rather, if a switch is made it's a much broader move from an MS platform to a UNIX platform, or vice-versa.
Anyone who's worked in an IT facility knows that changing platforms (or even allowing non-homogenous platforms in the first place) is a huge decision, and rightfully so.
So when people talk about relative market shares of IIS vs Apache, know that they are really talking about Microsoft vs Linux (or maybe MS vs UNIX, but you get the idea).
Losing for lack of web services? (Score:5, Insightful)
Coming from a dot-bomb that preached web services as the solution to every problem and the wave of the future, I see nothing to worry about in this article. The concept of web services as proposed by .NET doesn't boost anything other than Microsoft's bottom line as far as I can tell.
What all the pundits who praise the concepts behind a technology seem to keep missing is that just because you can do something doesn't mean people are willing to pay for it. Look at WAP, sure I've done work with it, but I wouldn't buy a phone with it now and I certainly wouldn't pay a premium for services that can be delivered better and cheaper through an alternate medium. The internet is just another communications pipeline - the stock market and the dot-com shakeups have proved the fact that it is not ipso facto a revenue stream. Have 900 numbers and pay-per-view revolutionized our telephone and cable systems?
When someone shows me a real use for .NET, maybe I'll take a look again but for now Apache fits the bill pretty damn well as far as our business model and budget are concerned. If we need web services with our clients, PTP holds far more promise for keeping our data where we want it - out of Microsoft's hands.
Dot coms are NOT enterprise class (Score:3, Insightful)
Re:Dot coms are NOT enterprise class (Score:2)
-Scalability. Replicate tiers from the solution to provide solutions that scale beyond a single computer.
-Transactional support.
-Built-in declaritive security. Leave the role of security to the deployers where it belongs, not with developers.
-A rich API that has built-in connectors to legacy systems, such as CICS.
In short, you need an application server.
Hmmm....CGI+Perl doesn't offer any of this. Gee, J2EE does. So does Site Server (many people forget that MS invented the market we now call "application servers").
You know, I've heard that, during wartime situations, pilots often resort to things like duct tape to repair their aircrafts. Does that make duct tape suitable for commercial airlines? No. Just because one person uses it, successfully, for certain tasks does not mean that it is the appropriate tool for those tasks.
To Server, or Be Served; Which Will You Be Doing? (Score:5, Insightful)
"...Apache hasn't introduced any significant user features in two years. (For example, has Apache even managed to deliver a standard GUI configuration tool in all this time?)"
And, why is a GUI necessary for configuration of a web server. It's already (finally) becoming clear that server administrators need to know how to do more than just aim their mouse and click. Insufficient security training [cnn.com] is being acknowledged as a business liability.
Sure web services are useful and may very well become the business model of tomorrow, but define it. Your company's soon-to-be-released new revolutionary product line won't be authored in WordXP or ExcelXP documents on some other company's server. If that's a "Web Service" the author is thinking of, it's not and won't become a business model anyone will buy. Interactive applications is probably one of the more viable prospects, and Apache does not offer such interactivity natively. Apache hasn't really advanced much in a couple years, but does that mean it's dead? You can plug a helluva lot more into Apache to make it an interactive, secure, and functional application server for the web than anything IIS will ever produce.
And, you don't need to reboot your whole flipping server when Apache, PHP, MySQL, PostgreSQL, or mod_mp3, or whatever else you've rolled into that application server submits a security patch. Just apply the patch and kick start the service. Ouch! That was painful....
Apache is far from dead or dying. It probably won't come with a GUI configurator/wizard thingy. Should it?
Re:To Server, or Be Served; Which Will You Be Doin (Score:5, Interesting)
Hell no! I've administered to IIS and Apache servers for years, and all that IIS's GUI ever does is get in the way. Let's imagine for a moment that you have an IIS server hosting multiple sites, and that one of those sites is working properly while the other doesn't work at all. Now tell me how you'd go about comparing the settings on the two to see what's different? It's a god damn pain in the ass. You can't compare the two side by side, and there's a handful of entirely separate panels to check for differences, each with sub-panels.
Now, with apache, I can open two terminals/editors and compare the comparisons side-by-side in just a moment.
With text configs, I can also compose a template for new sites and set them up with a quick cut and paste operation. Much less work than creating a new site in IIS...
GUIs available; hackers not interested (Score:2)
Re:To Server, or Be Served; Which Will You Be Doin (Score:2, Interesting)
I agree. But here's the thing: we're talking about how Apache just lost marketshare to the pointy-clicky IIS types. So I'm going to make a break from my /. brethren and suggest the following: lower the bar. Don't cater to Only People Who Know What They Are Doing(tm). Find out what tools stupid people need to become competent, and give them that. If stupid people don't like to read and hack .conf files, fine. Build a GUI with mouseover help and wizards that protect them from themselves. Surprisingly, you will find that many people are comfortable admitting that they are stupid and want a product that lets them stay stupid. In fact, while I fully geek-out on computers, I will pay through the teeth to not have to think for one single second about my car. I trust the car to be safe, and if it breaks, I find a shop to fix it and spare me the details. Do the mechanics make fun of me? I don't care. I'll make fun of myself in that regard -- "I'm car-challenged!" But I will not stop driving. Apache is losing market share? People will not stop serving Web pages, even if they're Web-challenged. So we have to fix it and spare the details, or cede that market to MS.
Re:To Server, or Be Served; Which Will You Be Doin (Score:2)
The problem with stupid people is that they're stupid. Stupid people aren't competent.
What stupid people who become server admins want is for the server to solve the problems on its own.
Perhaps, eventually, AI research will advance to the point where this is a reasonable expectation. Right now, though, I really don't think so. :)
When did IIS get a lock on web services? (Score:4, Insightful)
To implement a simple web service, one doesn't even need a "web server" at all! Just instantiate the xml-rpc server in Python or Perl, or instantiate a SOAP server in Java. And apache can certainly hook into any of these things just as well as IIS can. As for the other things... well, UNIX types have been living without Microsoft's hold-your-hands-and-stick-handcuffs-on-them pre-rolled 'architectures' & components & and everything else.
As the article says, Reduced to the technological basics, it's just XML over HTTP. Are we seriously saying that Apache has some sort of problem serving XML over HTTP? I think the author has bought into the "Web Services!" hype and seriously over-estimates the problems in creating them. Web services are not cool because of technology. They're cool because we're finally finding formats that we can all practically agree on for remote procedure calls.... shorn of the hype, web services are purely social innovations. Microsoft had to hook tech to it to attract the attention of people who are driven by flash, but the tech is almost incidental.
If we were wiser 5 years ago, there's no technological impediment to creating web services then... but there's no known way to shortcut the aquisition of wisdom.
Re:When did IIS get a lock on web services? (Score:5, Funny)
Exactly. Why do people think you need something huge and fancy to do web services? The whole point of it is to simplify things. I wrote our order entry system at work using EJB, and I exposed the beans via SOAP by 1) copying Apache's soap.jar to Tomcat's webapp directory and 2) writing a 7-line deployment descriptor. Two steps, that's it. And for any other new web services, I don't even need to repeat the first step. This is all running on open-source software (Linux, JBoss, Hypersonic, Tomcat, Apache SOAP). How exactly is open source behind MS on this one? I can do it all in production-level software today with open source; I have to use a beta-level app from MS to do it in the IIS world. I just don't understand this article at all.
Re:When did IIS get a lock on web services? (Score:2)
It's amazing what corporate types will do when they're playing with other peoples' money.
Re:When did IIS get a lock on web services? (Score:2)
I understand that, but I guess what I'm trying to say is that there already is development on the J2EE technologies as far as open-source goes. I have them running in a production environment right now. Maybe more marketing could help; JBoss is a very nice product, and its integration with Tomcat is superb, but nobody seems to know about it. I think there's plenty of room for the Monos and dotGnus out there. The author tried to say that OSS is losing because there's not enough web service-type development available, but that's just false.
Jakarta (Score:3, Interesting)
There are a lot of cool projects going on over there, the most famous of which is Tomcat [apache.org], an excellent (and free!) J2EE servlet engine (which Sun has made *the* reference implementation of their servlet spec). In the web services game, servlets are the point men. The author should have at least brought up the Jakarta name... although he probably would have lost his own arguement if he did :-P
Still, I think it was a good article overall. All the World War II analogies were quite entertaining.
Re:Jakarta (Score:2)
Tomcat v3.3 (in beta now) is a performance release to Tomcat, and improves things a lot. But it's still quite a bit slower than Jetty & JRun.
Tomcat v4.0 has the promise of working better. It's got the right architecture. Craig McClanahan, the chief architect, deserves big kudos for laying things out nicely, and writing really good code. But it's still in beta, too. I haven't done any benchmarks since beta 1 (before any performance tuning, IIRC), but it was pretty slow back then--slower than Tomcat v3.2.
All I mean to say is that Tomcat is a very poor implementation of a servlet engine. It is the reference. It does work reliably. But it is not very efficient.
If you've got a commercial site, use Jetty or JRun.
Zope: **THE** Platform for WS - ENTERPRISE READY! (Score:5, Interesting)
Read this: it may not change your life, but it might just change your mind. If it does, mod it up ;)
Zope has Enterprise-level scalability and is the closest OS competitor to the most advanced Java app servers, with much, much more and no Java BS.
However, Zope is more advanced than those, and has now:
Improvments being made continually via current Projects:
Zope is open-source, works well with Apache and Squid, has great RDB abilities. It naturally exposes objects for publishing using a strong, easy to use security model. It supports authentication off of LDAP, NT Domains, RADIUS, etc. It's odb catalog features allow the development of applications that use dynamic queries to organize content (and potentially code) objects. It's the strongest suite of features for web-services oriented middleware out there, because it has a several year lead in many respects on the competition! Python is XP, so it has the same advantages as a CLR, provided it is coupled with an XP GUI component model or class library, like PyXPCOM (Mozilla) or wxWindows (Unix, Win32, Mac). Last, but not least, it is easy to develop for.
An open challenge to all the folks trying to develop their own toolkits from scratch (dotGNU, Mono, etc): DON'T - instead use something that is already proven in this problem domain: Zope and Python!
www.zope.org [zope.org]
www.python.org [python.org]
Re:Zope: **THE** Platform for WS - ENTERPRISE READ (Score:2, Interesting)
Don't put off learning Zope any longer folks. This is the real deal.
J2EE? ColdFusion? .Net? PHP?! If the thought of using and of those makes you gag, ZOPE IS PERFECT FOR YOU.
I heard about it for years until I sat down and actually looked at it. There's a book from the New Riders out right now ("The Zope Book") that explains it all. Ask management to buy it. Now.
The book isn't necessary. Zope is incredibly simple to use. But I found that the book held my hand just to the point where it got me excited about all of the things it could do, whereas I'd normally lose interest.
The learning curve is incredibly small if you're a web developer with some Python experience. This is no major feat. Learning Python is extremely easy.
Zope has a real open source community, a beautiful design, and is extremely fast to develop. We are definitely doing all of our new sites in Zope. You should consider it. Check it out.
Re:Zope: **THE** Platform for WS - ENTERPRISE READ (Score:2)
Admittedly, the documentation has gotten far better since I used it -- it was simply disgraceful when I was using it (an undocumented framework is not very useful). But I seriously doubt that the concepts have become any easier since then.
Honestly, I think it has a lot of the problems that MS products have -- at a certain level, it's dead easy. But as soon as you try to understand what you are doing, you realize the underlying logic is spotty, the metaphors not really complete, and the whole thing doesn't feel deterministic.
I was seduced by the promise of Zope, mostly I think by other people who thought Zope would be really cool as soon as they really learned it. So with this I caution others.
Re:Zope: **THE** Platform for WS - ENTERPRISE READ (Score:3, Insightful)
Sneer at the article all you want.... (Score:5, Interesting)
I attended JavaOne in June. Granted, it's a 17,000 attendee propaganda show but you'd be amazed at a lot of the software coming out of companies that are doing J2EE. Application platforms like Oracle 9iAS, iPlanet and IONA are amazingly powerful and robust. The J2EE implementation has 5 years of maturity behind it. Microsoft, while honestly having some interesting ideas, is at least 3 years of development effort behind Sun. It's a complete framework that handles everything from massive database connectivity to advanced XML parsing with technology such as XSL, DOM and SAX to guaranteed-delivery messaging systems for distributed applications.
Java is not free software or open source, but it's a lot better than
Open Source would do well to embrace Java as much as possible. Eventually Java will turn into C, where there are many compilers and run-time environments available for all sorts of uses and needs. It's already happening comercially from a lot of companies who have a good idea and are running with it, such as KADA Systems for J2ME. Sun's primary interest in Java is a Microsoft-killer and if they have to relinquish more control to get that they will. Remember that at its core, Sun is a hardware and OS company, not a programming/application company like Microsoft.
Re:Sneer at the article all you want.... (Score:3, Insightful)
-CrackElf
Completely unfair, completely ignores modules (Score:4, Informative)
This is a completely unfair statement. While work on a 2.0 release of Apache has been ongoing, development has hardly stalled in the 1.x series. The strength of Apache was never the server itself - It was the modular design. Mod_rewrite, libphp, etc -
Yes, you can run PHP under IIS/Apache for Win - But you have to run it as a CGI. It loses one of it's major strenghs.
Apache is constantly being refined and extended with modules. If the author has any doubts about this, I strongly suggest he 'grep -v ^LoadModule' his httpd.conf. I suspect he would soon realize his Apache did nothing at all.
My guess is the author has never actually admin'd Apache. He's probably been just an Apache user his whole life. (I see nothing to the contrary in his bio at the bottom of the article). Apache is a wonderful tool that is upto
Please excuse the poor thought-line of this post:) I was in a hurry to get my thoughts out the door.
Re:Completely unfair, completely ignores modules (Score:3, Informative)
This is not true, PHP can run under IIS as an ISAPI extension, which is an in-process DLL, IIRC.
Consultants' language. (Score:3, Insightful)
When I hear stuff like that, I think, "Uh oh, here come the consultants". I've been there: and believe me, the emperor has no clothes. This stuff is just what the term "FUD" was invented for. When someone quotes "enterprise component architecture" at me, and then adds "WSDL"and "UDDI", and then throws in a measure as Java jargon as the solution, I think: "there's no there there". Usually, this means the person saying this wants me to pay him a lot of money because he is so much smarter than I am.
We have OK clustering and failover solutions today. If anything is an obstacle there it is open source databases, not server/service platforms. WDSL? UDDI? Must it be those acronyms or will others do? I would like to hear what the real missing functionality is. A GUI and a few acronyms du jour buy me very little.
So web services are the next big thing? Maybe. But we thought the same about thin clients 5 years ago, or B2C's two years ago, or B2B's just last year. Wrong, wrong, wrong. Give me choice between an acronym consultant or a competent PHP programmer, and I will tell you who makes the biggest and fastest difference to my business's bottom line. And that counts nowadays. (Hint: it's not the consultant.)
That, and the obvious Java bias of the author, and his Sun links, makes me doubt the article even more. I put this one down as "In spite of his bias he may have a point but if so, I'd like to hear that point, not just hype.
Michael
Re:Well, DUH (Score:4, Interesting)
Re:Well, DUH (Score:2)
there are more Win2K server installs than Linux server installs, at least more than the subset of distros that install Apache by default.
more Linux server installs also are done by technically inclined people who don't just click defaults randomly. :)
these two factors tend to support the claim that M$ enabling IIS by default would enhance its marketshare more than Linux distros bundling Apache.
Re:The process of natural selection (Score:2, Informative)
IIS does not run in a privileged (a.k.a. "kernel-mode") process. It cannot directly read/write addresses in kernel memory. As an IIS developer at Microsoft for the SMTPSVC who actively debugs IIS every day, I know very well that INETINFO.EXE is a user-mode process.
The source of your confusion may be that IIS threads have SYSTEM tokens, granted from the NT SCM which launches INETINFO.EXE. This, however, does not offer any performance boost, nor does it allow access to kernel memory space. As with any user-mode process, any attempt by an IIS thread to read/write kernel memory results in an access violation, regardless of the thread's access token.
The good performance of IIS's W3SVC is due to its asynchronous architecture that allows its threads to avoid blocking on I/O operations. Thus many I/O operations can be pending concurrently without a bloat in the number of threads, avoiding excessive context switching and VM swapping for extra stack space.
D
Re:Comparing uptime (Score:2)
also, I'm not convinced it's totally reliable when dealing with firewalls.
for example, I asked it to look at my domain. it correctly identified the server I'm running (PersonalNetFinder/1.0, which is the MacOS 9 personal web server) but when it looked at the operating system, it got the firewall's operating system (FreeBSD). this is because I'm running rinetd on a NAT firewall. port 80 is forwarded to the Mac that works as a little mini-server. (someday I'm going to buy a Real Server(tm) and move my web stuff over there. until then, the Mac works fine.)
the fact of the matter is that PersonalNetFinder/1.0 does not, and will never, run on FreeBSD. it's a MacOS-only server (it doesn't even run on OSX as far as I know). so if it was a little brighter, it would know that.
Re:Open Source's Bottom Up vs MS Top-Down (Score:2)
THEY are fine ones to ignore "worse is better". ;)
Re:This holds true only if (Score:2)
As a web developer, this really baffles me. If anyone can shed any light on the actual advantages of this, please comment or email me at johnnyb@wolfram.com.
Just a Java marketing snow job (Score:2)
Indeed. Our evangelist friend appears to be on the Java Mafia's copious supply of marketing crack.
People, kindly take a few minutes to browse through the LinuxToday talkbacks on that article, and watch Ganesh's claims being dismembered from a multitude of perspective -- including those of quite a number of professional Java developers. You'll see his essay mocked for playing dumb games with Netcraft statistics, zinged for pushing the licensing issue under the carpet, derided for trying to urge a bloated, inappropriate, sweeping solution to a basically non-existent problem, and outright flamed for trying to hustle us with the threat of Micorsoft's vapourous marketing initiative du jour.
And, as the hucksters say, much, much more.
(And, people: Kindly tell me that you're not dumb enough to get stampeded by this blatant con job. Please.)
Rick Moen
rick@linuxmafia.com
Re:To Each His Own (Score:3, Insightful)
You miss the big contradiction in your post. You question why someone would use IIS after something like Code Red happens. Well, if someone cares enough about security for it to be the deciding factor in the OS they choose, then they also know that (1) Microsoft released a patch and a workaround for the security hole long before Code Red existed, and (2) all the Linux distributions have tons of patches for all the security holes in them. So if someone really cared about securing his own boxes, he applied the patches or the workarounds and never had to worry about his machines getting bitten. You act like a security-conscious person would just move to Linux, set up a box and forget it, and conveniently forget about all the holes that have been needed to be patched in the Linux distributions. Doesn't sound like much incentive to switch for anybody who knows what they're doing.