Should Visual Studio Support PHP Development?
By Jonathan Goodyear
Before I get any further into this column, I want to make it perfectly clear that I don t have any inside knowledge regarding this topic and the opinions expressed are purely my own.
OK, now that we have that out of the way, I want to broach a topic that may be a bit controversial. The question is: Should Microsoft actively support PHP development in Visual Studio? Why would Microsoft do such a thing, you ask? There are actually several reasons, which I'll outline here, and then you can decide for yourself.
The first reason is that Microsoft really doesn't make money from ASP.NET per se. It makes money from tools that are used to build ASP.NET applications (i.e., Visual Studio), applications that are built using ASP.NET (e.g., SharePoint), and Windows Server licenses that are used to host ASP.NET. That third one is important. While Microsoft may "prefer" that you build your solutions using one of their languages (like ASP.NET), it really doesn't mind all that much if you use a different language but still host it on Windows Server. This is evidenced by the fact that Microsoft implemented FastCGI for Microsoft IIS and continues to invest in efforts to ensure that PHP applications run really well on Windows Server.
If Microsoft were to throw its hat in the ring with PHP, I am quite confident that it would produce the best PHP development environment. This, in turn, would attract more PHP developers to the Windows platform which (at worst) would mean more PHP apps hosted on Windows Server and (at best) would mean that more PHP developers would be exposed to that other web development language that Visual Studio offers ASP.NET. Microsoft could even use the Dynamic Language Runtime to build a bridge between the PHP language and the .NET Framework, similar to what others have done with Python (IronPython) and Ruby (IronRuby). There was a fleeting effort to create an IronPHP implementation for Mono on the Linux platform a few years ago, but it didn't have the energy behind it to succeed. Microsoft could provide that energy.
The third reason I think that Microsoft would do well to build support for PHP in Visual Studio is that it once again gives Microsoft a basic "stepping stone" web development language to get scripters and hobbyists up and running. Yes, I realize that Microsoft has done a tremendous job of attracting this same crowd through its Express SKUs of Visual Studio and through online community efforts. However, ASP.NET has evolved over the past several years into an immensely powerful (and large) language and framework that can be very intimidating to newcomers; even though most of the grunt work is handled for you behind the scenes. PHP resembles classic ASP, which could quickly get you into trouble with code maintenance issues, but it was so wonderfully simple to begin with. I had thought that perhaps Microsoft might shoot for this simplicity with the ASP.NET MVC Framework, but MVC Frameworks (in ASP.NET, PHP, Java, Ruby, or any other language) require discipline in their implementation and are really meant for developers who want absolute control over their applications. The veneer of simplicity in the early ASP.NET MVC Framework versions really couldn't hold up because it wasn't the real goal of the project.
At the end of the day, it s probably not very likely that Microsoft will get in the PHP game on the development front, but I really think that it could be a move that paid long-term dividends if they did. Aside from doubling the size of the software development community surrounding Visual Studio, the adoption of PHP would continue to reinforce the theme that Microsoft adopts and embraces technology standards when they are a good idea. And it's not an idea that we ASP.NET developers need to fear, either. Microsoft released Silverlight and there's still plenty of room for ASP.NET, right? In fact, this magazine has plenty of articles that outline how ASP.NET and Silverlight can work together and I think that both technologies have a very bright future. I do think that PHP would be a good addition to the Visual Studio lineup for web development, though.
What do you think?
Jonathan Goodyear ([email protected]) is president of APSOFT, an Internet consulting firm in Orlando, Florida. He is Microsoft Regional Director for Florida, an ASP.NET MVP, a Microsoft Certified Solution Developer, and a contributing editor for asp.netPRO.