NT vs. Unix
Post your responses to this article on the JavaBoutique Discussion Board!
-> Follow-up #1 ->
Q
First of all, please pardon my ignorance...I come from a banking background...I was hoping that you could help me out by lending some of your expert insights:
I have been assigned a project to benchmark the suite of services provided to web developers from Sun Microsystems and Microsoft.
I would be very interested in hearing your insights about which company you, as a web developer, prefer.
We are most interested in applications that are being developed for start-up, e-commerce sites (both pure online start-ups and "brick to clicks")
Concerning these two platforms (Windows NT and UNIX), what are your thoughts about scalability, managability, reliability, programmability, interoperability, etc?
A
Hmmm, a very good question and a tough one to answer.
Most likely I'll end up angering a lot of people with my opinion, but I always prefer to be frank even if I put my foot in my mouth....
For me, it works out something like this:
| | UNIX | NT |
| Security | HIGH | LOW |
| Scalability | HIGH | MEDIUM |
| Programmability | LOW | HIGH |
| Managability | MEDIUM | MEDIUM |
| Reliability | MEDIUM | MEDIUM |
| Inter operability | MEDIUM | LOW |
SECURITY
UNIX assures security by using an open systems architecture.
Microsoft attempts security through obscurity.
I think Eric Raymond sums the difference up pretty nicely:
"...The reason the closed source model doesn't work is that security-breakers are a lot more motivated and persistent than good guys (who have lots of other things to worry about).
The bad guys will find the holes whether source is open or closed."
"Closed sources do three bad things.
One: they create a false sense of security.
Two: they mean that the good guys will not find holes and fix them.
Three: they make it harder to distribute trustworthy fixes when a hole is revealed."
Open source ensures that your code is submitted to the most harsh and penetrating peer review possible.
Such reviews include bug checking, security attacks, and bench marking.
What is better is the fact that the people trying to over-run your code are not hackers but customers!
If a bug is detected, it is usually detected by a friend first.
And, as Eric Raymond says, open or closed, the "bad guys" will find the holes.
The security through obscurity of closed source is only an illusory veil of security.
Security hole announcements in such closed systems as Windows NT have been as regular as those announced for open source code such as sendmail.
The big difference between the two lies in the emergency response time.
The rate at which security holes are patched in open source companies is far shorter because the whole community can mobilize to deal with any emergency.
SCALABILITY
Let's face it, UNIX is the workhorse of the Internet.
Even Microsoft uses UNIX to serve its own website.
Scalability is tough to solve on UNIX, but it has been done.
I have never heard of a scalable NT solution yet.
PROGRAMMABILITY
For anybody besides the high priest class of UNIX gurus, UNIX sucks.
Even the best of the UNIX GUIs are ugly.
The documentation (if it is exists at all) is written for hardcore nerds and the programming languages all assume that you know what you are doing.
Java, Perl, C++... these are all languages that don't play particularly well with IDE's (visual development drag and drop tools) or with other products (like co-operating with Microsoft Excel from a Java program).
On the other hand, Microsoft applications and the development environment could be mastered by a monkey of average intellect in a few months.
Microsoft is easy.
Microsoft also knows how to integrate (with itself) so that every programmer has at her disposal the use of all of the other programs in the Microsoft universe.
This is not the case for UNIX integration.
Of course, the ease of development has a serious drawback.
The fact is that the monkey you get to write your code will write you code that is architected like crud.
I have never once seen a well architected ASP application for example.
Even if you have good intentions, it can be very hard to write good code using Microsoft products.
MANAGEABILITY
Just as a moron can develop for NT, so to can a moron sys admin an NT box.
How hard can it be to use a wizard?
UNIX on the other hand is a nightmare.
However, if there is a serious problem that pops up on your server, it is probably easier for an experienced sys admin to fix it under UNIX.
RELIABILITY
Well, my UNIX box can run from weeks without bothering me.
An NT server will be lucky to stay up for a week without needing a reboot.
But then again, for most uses... hey... who cares.
So what if a server is down for 5 seconds before your fail over kicks in?
INTER-OPERABILITY
Windows does not play well with others.
But it kicks butt when it comes to playing with itself... or... uh... you know what I mean.
UNIX, on the other hand take great pains to make sure things inter-operate.
However, it is tough to implement.
-> Follow-up #1 ->
Selena Sol contributes to the JavaBoutique's Introduction to Java. Selena curently works for Barclays Capital in London, one of the leading global investment banks in Europe and has worked as a software developer for the National Center for Human Genome research, Microline Software, Neuron Data, and Electric Eye in Singapore. Selena is perhaps best-known for creating the Public Domain Web Script Archive (Extropia) and writing several books on Web Programming (Perl, CGI, Java).
Email: selena@extropia.com
New on the Java Boutique:
New Review:
Time Management Made Easy with the Quartz Enterprise Job Scheduler
Why not just use the Java timer API? This open source scheduling
API boasts simplicity, ease-of-integration, a well-rounded feature
set, and it's free!
New Applet:
Reverse Complement
Reverse Complement is a simple applet that converts DNA or RNA
sequences into three useful formats.
Elsewhere on internet.com:
WebDeveloper Java
Lots of Java information on webdeveloper.com
WDVL Java
Thorough Java resource at the Web Developer's Virtual Library.
ScriptSearch Java
Hundreds of free Java code files to download.
jGuru: Your View of the Java Universe
Customizable portal with online training, FAQs, regular news updates, and tutorials.
|