The Jason Salas Experience

Guam's Mr. Media - making people think, making people laugh, pissing people off

Saturday, August 12, 2006

Could we see ASP.NET on Rails?

Last year, my friend Craig Shoemaker interviewed Thomas Tomiczek, a developer who is REALLY into object/relational mapping (it's a good listen). With the rise in agile web development frameworks like Ruby on Rails, Django and Seaside, this makes me wonder if more formal, enterprise-level frameworks like .NET and J2EE would follow suit and develop their own ORM-based solutions. I've blogged about this before, and I can't get it out of my head.

I hope DHH plans to patent Rails, because this might lead to some Microsoft offshoots. But when you think about it, the general model that ORM produces is tailor-made for use in any number of languages - his own implementation just happens to be specific to Ruby. In fact, Googling the topic of ASP.NET on Rails returned some very interesting results from people who apparently have considered such a prospect, too. The general consensus at this point seems to be that LINQ and/or the offspring DLINQ would serve to be the final destination (although Jon and Paul each pose good arguments to the contrary in the case of the latter).

I'm projecting based on history that a talented Microsoft dev out there, if not before Microsoft itself, would whip up an ORM-based solution to let people interface with ADO.NET logic, possibly through the existing Data Application Blocks, to interface with data. This would assumedly result in greatly reduced C#/VB.NET code, and would surely reduce the amount of problems people have with the various data management classes, brought about mainly by their own poor coding. Going with the flow, the system would need to provide the auto-mapped "pretty URLs" that are the hallmark of today's agile open source platforms.

If MS gets wind of it, it's a no-brainer that they'll tout the same basic principles used by today's agile frameworks beneath the guise of a superior IDE, coupled with heavy promotion of Atlas for AJAX support. Behold the next version of Visual Studio.

The big hurdle as I see it would be transitioning Microsoft-centric application architectures from the n-tier model to a more pure MVC form. One can also argue that such may not even apply, as doing so would eliminate the ability to use ASP.NET for "one-off" development, being single web pages that are still dynamic and data-aware, but don't necessarily warrant setting up an entire app. It's this lack of support for atomic development that I find to be the major weakness of MVC as a whole. The great amount of abstraction and clean separation requires a lot of setup for simple jobs.

But a criticism of basing a forthcoming version of ASP.NET on Railsy managed apps with ORM using MVC would be the effects on the current model .NET v.2.0 convention of declarative programming, using more controls than code. Dropping pre-fab, but still configurable elements within a model would really speed production time. So maybe that makes for a niche advantage untapped by any of the agile platforms to date.

So while it's speculative at the moment, the interest in LINQ/DLINQ seems to imply that a managed web framework driven by ORM is the direction in which we as Microsoft developers are heading. People way smarter than I have undoubtedly already considered such a strategy at length. Whether someone in the development community gives rise to it in conjunction with or completely separate from Microsoft will be interesting to see, for sure.

0 Comments:

Post a Comment

Links to this post:

Create a Link

<< Home