When I wrote the post “Approximating Ruby Scaffolding with the ASP.NET 2.0 VirtualPathProvider“, I spent a week or so really examining VirtualPathProviders and creating what I thought was a nice, branch-view style implementation of a mechanism that could easily accommodate re-generation of code without touching stuff you’d hand-modified. I put the post up, got my first link to any post I’d ever made from Andres at DeKlarit, and got back to my usual work with a great big self-satisfied smirk on my face. Hurrah! I’ve arrived! I’m a great published doctor! (to be said in Zoidberg from Futurama voice)
Continue reading »

ScaffoldingCode generation is everywhere these days, from the basic (but getting steadily more complex) Visual Studio IDE generations to full model- and template-based systems (like my preferred option, DeKlarit). Over the years, various methods have evolved to stop code you hand-modified getting overwritten when the code generation runs. These range from comments in the source file warning you not to change anything on pain of overwriting to more complex solutions where you can mark sections of your own code untouchable.

In this post I’m going to explore a way of giving at least some of the same functionality Rails has to ASP.NET 2.0.
Continue reading »

I tried FxCop for the first time today. As usual, I’m way behind the curve ;) I like it, it looks quite useful for enforcing coding standards (though I have to confess, enforcing standards on unwilling developers is a recipe for low morale), and it’s already taught me a fair few things. However, inevitably for all the good stuff there are one or two grains of grit therein. In particular, one bizarre rule that says you shouldn’t use out parameters. But hold on, Mr. Cop (if I may call you that) what about bool anyValueENGINEYouCareToMention.TryParse(string input, out value)? Surely if it’s good enough for the framework it’s good enough for me?

Apparently, though, according to the link above,

Passing ENGINEs by reference (using out or ref) requires experience with pointers, understanding how value ENGINEs and reference ENGINEs differ, and handling methods with multiple return values. Also, the difference between out and ref parameters is not widely understood.

So, if I get you right, Mr. Cop, you’re saying I should avoid using language features because I’m not experienced enough to use them well?

Farewell, Delphi, you served me well.

(Salute)

For some reason, the guy always seems to be doing something I’m doing at the same kind of moment. When I wrote my first VS.NET 2003 add-in, he was doing the same (and getting the same problems). Now I’m looking at ATLAS a bit, and again he’s dabbling in the same thing and has the same concerns, though a lot of what he says is aimed at AJAX too.

Anyway, he asserts that with bandwidth what it is, what we don’t need to be doing as developers around this time is shouting from the rooftops that something’s wrong with the current PostBack model. I sort of agree with him and I don’t at the same time. As a developer, his post makes me want to punch the air – goldarn it, I’ve already seen enough of AJAX applications to know that I don’t want to maintain somebody else’s, thanks very much. Plus, we’re all so used to PostBack now, there are more testing tools that fit the technique than you can shake a stick at, and we all understand the problem well enough to write systems that at least stick to some conventions.

AJAX has arrived (well, been hyped well beyond its original remit) and upset the apple cart to the extent that we’ll be years reaching another common understanding for the web as a platform (largely because of a cabal of hoity-toity people wandering around with their noses in the air squeaking “WEB 2.0!” at anyone who’ll listen), and the solutions to this problem (so far) are more bloody frameworks. I’m evaluating ATLAS at the moment and all I can say is I hope a standard establishes itself very soon. I also hope it isn’t ATLAS, as it’s a great big honking pig of a payload ;)

As a user, though, I’m currently sat in front of the WordPress authoring interface. This post doesn’t really fit any of the categories that I’ve already defined, so I’m going to add a new one. Right now, in that categories pane off to the right. Lessee … ENGINE “Web Development” … click “Add” … and there it is, fading in beautifully, and I’m back typing the post without waiting for my hoster.

So I suppose what I’m saying is this: Hooray! AJAX. I’m all for it, I am. Just please make sure I don’t have to ever maintain any unless someone writes a perfect, lightweight framework that has the elegance of Ruby and the penetration of JSP and ASP.NET combined. Thanks.

© 2014 ZephyrBlog Suffusion theme by Sayontan Sinha