Since Microsoft has moved their product cycles to ~3 years, it seems each month a new flavor of something is shipping, with supplimental tools surfacing every few weeks. I, myself have noticed a change in the past 18 months or so, really since the Google threat emerged. There seems to be a new sense of urgency within MS, more forward discussions and even some support for the open-source community!
It almost seems as though MS is softening is stance on proprietary issues, blurring the lines within the developer community to support popular trends with RIA and ruby. Looking back several years, MS seems to perform best when there is healthy competition in the mix. The most obvious threats, from my perspective remain, Google and Adobe.
Google continues to push the envelope on several fronts, most notable to the development community may be its Open Social platform. While MS has offered support to other social communities, such as Facebook, support within still seems to favor other flavors, such as php, ruby, even java using REST vs. SOAP. While thats a somewhat minor issue, MS developers are accustom to rich documentation, which FB, and others (Google, Amazon, etc.) still lack. Hence, the early adopters remain the open-source folks, those accustom to rolling their own solutions, leaving the MS devs a few laps behind.
RIA (Rich Internat Applications) has become a popular trend, possibly gaining momentum as an outcome of Web 2.0, whereas slick interfaces and ajax helped to move awareness forward. RIA is much more than that though, looking back, requires credit to shockwave, flash and maybe even dhtml? Enter Adobe. Adobe acquired Macromedia several years ago, strengthening its already dominant position in the designer community. Its latest activities surround a technology called FLEX, now in its 3rd iteration. MS and Adobe are both competing for this audience, MS with its WPF and Silverlight technologies, – both lay claim to support for the “open source” community, offering cross-platform frameworks, which require proprietary toolsets (flex builder, blend/visual studio, respectively) to truly leverage the technology.
Social Apps and RIA both offer significant, albeit unproven, opportunity. Early indication is, some form of both will power the next wave of internet applications, and all the major players are competing for the attention of developers, whom will ultimately build the killer apps of tomorrow. MS is uniquely positioned to capitalize on RIA, having a mature platform in .net, deep dev community, and an increasingly impressive offering in Silverlight 2. Things havent fully played out yet on the social side of the house, but its clear MS is ramping up resources, regionally at community events, and globally with projects such as PopFly and Moonlight (a joint venture with Novell).
Another example may be its growing support for Agile. Agile, derived heavily from the eXtreme programming (XP) camp, is another MS example of being late to the game, but coming on strong with rich toolsets, with Team Foundation Server (TFS). TFS, now in its 2nd iteration, improves collaboration among leading-edge development teams, with diverse roles, source code control and process templates. Now featuring better support for Continuous Integration (CI) and Test Driven Development (TDD) showcases MS as a player within this emerging methodology.
The last piece of the puzzle surrounds the mashup community, whom in my eyes are truly at the forefront of social apps, RIA and the elusive web desktop. In this space, the open-source guys still dominate. Attend a barCamp, unconference or user group on the coasts and you’d almost forget Microsoft (.net) and Sun (java) existed. Here, Macbook Pros and Ruby rule the landscape, and thats ok. MS, other than pioneering the OS, has arguably never been at the forefront, but instead have taken calculated risks entering markets long after demand existed – where they’ve become quite successful.
So, does the latest advancements in web technologies, combined with competitive alternatives force MS to adapt? Absolutely. Who is going to win? The development community at large, by having legitimate options to choose from when building the next big thing. Let the games begin!