So how can new and alternative OSes thrive when the big bully on the block keeps getting stronger? When it becomes less and less likely that mainstream software developers will support a non-Windows platform?
The internet has already made a big difference, and if Netscape hadn't been decimated, it would have made an even bigger difference. Many tasks that used to require a platform-specific application, like a loan calculator or a simple statistics engine, are now available via a web site. Sadly, web-based applications, though convenient, lack in usability in comparison to Windows-based apps, lacking cascading menus and having awkward refresh camability, though advanced web technologies ameliorate that somewhat. Ironically, but not accidentally, some web sites that use technologies that give web sites more Windows application-like properties are available for Internet Explorer only. Netscape was moving toward offering developer tools for its browser that would have made the (Netscape) browser the new operating system, with all simple applications running through the browser. I think that with the internet becoming more central to the computing experience, this will continue to happen slowly, but Microsoft has had a big victory in preventing Netscape's intrusion into its territory.
There's another barrier to makers of simple applications (like Tax Software) using the internet as a delivery vehicle instead of Windows-based applications, and that is that internet users have been accustomed to everything being free. People will go to the store and buy software for $50 when they would resist paying $50 to get the very same functionality from a subscription web service. This is changing little by little, but it's a barrier to the producers of simple Windows applications moving 100% to the web. Luckily, the elimination of distribution issues and greedy middlemen allow producers to charge much less for their software but make more money. Eventually, I predict that most of the rinky-dink applications that currently only run on Windows will move to the web. Hopefully, not to IE-only web sites.
Truth is, most applications that people will need to run every day will have to be developed specifically for the platform that they're running on, so in order for an alternative OS to be usable every day, there will need to be an active developer community, driven either by economic opportunity or idealism -- probably a little of both. If the OS has really good development tools, that helps a lot. Microsoft will still be in the driver's seat a bit, with its control over the Office file formats and aggressive "embrace and extend" behavior vis-à-vis standards, but again, an active developer community and good developer tools will lessen the negative impact on the average users of the alternative OS and help them work and play well with Windows.
For applications where a work-alike is not feasable, such as games and high-end video editing software, there isn't really that much that the alternative OS proponent can do except try to run the Windows (or Mac) version of that program using some sort of emulation. If a platform becomes popular enough, the vendor might be persuaded to port it, but it generally takes a large and proven market for a vendor to make the investment.
Various cross-platform development environments have been introduced over the years, and have met with some success. Java has certainly come the farthest economically, especially on the corporate server (where incompatibilities between Unix versions have always been a headache). Java on the desktop hasn't exactly reached its potential, partially, of course, because the last thing Microsoft wants to see is a successful cross-platform development environment for the desktop. Java isn't really a development environment, but a separate platform that runs on top of the host OS. This is roughly true with successful open source platforms like Perl and Python.
Tools like Metroworks give developers some shortcuts to developing for both Mac and Windows, but one of the hallmarks of really good software is tight integration with the UI elements and features of the OS and other applications on the platform, so a one-size-fits-all approach to multi-platform development doesn't produce good results. You'll end up with the oft-maligned Microsoft Word 6 for Mac, which looked and felt like a Windows 95 application. Mac users were not impressed, and as a result, many users kept using MS Word 5.1 for Mac until Mac Office 2000 came out, created, as I recall, by all the ex-Apple employees that Microsoft lured away to staff its Mac software unit.
The point I'm trying to make is that user interface matters, and developer have to pay particular attention to a platform's UI specifics when designing software. That's one of the reasons that it's rarely easy to port software from one platform to another, even if the underlying engine ports easily.
There's a good reason for application developers to only write for Windows, but Windows is far from being the perfect operating system. We'll continue to strive for something better, but while we're striving, we all have to get some work done. For that, we'll need software. The power that Microsoft has over the software industry is undeniable, but there is still room for alternative OSes to thrive and stake out a big enough market to make developing software worthwhile. It's not the overall percentage that's so important, but the real number of users who might potentially buy or use a particular software product.
The internet, with its capability to replace many small applications and act as a means of distribution and support for small software developers has probably been the salvation of the alternative OS, since Microsoft's monopoly would be even more powerful without it. Linux, for example, would probably barely exist were it not for the community of developers who discovered and developed it using the internet to connect with each other. The internet will probably continue to undermine the importance of any particular platform and become the de-facto "operating system" of the computing world, though Microsoft will fight this to its dying breath.
The desires and dreams of computer users will ultimately prevail over the crass demands of corporate accounting, however, and if we demand ever-better, ever-more-interconnected computing devices, then there will always be space for alternative platforms at the leading edge. Some of our favorites may succumb and perish, but others will evolve and thrive. It will be exciting to see what the next 30 years will bring.