Jun 9, 2011

Dynamic Data: to a faster, more featureful future of releases

We’re (read: me and the sole intern) making a big push to impress internal clients (read: other employees) and my boss and her boss with some of the newer technology and features available in .NET 4.

Unfortunately, we’re a little late to the game due to spending over four or five months spec’ing, buying, putting together, installing, and configuring new servers to put all the new goodies on (SQL Server 2008 R2, IIS 7.5, etc.) which, yes, our resident “server guys” should have done but in their defense they’re swamped as is so we got tired of waiting. I wasn’t personally on that, but I did observe the fiasco and I have been involved in the later stages of configuring them for use finally. (And boy, was it ever a joy to see Web Deploy working after finally getting all of the permissions and such right).

It may seem weird to get giddy over what I can only imagine everyone else has enjoyed for months or even years now. But maybe it’s not so different. Maybe most companies have a hard time keeping up and are always playing catch-up, unable to jump on the latest and greatest whenever it comes along. Actually, that’s probably more likely.

Anyway, we’re really investing some time into Dynamic Data. I had briefly played with it in the 3.5 past, but it’s even better now in 4.0 and I really think it’ll help us churn out some of the simpler sites much faster.

Let me pause to give a big shout out to Mr. Stephen Naughton. His work on customizing Dynamic Data 4 has been extremely helpful, useful, right up our alley, and just fantastic. Nearly every time we think of some common need that Dynamic Data doesn’t turn on or provide out-of-the-box, he’s addressed it. Man. What a guy. I hope some day to be able to give back that kind of work to the intertubes, but for now I mostly find myself walking on the shoulders of giants such as him.

New technology to us devs is always sexy, but to managers (even technical previous-programmer ones, like mine) it can be a harder sell. And with good reason! We devs can easily get enamored of stuff that ends up being YAGNI or impractical. So a bit of skepticism is warranted on their part. But when something truly is going to really improve our ability as a developing unit to perform, well… all the more important to make first impressions count.

All that to say, we’re really going to try for a good impression. I’m shooting for a few main things:

  • Speed (short design/development time to release)
  • Features (as many as we can easily provide out-of-the-box)
  • Secure (interop with our STS seamlessly like all other apps)

For that reason, we’re working hard on designing a useful project template for Dynamic Data sites. With it, we will be able to start a new project, throw together a new Entity model against the database for it, and with a few small customizations to security roles and such have it up and running in no time with full features like filtering/searching, role-based viewing and editing, automatic validation, and more.

I’m hoping it will impress. I’m hoping they’ll get a glimmer of how fast we can put together such a full-featured templated site, doing things better than or beyond what most of our previous web apps do. We unfortunately are chronically understaffed for the workload expected of us, and as we add new systems we get slower having to maintain existing things. And having to spend 6–18 months developing new systems is ruinous to our response time. We have tons of requests that sit idle for years. It’s nothing personal, but we simply don’t have the time and people to do ‘em.

But a lot of that can change for the better. If we can reduce many of the time-frames from 6-18 months into more like 1 month, well…!

No comments:

Post a Comment