Switching from Microsoft (Part 1/2)
Switching from Microsoft (Part 1/2)
- Subject: Switching from Microsoft (Part 1/2)
- From: Goodbye Bill <email@hidden>
- Date: Mon, 02 Jun 2003 11:15:41 -0400
Hello all!
Many of you on the list have asked me why I am switching to WebObjects from
Microsoft -- a question that I've answered offline a few times. I figured I
should post my response to everyone out of fairness. The message below is a
copy of how I responded to another gentleman offline asking the same
question.
Enjoy! =)
-------------------------
Don,
My desire to "move" to WebObjects and/or a Mac platform is twofold. First,
is what I call the "corporate crapola." Second is the desire to develop
applications for my clients and not be limited to one platform.
I have been with Microsoft for almost 20 years now (since Windows 1.0) and
have been writing code for them since Windows for Workgroups v3.11. I am
also ex-military and bring with me that leader -slash- team player attitude.
I'm a big believer of not letting obstacles (especially corporate crap) get
in the way of accomplishing a goal. Microsoft makes this difficult from
time to time.
For the last several years Microsoft has made some very poor decisions when
it has come to choosing customers over profit. The biggest has been in
their security area. For example, Internet Information Server (IIS -- their
web server) has had several holes over the last few years.
I have taken part in several conference calls with various development teams
at Redmond and, instead of fixing those holes and providing patches,
decisions have been made to publicize them and make the necessary fixes in
the next service release. Granted, this is not the brightest move on their
part, however, what makes it worse is that several internal bulletins have
been circulated which have threatened to terminate people that release the
patches to customers early. (The logic being that applying the patch could
prevent the next service release from installing properly.)
Another example of this is with SQL Server 2000. A few months ago a worm
was released called "SQLSlammer." This virus infected millions of databases
around the world. Locally, where I am, it brought down Sprint and a few
other telcos. Now, I'm not saying that other platforms are free from
viruses; I just don't like how Microsoft puts their corporate "butt" ahead
of the customer all the time. After 20 years, it gets a bit old. Oh, and
the fix for the SQLSlammer virus???.... it was in their latest service pack.
In fact, the developer that wrote the worm found out about the hole from the
documentation that Microsoft made public just before the service pack was
released.
As I said, my second reason for moving to a Mac is the cross platform
abilities. Microsoft's .NET Framework does not have the same abilities "out
of the box" that a WebObjects installation does. With WebObjects, I can
develop a web application and allow my client to take their pick of the
hosting platform... Windows, Mac, Solaris, and [although unsupported]
various Linux platforms such as Red Hat. This is simply not possible with
the .NET Framework.
You asked about .NET being Java natively. No, it is not. The .NET
Framework pushes two primary development languages VB.NET (for Visual Basic
developers) and C# (for the Java folks). It can also do C++ v7.0 if you
want to stick to the object oriented C-based languages. And, while there
are two Java-based languages for the platform -- J# and J++ -- they do not
integrate with the .NET Environment too easily just yet.
What the Framework DOES provide is what is called the "Common Language
Runtime" or CLR. Microsoft's goal with the .NET Framework is to bring
together all Windows developers and allow them to work simultaneously, on
the same projects, regardless of the developer's language of preference.
For years there has been a battle over VB and C++ developers as to which
language was better. VB was slower in runtime but allowed programmers to
whip out applications with record speed. C++ produced much faster and
tighter code but took many more years to become equally as proficient. One
of the primary goals of the CLR and .NET is to remove these differences.
As developers work in .NET, their code is compiled into a package using an
"Intermediate Language." If you were to decompile the same app that was
created with VB.NET and C# you would see an almost identical assembly. The
program is then executed using JIT compiling and the CLR. The result is an
application that runs as a whole having used different languages to create
it. Eventually, the IDE will allow one developer to open up a project and
allow the developer to select what language they want to continue
development in. In short, a VB developer will be able to see the code in VB
and a C# programmer will see the same code but in C# -- the IDE will control
the interpretation during development.
As pretty as .NET is, it is still not a cross-platform development
environment or language. As I mentioned before, I want the ability to code
once and deploy on any of the three primary platforms out there. This
brings be to my decision to move from the Microsoft-centric languages to
Java. While Microsoft does have J++ and J#, neither are completely
compliant with any of the specs I've read about (J2EE, etc.). Also, from
what I have learned, they all require Microsoft-centric technologies to be
installed on the box doing the hosting. And, while I would TECHNICALLY be
able to install onto a UNIX or Linux machine, considering the anti-M$
mentality of their admins, I do not think that bringing M$ residue with my
application would be a good business idea. This means I need a pure Java
development environment and deployment abilities.
(Continued in the next message)
_______________________________________________
webobjects-dev mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/webobjects-dev
Do not post admin requests to the list. They will be ignored.