MVC 3, Razor, and My 1 Cent

So a while back I decided I would jump right into MVC 3 to see what’s new. Now the first plan I had was to still use my bestest friend ever, Spark. After some thought (Very little as thinking is too resource intensive) I decided I would take on Razor with it. Why not? It’s probably going to be the new default standard engine so I better get a feel for it.

There’s an old saying in Tennessee — I know it’s in Texas, probably in Tennessee — that says, meet the old boss same as the… meet the boss… New boss is the same. I can’t help but feel like Razor isn’t really a step revolution as it is just an evolution. Sure there are newer features like replacing the <% with a @ and… well hey you can replace the <% with an @.

Ok so maybe I’m being a bit hyperbolic but in all honesty, why not be? Now I know I’ve been hard o… mean to Microsoft in the past but it’s out of respect really. I’ve come to expect Microsoft to really have its ducks in a row. After all, Entity Framework 2 was a huge improvement over 1 and I think it’s safe to say that C# has come a long way. Razor just feels like a half hearted attempt to bridge the gap between the old MVC engine and something like Spark… lovely, lovely Spark oh how you make me so happy.

After using it for a couple months, just not really impressed and the only thing that I would say it has over Spark is intellisense on the front end, and to be honest, that’s not something a good programmer (IE Not me) should rely on and therefore isn’t really a +1 in the win column.

This is at best baby steps. I expect more from a company like Microsoft where smart people are grown in smart people farms. (You know, free range organic smart people. No steroids.)  Average Joe’s like me look to Microsoft to really just shake the ground beneath me and make my life better at work because let’s be honest, it’s painful convincing Microsoft hardened programmers to adopt something like Spark because it’s not Microsoft. (Holy run on sentence.)  I’m tired of seeing cut up HTML. I’m tired of seeing yellow highlights. Is it too much to ask to take the Spark pseudo HTML look and run with it?

This may seem like a petty thing to hit on, and maybe it is. After there were improvements to the MVC viewing engine with the introduction of Razor, I can’t deny this. Maybe I just have too much love for HTML in the first place. But even something in line with Razor (Uses a similar look and feel) such as Pylons for Python is better (In my opinion, which with $3 still can’t buy you coffee) and that’s completely free to use. IE doesn’t require a business to buy a 10k IDE. (Yeah I know there are alternatives that are a lot less but really, how often do you see businesses going the non Visual Studios route?) I want Razor to sell itself to me. (Take that sentence however you want to.) I want it to make me think, “You know what, it’s not perfect but it’s a damned good replacement for X.” (Sort of like Entity Framework 2 did or MSTest even.) I want it to just hit me over the head with a club and drag me home by the hair. Right now I just feel like it’s doing the “yawn to arm around the shoulder” move. You know, skip that thought since I’m not sure I’m really comfortable with the direction I’m taking these analogies.

Point is, I expect more from the mothership. The best thing I found with Razor is the ability to use dynamic models and that’s really more on .Net 4.0 than Razor. (Which is a feature I really, really like despite the confused tone of the dynamic model post.)

I suppose my view is a bit tainted though since I pretty much take a lot things for granted since I have used Spark for over a year and can barely remember the original MVC view engine. I suppose it’s possible if I had gone from the old view engine to Razor I would have a different view. I suppose that I use the word suppose too much.