by Mark Stone on March 18, 2009 10:10am

Several years ago I was helping a musician friend of mine set up a web site to use as a promotional site for his live performances. I opted for a simple, PHP-based Content Management System (CMS) that wouldn’t require any special knowledge for him to post new information, and would be – famous last words – easy for me to set up and maintain.

Not having done professional web development for some time, I quickly found myself on the phone to one of my PHP guru friends. After editing three configuration files (two for the web server, one for PHP itself), and adjusting to make sure we had the right version of PHP running with the right version of MySQL, we finally got everything working, and the CMS properly installed and configured.

This small example has several instructive lessons:

  • Getting software components working together properly is hard. The open source community takes real pride in tackling this challenge, having delivered tools like make, dpkg, and apt. Even so, simple cases can fail and mire you in complexity.
  • None of this is where web developers want to spend their time. The creative, innovative work is all done once you have the right components in place.
  • Absent perfect tools (which we’ll probably never have), you want to have the collective knowledge of your developer community working for you. Without my friend on the phone, I’d have had a much bigger problem on my hands.


So there’s something very liberating about seeing Microsoft offer better tools and facilitate better community collaboration so that web developers can spend more time on creative work and less on component complexity.

I’m referring specifically to the Microsoft Web Platform: Web Platform Installer 2.0 Beta (WebPI) and Windows Web Application Gallery, announced today at MIX ’09.

WebPI provides a single online destination and a single process for downloading and installing Microsoft’s freely available web products. By itself this may seem like no more than much-needed common sense, a good effort by Microsoft to help web developers get all the components they need working together more easily and more effectively.

What makes this development really interesting is the Web Application Gallery, an opportunity for web developers to participate and collaborate in a knowledge marketplace of shared components. In other words any web developer who follows certain basic guidelines can add their product to the Gallery, and be part of this ecosystem/community of shared web development activity. This is an opportunity not just to market your work, but share ideas and innovations with other web developers, and indeed let them build on your work.

Does that sound reminiscent of an open source community? It should. While there is no requirement that Gallery code be open source, the spirit behind this effort is very much one of collaboration. The Gallery is based on the idea that web developers collectively can advance their work more than each can individually.

Nor is this a playground strictly for Microsoft technologies. There are two supported web development frameworks in the Gallery:  .NET and PHP. Opening up the world of PHP applications for Windows is an exciting prospect. There is at least the possibility that something like Word Press on Windows Server will be a point and click install. We aren’t there yet. WebPI installs SQL Server by default, and MySQL is still a manual install. Many web developers won’t – or shouldn’t – care about the difference, but to some it will matter.

But this is definitely a step along the right path, one step closer to making PHP an operating system-agnostic language. Because a PHP developer should care only about building great apps.