Microsoft has the upper hand because the majority of developers are familiar with at least one of its toolsets. But today that advantage means Microsoft has the most to lose. The company is pulling out all the stops to get developers to adopt Visual Studio.Net and Visual Basic.Net to keep everyone in the Microsoft fold. After all, the Microsoft empire is built on a foundation of third-party developers the company considers to be its primary customer base. If it can keep control over developers, the majority of the applications developed will be for Windows platforms.
But Microsoft is at a crossroads as the industry moves to the next generation of web-based development environments. Windows developers, particularly members of the Visual Basic community, are challenged when they move to Visual Basic.Net because it introduces a range of unfamiliar object models. Given that challenge, many Windows developers are investigating alternative toolsets based on Java and HTML.
Like any employee who gets a new boss and decides to test the job market because getting a new boss can be the same as getting a new job, Windows developers are wondering if they will be missing out on something down the road if they stay with Microsoft. What they could miss out on is something known as "pervasive computing", where just about any device that can register an IP address is now a target for application deployment. Many of those target environments, whether they are industrial devices or mobile phones, are going to be running something other than Windows. So by extending their skills beyond the Windows platform, a lot of these developers will significantly broaden their skills.
IBM, BEA, Macromedia, Borland and Sun all understand this and are actively courting developers as part of strategic efforts to marginalise the Windows platform. None of this will come together overnight, but these companies have enough cash on hand to be patient. And for the first time, they have a real chance because Microsoft is caught in major transition at the exact moment that other alternatives are maturing into robust environments.
It's too early to say how this battle for the developer loyalty will turn out. But one thing is for sure: in the world of developers, the new boss does not necessarily have to be the same as the old boss. For Microsoft, there is no viable client or server strategy unless developers decide to stay with the old boss.