Microsoft is watching. And it’s paying off.

I’ve spend the past few weeks taking a hard look at Ruby on Rails and PHP. I’ve move some of our content on Athlinks over the Amazon S3 services and our team is currently working to move more and more of it over there in the coming weeks - leaving us with only code executing on the Web servers. It’s not out of need, mind you. Our Web servers are handling things just fine. No, it’s really more a matter of fun. 

Over the past several years, life as a .Net programmer has become more and more frustrating, mind-numbing, and full of envy for our friends over on the LAMP stack. They get better, faster access to the tools that are making the Web work (Memcached, CouchDB, SimpleGEO only recently added a .Net library).

So, as I was investigating things for a project that we are working on at Athlinks, I thought that I’d check out Scott Guthry’s blog. If you don’t know, Scott is one of the great minds at Microsoft who has been working on their MVC product. We have built our API on the MVC2 engine and really do love it. It’s fast and lean and strips out a lot of what I dislike about web forms.

I REALLY loved it … until I started messing around with RoR and saw what lean code really looked like. I was pissed! Come on Microsoft! How long is it going to take you guys to figure things out? Why is it that you used to lead and now you just follow - and follow so painfully far behind? 

Back on point: so I popped over the ScottGu’s blog and started seeing references to MVC 3 and “Razor”. Oh dear. They chose a codename named after the last successful pre-smart phone. Way to go guys - draw a little more attention to your failings in mobile. (Although, Windows Phone 7 does look nice. Too little, too late? we’ll see).

“Ok”, I though, “I’ll bite. What’s Razor?”. Ooooohhhhhh. What is Razor, indeed. Before I go on - take a peek. It’s beautiful! Hey Scott, you should have code named this thing Double Rainbow

With Razon, the team has seemingly looked at every character and put it on the chopping block. Check out this snip from the blog post for example:

Even in this trivial “hello world” example we’ve managed to save ourselves 12 keystrokes over what we had to type before.  The @ character is also easier to reach on the keyboard than the % character which makes it faster and more fluid to type.

This was in reference to replacing the following traditional asp.net syntax of <%= variable %> with @variable. No angle brakets, no %, no closing brackets. Just a wicket smart parser and fewer lines of code. Dig it.

Razor and MVC 3 are currently in Release Candidate. We’re looking at it for some new things on Athlinks as well as our news product DiscoverMine. I’ll let you know more as I use it.

 Thanks for reading!