Random Screenshot: A Solidified ASP.NET Server Design

This image represents the summary of the decisions made by me about how to design an ASP.NET Server application. These decisions are extremely important to me as it defines how my thoughts are able to function regarding this matter. In other words, without these decisions I am an empty set of hands blindly waiting for orders instead of taking initiative and the upper hand of pro-action. This image allows me to see my understanding of this matter.

Here are the strong words governing my understanding:

The template dictionary maps Command names to XSL templates. Yes, that’s right: XSL templates. Look in the room full of .NET developers you may be in right now and I bet you can’t find more than one XSLT dude—most likely zero. XSLT allows me to handle the problem of data binding to a “view”—the V in Model View Controller in a Client-agnostic way. All I require is that the Client (another strong word) can send and receive XML messages (a stupid block of XHTML is an ‘XML message’ folks). As of today, these views are called by my implementation of the YUI library via AJAX.

It should be clear why I am likely to turn down a development position at your local, do-right company. Of course you don’t care but I prefer to use REST in a .NET world. I prefer to use XML in a .NET world. I prefer to use XSLT in a .NET world. This approach reduces vendor lock-in significantly and increases flexibility. (Most Microsoft shop heads—especially those dating back to the 1990s—are locked in to something horribly limiting and are arrogantly in denial.) And, no, Rocky Lhotka did not waste years of his life trying to master the frustration of Microsoft-approved data binding. Unless, of course, you call commanding six-figures year over year “frustration.”

In my Microsoft world, I can take one of my clients and point it at a completely different (non-Microsoft) server. I can take one of my servers and send messages to a completely different (non-Microsoft) client. So my preferences exist not because I am “smart” but because I do not have the luxury of predicting through political job security what technology I will be using. And I do not have the “privilege” of being responsible for raising the earnings of a software tooling company. XML and REST are about survival.

Only in the last two or three years has Microsoft revealed itself to be interested in what I am doing here. You can see this interest in ADO.NET Data Services, ASP.NET MVC Framework, XAML and other stuff. Ditto for Adobe, with E4X support in Flex. I blame Scott Guthrie for providing leadership in this new direction and I commend him for his efforts.

rasx()