gnu-misc-discuss
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Too late! Window hasta la vista 5308 is now fully operational.


From: Rex Ballard
Subject: Re: Too late! Window hasta la vista 5308 is now fully operational.
Date: 25 Feb 2006 20:01:43 -0800
User-agent: G2/0.2

Ian Hilliard wrote:
> On Thu, 23 Feb 2006 14:37:11 -0800, Rex Ballard wrote:
>
> > Microsoft had to deal with two big threats to Windows 95, one being
> > Linux, but the even bigger one was Windows 3.1.  People had to be
> > convinced to migrate to Windows 95, including the purchase of new
> > hardware which had been secretly designed to NOT run Linux (the PCI
> > codes required to configure the hardware were a carefully guarded
> > secret), instead of attempting to upgrade Windows 3.1, failing
> > miserably, then adopting Linux, OS/2, or UnixWare in desparation.

> Microsoft won with Win95, because it was easier to produce eye-catching
> graphical application, than it was with Win3.1 or any of the Unix
> variants. In fact, I was doing a SCADA Master Controller in 95 on SunOS.
> The project ended up working very well and being very reliable, but it was
> an absolute horror to program the GUI.

The irony is that Linux actually had easier to use tools.  Tools like
Python, Perl/TK, GTK, and Java AWT made it really easy to create really
simple and effective GUI interfaces to Linux applications.  On the
other hand, coding GUI interfaces in C or C++ with core toolkits was a
bit more challenging.  Microsoft was also really promoting the
dailights out of Visual Basic as the primary interface - partly to make
sure that applications could not be easily ported to Linux.

> The Borland Graphics Library or MFC made it a lot easier to program GUIs.

There were some fishy things going on with Borland.  Several
applications written using Borland's compilers and libraries began
acting strangely when Windows 95B was released.

I think the real win for Microsoft was that they did a really good job
of making sure that they had all of the 32 bit applications from
Microsoft, AND provided excellent support 16 bit applications,
including some much better multitasking of "Command" Windows.
Ironically, this was largely due to the virtual machine licensed from
Quarterdeck.

The other thing Microsoft did very well was the COM objects.  The COM
model worked very well for Microsoft, similar to X11 "Widgets" but much
of the preinitiallization of secondary support functions such as
context sensitive help, exception handlers, and other "core" functions
assured that EVERY button, form element, box, and dialogue had SOME
form of help.  In addition, all of the hot-keys and core functions were
preconfigured.

But probably the most critical element was that Microsoft did provide
excellent Plug-and-Play functionality along with the Web Browser.
Windows 3.1 machines couldn't support the faster dial-up modems and
only supported 16 bit browsers.  It was possible to plug in the Win32
library for Windows 3.1, but it made Windows itself very unreliable.
The other big move, which really kicked Windows 95 into high gear was
the release of Windows 95B.  Many customers were irritated that Windows
95 was so unstable compared to Windows 95B, but Windows 95 was more
stable than Windows 3.1.

The really critical thing of course was probably Internet Explorer.
Even though it was actually Mosaic, and Linux offered it as well,
Microsoft's ability to recognize the importance of TCP/IP and the Web
Browser was critical in maintaining the market share and avoiding the
problems they had with Windows NT 3.1 and 3.5.

> The software may not have been as good or stable as under Unix, but it was
> a LOT cheaper to program and time-to-market was a lot lower.

There were a couple of problems.  The biggest one was that companies
like Red Hat and Yddragasil and Caldera had been so focused on getting
VLB and EISA and MicroChannel handled that they were caught off-guard
with the new PCI codes.  Most PCI peripherals used the same interrupt,
and most of the configuration depended on properly interpreting device
codes.  These codes defined the hardware vendor, the device number, and
the version number.  The problem was that it was very difficult to map
that a Novell card and an Realia card were related and could use the
same drivers.  This is why getting these codes from Adaptec was so
critical.

To Red Hat's credit, they could have sat on that information and kept
it tightly controlled, instead they published the codes in a way that
allowed other Linux distributors to properly operate with the new PCI
cards.

Plug and Play was such a critical issue for Microsoft that Bill
personally ordered the delay until Microsoft could offer Plug-and-Play
that was better than that offered by Linux.

As for the look and feel, or the programming models, it wasn't that
much harder to write code for Linux than it was to write code for
Linux.  It did however take a very different type of engineering.  Most
Windows applications were written for "busy-wait" multitasking and
depended heavily on threads and shared libararies with shared buffers
as a means of interprocess communication.  This is actually why so many
Windows 3.1 applications would not run on Windows NT 3.1.

Linux programming on the other hand, relied heavily on the kernel
functions, functions not provided by Windows at that time.  Ironically,
OS/2 DID offer most of those functions in their libraries.  Most Linux
applications were actually multiple programs, usually a GUI, a CLI, and
a library interface to the same functions if perameters were too
complicated, one could use the xrdb resource file - similar to the
Registry, in combination with text files.

Ironically, there were even some people who thought they could use
Windows 95 as a server, to replace UNIX or LInux servers.  Most of
these didn't go so well, because unlike Windows NT 3.x which had good
security and multitasking - Windows 95 was still using the FAT(32) file
system, which had no real security.  It was OK for a well protected
file/print sharing within a small workgroup - but managers quickly
learned that they could not leave shares open on their machines.

The most important thing Windows 95 did was provide Microsoft with the
leverage to force the OEMs, including IBM, into compliance with their
terms.  Microsoft took total control of the configuration from power-on
to the final display screen.  Microsoft had lost some credibility after
the NT 3.x debacle and they gambled hard and heavy to makes sure that
they had total control over the OEM market.  Keep in mind that when NT
3.x was released, Microsoft had done a lot of hype, spent $billions on
advertizing to get positive press coverage and to suppress coverage of
Linux, Solaris/86, UnixWare, and OS/2, but no one was betting the farm
on NT 3.x except Microsoft.  Many players were hedging their bets, they
were prepared to consider staying with Windows 3.1, flipping to OS/2,
Solaris, UnixWare, or Linux.  The OEMs didn't like OS/2 because that
would give IBM an advantage.  They didn't like Solaris/86 because that
would give Sun the advantage.  They didn't like UnixWare because this
would just be giving Novell the same monopoly previously held by
Microsoft.  Besides, Microsoft had negotiated a deal with Novell that
suckered Novell into withdrawing from the Workstation market.

When Windows NT 3.1 flopped, and 3.5 still didn't take off, Bill Gates
announced Chicago, and promised it within a year (Early 1995?).  But
unlike NT, Microsoft really had to scramble and come up with something
that could compete with *nix.

The irony is that most people thought that Windows 95 was going to be
as powerful as Windows NT, but fully compatible with Windows 3.1.
This may have been the greatest shell-game ever pulled.  While
companies like Red Hat, Caldera, and Sun were willing to offer OEM
licenses at very attractive prices on a non-exclusive basis, they
weren't getting the information they needed to support Microsoft's
"Plug-and-Play".

> In the end, it was the application developers that dragged people to Win95, 
> because
> this was the platform that had the cool software.

The problem was that Microsoft was only willing to give out information
about NT to those who promised to commit virtually all of their
programming talent to Win32 application development.  In many cases,
they even had to sign nondisclosure agreements which prevented anyone
working on Windows projects from writing *nix or OS/2 applications.

The problem was that many companies had been investing over 3 years of
nearly all of their programming talent into Winows NT, and their only
chance of getting ANYTHING back was to get something out for Windows
95.  Many software companies died on the vine.

Ironically, the big winner was Java.  Because so many software
developers were "bumped out" by Microsoft Bundleware and competitor
products, many turned to Java for the promise of "Write Once - run
Anywhere.  But again, Microsoft trumped Java by offering J++ and
bundling direct calls to Windows library functions.

But the biggest winner was the Linux/Unix server.  Many corporate
customers found that Web Servers powered by Linux/Unix Apache, PERL,
and MySQL - were a very effective way of getting lots of valuable
information where it was needed as quickly as possible.  By adding Java
Servelets, and Java Enterprise Edition - it became possible to
interface to legacy applications from a Web server.  This has resulted
in massive development in *nix environments and OSS environments which
are often supported with commercial applications.

> Of course, little did
> these developers know that Microsoft was planning to take each and every
> market that was in any way lucrative.

One of the critical elements in taking this strategy was excellent
intelligence.  By controlling the web browser, offering MSN, and having
Windows 95 provide certain information via internet, Microsoft was able
to identify the cash flow opportunities, and leverage them.  In
regulated industries, Microsoft found strategic partners who provided a
combination of cash and intelligence.  At one point, Microsoft was
getting roughly 20% of the commissions from numerous agencies ranging
from real-estate and cars to morgage, insurance, and banking.  Most
people were unaware of this because 20% of a 7% commission is still
just over 1%.  Microsoft's insider information gave them huge
advantages in the arena of investments and corporate partnerships.

> I like Linux and it is my preferred platform, but as long as Linux appears
> to be anti-CSS, it will not be the preferred platform for commercial
> software development.

This was once a legitimate issue, but over the years, Linux has become
much more commercial software friendly.  The Debian crowd is a bit
fanatical, but most of the commercially supported distributions are
very supportive of commercial software.  Software for Windows is like
"Off the rack" clothing.  If you have long legs, you look like you
heading for the flood.  If you have long arms, you look like a
gorrilla.  Linux software is usually more like tailored suits.  You buy
the core suit and then they hem the pants and the coat sleeves to give
you a really good fit.

These days, with high speed internet making it possible to download
entire CDs in less than 30 minutes, there is much more market
diversity, and much more competition available - especially in the
Linux market - where the market barriers to entry are much much lower.
In addition, there are more revenue opportunities as there are more
distributors looking to add commercial software to their offerings
list.

Another critical phenomenon that is fueling Linux is that so many Unix
applications have been ported to Linux.  Many of these applications are
high intensity commercial grade applications ranging from databases
such as Oracle, Sybase ASE, and DB/2 to CAD/CAM applications, media
production applications, and office automation extensions to Open
Office applications.

> It is the commercial software development, with
> their large advertising budgets, that brings the people en mass. Microsoft
> knows this and explots it every day to slow the movement across to Linux.

This is very true of "traditional" applications.  It costs about $3-5
million to get one release of one application onto the shelves of the
major retailers such as CompUSA, Staples, or OfficeMax.

The irony is that this "shut-out" has shriveled up the retail market.
Most of the media being sold on retail shelves seems to be most focused
on "trust" - anti-spyware, anti-virus, firewalls, and "copying"
software - and even most of this software can be purchased via the
Internet.  Retail sales is now a very small portion of the total
software market.  Good CRM programs and better financial transactions
have made customers more willing to place the order, download the
software, and enter the activation code.  In addition, more vendors are
willing to publish software with "trial periods" and have the customer
purchase varying degrees of capability by purchasing different
activation keys.  Even Microsoft will be using this approach with
Vista.  All of the code for everything from basic to Enterprise will be
included, but the activation code will determine WHAT gets activated.

The irony is that the system preinstalled on the PC may become
irrelevant.  Virtualization will become critical - making it possible
to switch between configurations - especially as configurations get
more complex and more and more applications are available for Windows,
Vista, and Linux.  It wouldn't surprise me if all three were considered
essential elements of the modern "Post Vista Release" PC.

> Ian



reply via email to

[Prev in Thread] Current Thread [Next in Thread]