hamilton *hammett* verissimo

Another special person... just like everyone else

  Home  |   Contact  |   Syndication    |   Login
  19 Posts | 2 Stories | 5 Comments | 23 Trackbacks

News

www.flickr.com
This is a Flickr badge showing public photos from hammett1. Make your own badge here.

Archives

Post Categories

Image Galleries

Monday, March 13, 2006 #

Comment posted on Introducting Castle Part II:

I have to agree with you on this, Hamilton - even when I first started looking at Rails (a few months ago) and went, "oh boy, Castle's like Rails but on .NET... but what's this NVelocity thing?"... I was never worried about it being hard to use. If anything, it seems too simple, too procedural after working with server controls for years and years.

For me, it's taken a couple of months working with ERB in Rails to really appreciate its simplicity; I'd have to suspect that 98% of the time, something like NVelocity is more than sufficient for rendering needs. Looking back on it, I see just how awful a lot of my old server/user controls were in terms of separation of concerns, keeping to MVC, etc. Approaching an interface problem with nothing but encapsulation, encapsulation, encapsulation in my toolkit tends to inspire behemoth controls that only work where they were designed, or else I would spend half my time trying to predict how to make a 'reusable' control instead of getting the job done. I still have DataGrid derivatives which were designed for a particular type of data, automatically varying parameters on stored procedure calls to accomplish sorting, paging, editing, and so forth. Not that it's an inherently bad thing (when everything works right) - it can be really convenient - but wow; that's a model, view and controller all built into one. When encapsulating objects to make my code neater just encapsulates it into many-long-methods-per-class spaghetti controls, something's not working right.

Don't get me wrong - I've read comments from a lot of other people who don't fall prey to 'reuseaholism' like I do, so I'm not trying to generalize this to everyone. But when I remember my first days in .NET, when I just used Repeaters instead of DataGrids (for full customization) and Repeaters instead of DataLists (e.g. navigation menus)... I have to wonder if maybe it's all I need for 98% of the pages I create? Anyway, all that I know for sure is that NVelocity is a heck of a lot easier than crafting server controls for every rendering need. - Though I must admit you could argue they're too easy, they're too underpowered, to the point of inefficiency and procedural/spaghetti code when you're nesting loops within loops with conditions and conditions up the wazoo. But, hey, then you just use a WebForms page for those nasty bits, right?