Larry Osterman's WebLog

Confessions of an Old Fogey
Blog - Title

Digging into the history bin (AKA: Microsoft Developer says that Windows is useless)

Digging into the history bin (AKA: Microsoft Developer says that Windows is useless)

  • Comments 14

As I was writing my “25 years of Larry’s history at Microsoft in 1 year chunks” blog posts, I spent a fair amount of time digging through my email archives (trying to figure out exactly what happened at what time).  During this, I ran into a link to a post I’d made on the Info-IBMPC mailing list mailing list back in 1992:

Date: Thu, 12 Mar 92 12:44:39 PST
From: lar...@microsoft.com
Subject: What do you do with your windows? (V92 #36)

|| >From: m...@Violin.CC.MsState.Edu (Mubashir Cheema)

||   I recently acquired Windows 3.0 and I don't seem to understand one
|| thing.  What is it for?  What do I do with it?  What major advantage
|| does it have over Dos?  (I don't see any except being able to use mouse
|| and also the thing is bit more colorful) I think it was made for lazy
|| people who couldn't learn couple of DOS commands.

||   Don't tell me I could multi-task with it. I've been using Amigas
|| extensively

I've got to jump in here, even though I suspect that there will probably be some form of an "official" response from MS if anyone in the DOS/Windows group is listening...... :)

I'm going to be brutally honest about this one. Basically, Windows by itself IS pretty useless. The thing that makes Windows great is the same thing that has made DOS the most popular operating system in history. It's the applications that are available for it.

GUI's (Graphical User Interfaces) have been proven to be significantly easier for users to understand for beginning users, and are arguably the wave of the future. I don't know of a significant operating system being introduced for the PC market that doesn't have a GUI available on it, be it PM, X, GEM, or Windows. Windows is arguably the best GUI available for DOS based on what I consider the most significant criteria: What applications are available for the platform.

Consider the list of available windows apps: Excel, WinWord, PageMaker, Corel Draw, WordPerfect, Lotus 123, etc just to name a couple off the
top of my head.

You also hit on one of the significant reasons to use Windows - Multi-tasking.

Windows is a non pre-emptive multi-tasking operating system.  On a 386, it does an ok job of multi-tasking multiple DOS applications, but on a
286 it functions as a simple task switcher like DOS 5 does.  It really shines when multi-tasking Windows applications however.

In addition, when you couple the multi-tasking capabilities of Windows with a windows mechanism known as DDE (for Dynamic Data Exchange), you
can generate some truly incredible synergy between Windows applications. With Win 3.0/Win 3.1 Microsoft has introduced a concept
known as OLE (Open Linking and Embedding) which allows you to cut and past from multiple "applets" allowing applications to take advantage of
the capabilities of other shipped applications.  This allows an applet like an equation editor to manage all the information about formatting
an equation even when the equation is embedded in a word document. With OLE, you can simply double-click on the object and bring up the
"agent" that manages it (in my example, the equation editor).

For application developers, Windows gives developers the ability to develop their applications without knowing anything about the
underlying hardware of the machine - a windows application that runs on a machine with a CGA adapter will also run on a machine with a graphics
accelerator that runs in 1024x1024 with 24 bits of color.

In addition, when you write an application for windows, your application instantly will support literally hundreds of printers
transparently - Windows does all the work for you.

To re-iterate, Windows as a stand-alone product is not extraordinarily interesting - there are lots of productivity packages that provide
similar functionality to users, the real benefit of Windows is the applications that run on it.

I will also point out that there are more than 5000 Windows applications available today and still more will come out with Win 3.1.
The available windows applications span all ranges of applications from games (Microsoft's Entertainment pack, Berkley-Soft's After Dark, and
Sierra's Laffer Utilities for Windows) to Spreadsheets (Microsoft Excel, Lotus 1-2-3) to Word processors (Microsoft Word For Windows,
Lotus Ami), to Desktop publishing (Aldus Pagemaker, Microsoft Publisher), to presentation graphics (Microsoft Powerpoint), to
development tools (Microsoft Visual Basic) etc......

Larry Osterman

Disclaimer:  The opinions above are my own.  They are not necessarily the same as those of Microsoft.  I only work here.

Remember that this was written back in 1992 after Windows 3.0 had come out but before Windows 3.1.  There was no Win32, no web browser, no multimedia support, none of the things that we all take for granted in a modern system.  Back then a display card that supported 1Kx1K with 24bit color was considered a monster display card (and hard disks still came in “megabytes” – I remember buying a 2G hard disk back then for about a thousand dollars).

Reading this again, I find it vaguely funny that in many ways my feelings about Windows haven’t really changed that much in 18 years – the value of the Windows platform is STILL the applications available for that platform (although the number of applications has grown from the 5000 or so back in 1992 to several million applications).

  • interesting post.....

    the things that dont change, indeed!

  • Great read Larry, thanks for sharing :)

  • I love these recent posts!!

    Thanks for sharing from an inside perspective.

  • Weird that he would say he used Amigas extensively when the Amiga used a mouse and had a gui.

  • Gabe: Ya know, I never even noticed that :).

  • I think you hit on another strength of Windows with those points about printers and 24 bit graphics cards - it's hardware support remains vastly superior to alternative OS's.

  • amiga had a mouse but all the folks i knew ran it CLI only. It had a great command line interface that had some similarities to unix. I didnt even

    one thing i remember: standard folders for important directories had drive mappings. s: i believe was ALL your config files... C: was where all shell commands were stored

  • But the amiga was a full pre-emptive multitasking GUI+CLI OS.  In 1985. By 1991 (release of 2.0) it had seen a graphical revamp and had fun things like Arexx  and Datatypes (IIRC, datatypes, general loader/saver plugins, might have been 3.0).  In context, I  think that's his point - windows and its co-op multitasking wasn't exactly amazing to him.  Though it was still better than raw MSDOS.

    Ironically, a lot of amiga users _assumed_ other WIMP GUI platforms of the era were pre-emptive multitasking because they looked vaguely like AmigaOS, and Commodore, the famously awful "cold dead bird" marketers of the industry (there's whole books written about their managerial idiocy), never capitalised on just how ridiculously far ahead the amiga was compared to other comparably priced microcomputer platforms either.

  • Great post, indeed! You hit the nail and almost everything you wrote still holds today. Except maybe for the OLE part, which I'm not a big fan of... ;-)

  • 16 bit colors maybe, but I don't think display cards in pre-Win95 days can handle 24-bit colors.

    If my memory doesn't fail me, SVGA (which is not a standardized at all at that time) is becoming standard around the time of Win95 release. So at that time, most people should have display that at most supports 256 colors only.

    (In my computer that runs DOS 5 + Win 3.1, it has Hercules graphics card only)

  • Cheong, I had a Packard Bell 486 that came stock with Windows 3.11 that had full 24bit color. It used an onboard Cirrus Logic chipset, of what model I have no recollection... but it certainly handled 24b just fine.

  • As someone already pointed out Amiga had pre-emptive multitasking way before Windows.

    Windows multi-tasking, as well as task and thread management still sucks even in Windows 7 -- first of all Task Manager *still* cannot kill zombie tasks, and if you accidentally set realtime priority to a task that starts using 100% of CPU time the only thing you can do is reboot by hitting the switch. Dynamic CPU quantums suck, anything more than 20ms for task scheduling sucks. Explorer sucks because even in Windows 7 it hangs when you open My Computer after inserting unreadable CD or DVD. Still too many things do not work as they should even after 7 versions of "improvements". Vista and Windows 7 have idiotically low file management performance. Deleting (not moving to recycle bin) only 600 files per second on defragmented 10,000 RPM drive is damn slow.

    The worst thing is that people at Microsoft do not show any incenitive at fixing those dragging issues -- they introduce new ones and kep toying with GUI endlessly forcing people to retrain themselves and lose productivity each time new OS version is out.

  • Me: Did I ever mention Amiga in my post?  And Windows didn't have preemptive multitasking until Win32.

    MSFT has spent a LOT of effort towards making it possible to kill zombie processes.  At this point the only thing that should prevent a process from going away is if a 3rd party driver has a reference to the process object.  And the system can't fix that without introducing a serious risk of bluescreen.  I'd rather have a zombie process than a bluescreen.

    Setting realtime priority to a task requires admin privileges and part of the rules for realtime priority is that a realtime thread can monopolize the CPU.

  • Larry,

    Windows could indeed be improved in its handling of runaway code. I don't know if Vista/Win7 has any improvements in that, but when a IE instance is running away (which happens a lot with IE6/7/8 and msnbc.com and other Jscript intensive sites) it really makes it difficult to switch to another session. The FUS screen seems to be running on default priority (I'd rather had it running with higher), and also task manager by default seems run at default priority - if I use a keyboard shortcut for that, I'd appreciate if it starts on higher priority.

    I've read that non-active applications get their default priority reduced. This doesn't seem to happen.

    Windows scheduler could really benefit from automatically de-prioritizing runaway threads (if a thread uses up its time slice many times - it's a runaway). This could even apply to realtime threads. There is really no reason a realtime thread should use up its time slices all the time; if it happens, it should be kicked down automatically. This should be controlled by a registry setting, to give an option of old rigid scheduling (which is only needed in very few cases, anyway).

Page 1 of 1 (14 items)