Monday, July 19, 2010

MVP != MicrosoftFanBoy

I was pleasantly surprised last week to hear that Microsoft awarded me an MVP (Most Valuable Professional) for my work in the community with ASP.NET MVC.

Thank you to everyone who nominated me, and all the community members who tried not to fall asleep during my presentations and talks ;)

And now for the official logo...


One of the most interesting things about being an MVP is participating in the MVP Global Summit. It's a chance to meet other professionals from around the world whom are passionate about finding the best way to use Microsoft tech to get the job done. Looking forward to attending early next year.

Now that I've basked in all this honor and glory, on to the real content of this post...

Does MVP = Microsoft fan boy? No - at least not from what my discussion with Simran Chaudhry, the Microsoft employee in charge of the program in Canada. Since it's a Microsoft sponsored program, there is a code of conduct that is expected that sums up to basic professionalism.

MVP doesn't mean you're singing Microsoft's praises and pushing product. You're free to disagree with Microsoft tools/frameworks, etc from a professional point of view - the key is to be professional about it.

Example - it's well known to many of my colleagues that I feel Subversion is superior to Team Foundation Server when it comes to source control. Having used both on different projects, Subversion is faster for checkins, updates, and merges. Also, Subversion is a lot easier to use when the server goes down or you're working remotely in a disconnected state, like when you're on an airplane for example.

However, I realize that a lot of corporate environments use it for MORE than just version control (i.e. issue tracking, project workflow, continuous integration even). I learned this while working for the Enterprise Architecture department for a client last summer. There is more to tool choice than just what the developers finds best. Yes, the world doesn't revolve around us.

So while I'd rather use Subversion (or Git if you're a cool kid) there are advantages to TFS from an Enterprise Architecture point of view, like looking at critical bugs raised across the 80 projects running at your company. I also know that TFS 2010 is way better than 2005, so Microsoft is improving their game. Maybe in 20xx TFS will be on par with Subversion for source control?

In the end a healthy debate and feedback to Microsoft will ultimately help them make better products that serve their customers. This is another core part of the MVP program, being a channel from the community back to the Microsoft product teams.

You might say "yeah but Microsoft is just in it for the money." So what's wrong with that? They are running a profitable business, just like all of their competitors - all who have also had their reputation muddied in the pursuit of profit. Look at Google - have you read through their latest privacy policy? Did you know that Facebook owns the rights to all the photos you upload of you and your friends getting smashed?

Even open-source contributors make a profit - look at JBoss or Firefox! My friend Clinton Begin didn't make millions off iBatis, but he certainly helped his career along by doing it. That might not be their primary motivation, but it certainly is an outcome. Do you think that Linus Torvald will ever have a problem finding a great paying job? I say - good for them! They're helping the community while helping themselves.

So ends my rant. Please post comments if you disagree :)

Monday, July 12, 2010

Even Microsoft knows that IE6 has Past its Due Date

Update: The link below is now broken. Microsoft has removed the site and now is redirecting to an IE9 page.

A Rare Moment for Microsoft Advertising.

Alternatively, there are a number of competing browsers for those of you who have old milk...Firefox, Chrome, Opera, and even Safari. Internet Explorer 9 also promises to support HTML5 specifications, so it's a good option as well.

The most surprising thing in all of this is that large corporate IT departments still refuse to upgrade browser versions every year, despite security and usability risks. I think there is a business in there for someone who can figure out how to sell to big IT departments that browsers need upgrading at least annually, if not semi-annually.

My colleague Mike Mason and I spoke about this in our talk "Does Anyone Even Know What this Thing Does?" earlier this year. Companies need to take platform road mapping (and yes, the browser is a platform) more seriously. They need to make sure they don't end up in a legacy system situation earlier than they need to.

Do the right thing, upgrade to a modern browser!

Monday, July 5, 2010

Sharpening Your Markup with "Razor"

ASP.NET MVC has a new View Engine that it will ship with. The codename is "Razor" and to boil down Scott Guthrie's post here is my brief summary.

Razor condenses and makes the markup more concise, while preserving support for HTML Helpers.

<a href="@model.Id">@model.Name</a>

//Or the HTML Helper Version
@Html.ActionLink(Model.Name, Model.Id)

Essentially it replace <%= and %> with @.

There are also improvements to Master Pages, which are called Site Layouts which further reduce markup. All in all it feels much more Rails like.

The engine will be going through a public beta shortly.