Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Open letter to a Microsoft Evangelist
4 points by MichaelApproved on May 21, 2009 | hide | past | favorite | 3 comments
Dan Fernandez @ Microsoft,

Thanks for replying to the thread I created on the facebooktoolkit codeplex site entitled "Microsoft is ignoring .net developers" http://facebooktoolkit.codeplex.com/Thread/View.aspx?ThreadId=52107

I wanted to expand my concerns beyond the poor support of the Facebook toolkit to Wordpress and similar advantages PHP has over .NET. First, let me make it clear that I love developing in .NET. I created Yappler.com on my own with 100% .NET backend. My issues are with the open source and other framework advantages PHP has over .NET and not the actual language itself.

When I looked to add a blog to Yappler.com the best option I had was blogengine.net. Though it’s a decent CMS it still pales in comparison to Wordpress. Now I'm looking at forums. YetAnotherForum.net is good but vbulletin is probably a better solution.

As a programmer how can I justify to a client .NET as a backend over PHP which offers a powerful CMS like Wordpress? Some concerns, like the slightly higher hosting fees for a windows server, can be addressed but when it comes down to being able to use Wordpress, Facebook, vbulletin forums software for about $140 and other cheap and powerful off the shelf solutions .NET is just a very distant second.

I’ve been using Visual Basic and C# for over 15 years. It saddens me to say that if I wasn’t a programmer myself and started a new business today there is no way I’d go with .NET. Please help me and other loyal .NET programmers catch up to the advantages of PHP.




Microsoft wasn't even an option for me when I considered blogging. I love the company, but I'm not sure why I would even think of them.


Hey Michael,

You're preaching to the choir :)

Below are my personal thoughts, I'm not a member of the ASP.NET team as I'm now in the Developer & Platform Evangelism team, but I am pretty familiar with our PHP story, the history of Starter Kits, and the Facebook Developer Toolkit, so take my words "as-is" if you will.

For some context, back in 2004, when we were planning the release of Visual Studio 2005, one of the things the teams wanted to do was to build Starter Kits, pre-built sample applications for common Windows and Web tasks. In the previous years, some folks had build a set of Starter Kits, the iBuySpy kits, including the Community, eCommerce Starter Kit and the Portal Starter Kit for basic Web site functionality - http://www.ibuyspy.com/downloads/archived/starter-kits/porta.... The Portal starter kit ended up evolving into the DotNetNuke Starter Kit and was/is considered a big success. Other kits, like the eCommerce and Community kits basically died, while other projects became their own businesses like telligent's Community Server which includes forums, blogs, etc.

For the 2005 release, we launched the Personal site, Time Tracker, Classifieds, Small Business, and Club Site starter kits. Some of these kits were more successful than others, but when we built them, they were designed to work standalone, so in terms of architecture there is duplication and each site's features are implemented differently. Some of these kits had community members independently run with them too, namely the Club Starter Kit which is now published as a separate Codeplex project.

While we did publish the kits, the amount of feature support we put into them varied widely. Within one kit you would find some features that were really polished while other features weren't fully implemented. In comparing them to WordPress, there really is no comparison as WordPress has years of new features/functionality built into it.

Going forward, to encourage apps being built using ASP.NET, the team built the Web Application Gallery as an open source repository for apps - http://www.microsoft.com/web/gallery/default.aspx. I personally haven't used Umbraco, but there could be one of these applications that stand out and we're certainly encouraging community participation here.

Outside starter kits, the ASP.NET team has been shipping reusable page parts as ASP.NET or AJAX controls instead of full-blown apps that you customize. The controls are atomic and can be easily reused across a site, so rather than building a rich-text forum editor, a password strength control, pie/bar charts, or a slideshow, you can use pre-built controls http://ajaxcontroltoolkit.codeplex.com/. It's a different approach than what PHP does, but in terms of customer adoption and feature completeness, I would consider these successful too.

In terms of competing against PHP, there are a number of areas I think we need to improve

- Awareness: Like the first comment here suggests, people aren't even aware that Microsoft has a Web tools offering - Motivation: What can we do to entice developers to build on our platform? A good example of this is the BizSpark program which provides free Microsoft software and a sponsor to help Microsoft startups succeed, but there's a lot more we can do here, - Access: How do we make ASP.NET the easiest platform to get up and running on. A good example of this is the Web Platform Installer which makes it dirt simple to install the tools, database, and the app and get it up and running on your PC. - Technology: One thing that I think PHP does have on ASP.NET is simplicity. For new developers, object oriented programming can be very confusing, compared to PHP's procedural style. Further, reuse in PHP is as easy (or ugly) as copy/pasting functions into your file, while with .NET, you have different libraries who themselves may be built with different dependencies which complicates reuse. I know the teams are aware that our Web stack could be simpler and it's something they're looking to address in the future. - Learning: This is another area where we need to improve, but going to http://msdn.com as a new Web developer can be pretty intimidating. The majority of content is written assuming you're already a .NET developer. This is one thing Jacqueline Russell on my old team had tried to improve when she launched http://msdn.com/beginner so that we could have a site dedicated to new Web developers covering everything from the absolute basics to building your first Web site. I still feel there's a lot we can do to improve how we build documentation and tutorials.

There's a lot more here that I won't delve into, but your point still stands, we should build (or sponsor open source developers) to build a better, open source content management system that can easily be reused. We could also do better about identifying what the scenarios our customers want us to build. One thing to keep in mind is that we do have lots of established places to give feedback on our tools and platform, namely http://connect.microsoft.com where other developers can comment and "vote-up" suggestions like yours. I personally haven't seen any customer request that Microsoft build a content management system or a forum tool in there, but if you did suggest it and discuss what key features it should have, I think there would be a groundswell of developer support voting up your idea, which in turn helps drive where the teams put their resources.

Just my .02, -Dan


Umbraco is a good program but it costs over a thousand dollars just to get started and thousands to maintain. One of the core advantages Wordpress and other similar programs have is the hobbiest programmer/designer building plug-in after plug-in to keep the application on the cutting edge. The price of this application keeps it out of the hands of the people who improve it. How many design template sites are there for Umbraco? Now how many are there for Wordpress? There is no comparison.

BizSpark is wonderful but it's preaching to the converted. It's not going to convince a teenager to learn .NET over PHP. New and young developers have little incentive to learn .NET and without fresh new programmers development is getting stale and expensive.

Put yourself in the shoes of a new developer. You have PHP on one side and .NET on the other.

PHP offers over .NET: Dirt cheap hosting. Easy setup/install (text editor and ftp). Major software like Wordpress - Free. Fully supported and working toolkits from Facebook and others. Thousands of free/cheap design templates for PHP based software.

To me there's no question that .NET is a more powerful language than PHP. Reusable code, ability to debug with ease, fantastic FREE code editor (VS) and faster code execution are just some of the advantages .NET has. But .NET lacks the major prebuilt software to work with. Most code in .NET will cost a lot of money initially, be half built and half supported through open source, have little extended community support or just flat out not even have a competing version.

My original point of Microsoft ignoring .NET developers was based on the abandonment of the facebook toolkit and a lack of software that competes directly with PHP based CMS. Your message shows me that maybe Microsoft isn't actually ignoring the programmers (building starter kits and such) but maybe they're just not understanding what we need.

Why can't Microsoft just rip off Wordpress and other popular PHP software? Just copy it exactly, feature for feature. Don't try to make it better by creating thousands of extra features, just make an exact copy of Wordpress and other toolkits.

Dan, thank you for replying both here and on the Facebook toolkit site (http://facebooktoolkit.codeplex.com/Thread/View.aspx?ThreadI...). If I am truly preaching to the choir then help me by getting more Microsoft people involved in this discussion. Maybe we can make a difference here.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: