Rants, rambles, news and notes from another geek

My Newest Interesting Powershell Script

I’ve started running a bunch of Ace Addons for World of Warcraft and I love the fact that they have them all up on their Subversion server. But it was getting annoying having to do “svn update” on each and every folder (using TortoiseSVN wasn’t any betterΓǪ I then had to right-click each oneΓǪ not better).

But of course, being the Powershell junkie that I am, I had to automate this, so here’s what I just ran. I know it can be simplified a bit, but this works for now:

PS >&nbsp_place_holder;gci | where { $_.GetType().FullName -eq "System.IO.DirectoryInfo" } | foreach { cd $_; svn update }

Woo hoo!

Update: I suppose I should have just tried using SVN for this first, eh? It turns out “svn update *” works just fine.

Manageability Extensions CTP for Enterprise Library Available

The patterns & practices team has released the Manageability Extensions for Enterprise Library January 2006. Please download this extension&nbsp_place_holder;from the Downloads page on the Enterprise Library Community Site.

Manageability extensions for Enterprise Library Jan 2006 allows you to use Group Policy to update application configuration information, and to publish a running applications configuration to WMI, so that it can be consumed by any WMI-aware management application. The manageability extensions can be used with any application that makes use of Enterprise Library v 2.0, and does not require any recoding of the application itself.

Please feel free to discuss this CTP in the Manageability Extensions Message Board.&nbsp_place_holder;All feedback is appreciated.

Happy Birthday Emily Provost

Tuesday was my lovely wife Emily’s birthday.

  • Thank you for giving me two beautiful kids: Hadley and Finn.
  • Thank you for putting up with my hobby hopping and warcrack addictions.
  • Thank you for taking a chance and leaving your family behind in Denver&nbsp_place_holder;to come with me to Seattle.
  • Thank you for putting up with my forgetfulness.
  • Thank you for choosing me to be your husband.

Emily, I love you more each and every day.

Neward Compares O/R-Ms and the Vietnam War

A few weeks ago Ted Neward posted his long awaited post titled “The Vietnam of Computer Science” where he compares the Object Relational Mapping quagmire with the American involvement in Vietnam:

Although it may seem trite to say it, Object/Relational Mapping is the Vietnam of Computer Science. It represents a quagmire which starts well, gets more complicated as time passes, and before long entraps its users in a commitment that has no clear demarcation point, no clear win conditions, and no clear exit strategy.

I was there at Tech Ed 2004 when Ted said it, and honestly, I think he’s right. This is a yucky space that just doesn’t seem to go anywhere helpful. Lots of great new ideas, each plagued by either a new problem or a host of long forgotten ones.

Ted carefully goes through the major problems that O/R Mappers run into including:

  • The Object-Relational Impedence Mismatch
  • The Object-to-Table Mapping Problem
  • The Schema-Ownership Conflict
  • The Dual-Schema Problem
  • Entity Identity Issues
  • The Data Retrieval Mechansim Concern
  • The Partial-Object Problem and the Load-Time Paradox

One observation that he makes that particularly resonated with me is this:

While many DBAs will faint dead away at the thought, in an increasingly service-oriented world, which eschews the idea of direct data access but instead requires all access go through the service gateway thus encapsulating the storage mechanism away from prying eyes, it becomes entirely feasible to imagine developers storing data in a form that’s much easier for them to use, rather than DBAs.

(Before anyone freaks out about Ted using Vietnam as a reference here, please read his follow-up.)

Firefox + IETab + Regular Expressions = Love

I like Firefox. I’ve always liked it. It does what I want when I want it to. It is simple. It persists its settings, extensions and search providers in my profile so when I backup my profile onto a new machine, it all comes for free. This is good.

ButΓǪ Firefox doesn’t automagically pass Active Directory credentials to Intranet sites. Which sucks when you spend a lot of time browsing the Intranet, like I do here at Microsoft.

Enter IETab, a very cool Firefox extension that lets you present any Firefox tab inside of an Internet Explorer tab. Works like a charm. But, you have to remember to add every Intranet site’s URL to the list of sites that are automatically opened in a tab.

Or do you?

For the last year I’ve been doing just that. Finding an intranet site that doesn’t work and then adding it to the list. One after another. But the Microsoft Intranet grows almost as crazily as the Internet, so I just can’t keep up. I always wanted a checkbox that said, “Open Intranet sites with IETab” but there is no such option.

Then today I discovered that you can use Regular Expressions in the URL field and my eyes got big. After a bit of fiddling I created this one filter URL to get what I always wanted:


It probably isn’t perfect, and it probably will evolve over time, but after some initial testing it is getting my exactly what I want.


Thank you Brad Wilson for giving a name to a beast that we see all to often in the wild:

Scrummerfall. n. The practice of combining Scrum and Waterfall so as to ensure failure at a much faster rate than you had with Waterfall alone.

Read Brad’s post for more details.

Web Service Software Factory: July Community Drop

Want to see the Enterprise Library application blocks in action in a realistic service oriented application? And would you like automated guidance to help you build your own applications that comply with a proven architecture? Then check out the July Communtiy Drop of the Web Service Software Factory. In addition to providing a reference implementation, written and automated guidance around building service interfaces with ASMX, this latest drop includes a new data access guidance package that makes it easy to build a data access layer using the Enterprise Library Data Access Application Block.

Please visit the project site at GotDotNet.com to download it.

Community Release: Architecture and Design Guidelines for Business Intelligence Applications

The patterns & practices team is please to announce the availability of Architecture and Design Guidelines for Business Intelligence Applications. This exploratory community project provides prescriptive guidance on how to overcome architectural challenges and design issues when building Business Intelligence solutions using Microsoft platform.

This guide is intended for software architects and developers who are developing Business Intelligence applications on the Microsoft .NET Framework using SQL Server 2005 - Integration Services and Analysis Services.&nbsp_place_holder; Being an exploratory community project - anticipate gaps and scope for improvement.&nbsp_place_holder;&nbsp_place_holder; For more information see: http://codegallery.gotdotnet.com/biguide.