ASP.NET WebForms : The Big Lie
Rob Conerey lays it all out on the table w/ his post about (among other things), "The Big Lie" of ASP.NET WebForms:
WebForms is a lie. It’s abstraction wrapped in deception covered in lie sauce presented on a plate full of diversion and sleight of hand. Nothing you do with Webforms has anything to do with the web – you let it do the work for you.
This, friends, is a big deal (at least to me): You’re working in a lie. The web is *not* stateful and works with this stuff called HTML sent across wires using another thing called HTTP – you need to know this, love this, and feel it at the bone level.
i gotta agree.
i stopped using ASP.NET WebForms several years ago. not because they are evil but because they added too many layers of nonsense between me and my users. as Rob implies, WebForms are an invention to make stateless HTTP applications look like stateful Windows applications. and talk about Lost in Translation! wow!
Rob makes the point that the cure for this problem is to use (ASP.NET) MVC. he would since he's got a book on the topic. me, i don't like MVC. why? because i think it commits much the same sin as WebForms: it adds an needless abstraction to stateless HTTP programming. in fact, the appeal of MVC is based on the same appeal for WebForms, just implemented in a different way.
for me, the best DSL for building HTTP applications is described in RFC2616, RFC2965, and RFC2617 with additional advice to be found in Fieldings' dissertation. once you have these in hand (and in mind), building solid, scalable, and reliable HTTP applications is straight-forward and enjoyable.
now, if we could just be MSFT to supply a solid HTTP client library...