I'm writing this looking back from a potential future where
microsoft becomes a consulting services company and its Windows OS is is the
OS/2 of its day. Microsoft failed to embrace the Open Source software
movement. Well not exactly. Microsoft failed to research the make
up of this group. Not only the creators of OSS
but the users of OSS. The
users are almost more importannt then the developers in this case.
Why? MS decided that OSS was
foolish and that the developers engaged in OSS
where giving away their services and their time. MS argued that software
should be paid for and that developers should be making money. I can't
argue with any of this and on this point they are very correct. However
you have to look at the motivations of the OSS
community.
The first perspective is the users. They get free
software without the worry of the licensing nightmare that accompanies most
commercial software. There is no good way to keep track of the software
installed on most systems. Don't get me wrong there are several improving
ways of monitoring installed software but this is usually not free. There is SMS and related products but this is
still difficult, with many small to medium companies struggling to 1) understand
their licensing agreements and 2) comply with their licensing agreements. How do I know this? I was employed by a small division of a VERY
large corporation. We had incredible
resources but it was still a great challenge to manage all of the various MS
and related software and all the third party software. When you are told to install software on that
laptop today because the boss is going out of town and needs it right now, you
do it.
However as
we move forward in time and major shift in development away from desktop and
towards web applications began. The two
reasons for this were 1) DLL Hell, which is its own article/book/series of
books on its own and the licensing debacle referenced above. So we have a paradigm shift from desktop
software to web software to alleviate the installation and maintenance
nightmare of desktop software. Note that
we have had several paradigm shifts from the original main frames and UNIX
boxes to the all powerful desktop to the client server heydays of the mid
nineties and eventually to the web centric model that is emerging today.
Microsoft
of course saw this and countered with .NET. Make you think that .Net is all about the
network and every server and desktop with .NET
would be instantly connected and on the web.
Well here is reality: .NET did not
ship with Windows XP. Nor was it on the
2000 servers most people were using at the time. But the worst was yet to come. All of my client server apps written with VB6
and MSSQL would have to re written because VB.NET
was not backward compatible with VB6. Goodbye
desktop hello web. So VB6/COM
training/talent/know-how goes to ASP and ASP.NET
and then in ASP.NET vbscript is abandoned
(rightfully or wrongfully) in favor of javascript. So know I have wasted 5-6 years with VB and
COM and must upgrade my skills. So lets
go looking for training for our staff.
Wait a second. What’s this java stuff. That will really take off and that’s what all
the big guys use on their servers and even better this language was written for
the web and even better developers can fell like they are writing in C and feel
smart while having the memory management of VB.
Yeah Java! Then along comes .Net
with C# the Java killer.
All the while many free lance
developer, student, academics, government and pretty much any software
developer who has limited resources has been searching for ways to reduce
software costs while remaining inside the boundaries of the law. Well a few of them get together and figure
some stuff out and write some programs to share. Why not create this and why not create that
and pretty soon you have an OS and a web server which is all your really need
in this new world. Why not have a few
web languages? Keep building on the
foundations of what is currently available, get smart and hungry people to work
on it and wait a while. Pretty soon you
have some pretty good tools written for smart people by smart people to do the
things you need to do. Bugs are fixed
quickly, people are friendly this whole thing isn’t too bad.
So all of a sudden OSS
becomes to pretty decent software with a price that you can’t beat. So the question is why pay for all that
software especially when all you need is a web browser (available on Windows
98) to access all of the company network and software which is now web based.
...End of Part 1...Part 2 soon to come...