The sound of a million crickets longing to be free

If you’ve been wondering why my blog has been so quiet over the last 45 days or so, the answer is a bit complex. (but you can continue listening to the crickets chirping in the absence of content here.)  I need to take a break from my reading to give my brain a rest… so now’s as good a time as any to explain the pieces of the puzzle that have lead to the relatively low number of posts.
First, and foremost, I’ve entered into a “phase” of reinvestment.  That means many things but the short answer is I’m learning new things and relearning old things that I’ve forgotten – or I’m at risk of forgetting.
One of the pieces of this puzzle is the relatively large amount of software that Microsoft’s dropped at my door.  I hadn’t really had much of a chance to work with .NET 2.0 or SQL Server 2005 while they were in beta – a side effect of a busy life.  So I’m in the process of getting up to speed on them.
Just in case you’re wondering – for me getting up to speed means doing things that are a bit beyond the envelope.  I’ve been playing with configuration classes (to support non-file based configuration sources), factory classes, and generics.  I’ve not gotten done yet, however, this will be the foundation of the new web site that I’m building.  (Don’t ask when it will be done, I don’t know yet.)  I’ve also been playing around with master pages and web parts … I’m trying to mesh those into a foundation layer that allows me to control what’s on the page from a database.  … and don’t even get me started about the HTTP handler to allow Google to walk around the foundation without getting aggravated by query strings.
Couple that with “Office 12” and Commerce Server Betas.  Office 12 contains SharePoint which is one of the things driving a great deal of my work these days.  Commerce Server is near and dear to my heart for many reasons not the least of which are that it’s at the core of the new web site I’m putting together and I’m a Commerce Server MVP.
Because I’m preparing to embark on a relatively large software development project, I’m reminding myself how to do things right.  That means rereading Steve McConnell’s Rapid Development book, Fred Brook’s The Mythical Man-Month, and a few other Software Development Practice books.  I’ve read them all before, but I felt like having read them about 10 years ago made it time to reread them.  (I highly recommend both of the above books – both are “dated” but they illuminate some core concepts and problems that don’t seem to change.)
I’m also reading Karl Wiegers’ Software Requirements, Second Edition.  I’ve had a few projects recently that somehow managed to skip the requirements phase of development (in whatever lifecycle model you want to call the projects.)  So I thought reading it would remind me of what a project with requirements is like.  The book is solid, though somewhat repetitive.  It’s much like a buffet where you take what you want – though I miss the carefully coordinated entrée and sides.  My personal task for the end of the reading process is to try to distill the information into a one page cheat sheet I can laminate to remind me of the core concepts.  I find that requirements is the one area where continuous reminders is helpful for me.
When I get done there I get a chance to read some books on Agile development … I’m looking forward to getting a firmer foundation for what Agile is supposed to be – presuming that the two books on the topic that I have can do that.
The second factor for the lack of posts is that I’m doing some infrastructure cleanup tasks.  I run my own network infrastructure – I suppose that my MCSE and my former MVP aware for Windows Server-Networking will die hard.  There have been nagging little problems with the infrastructure for a while – errors that weren’t causing any real problems but were still getting thrown to the logs.  Well, in an effort to get my Pocket Pc Phone edition working with direct server synchronization, I had to clean up more than a few of those errors.  (By the way, My QTek 9100 Windows Mobile 5 [Pocket PC Phone Edition] rocks.  The over-the-air sync to Exchange is amazing.)
The third factor is that I’m building an arcade style kiosk for my son.  It will house his PC.  It will be like the old “Pac-Man” arcade games but slightly wider to accommodate the keyboard, mouse, and joystick.  It will have a real coin door which will eventually allow you to turn on and off the PC as well as an overhead light.  The coin door itself has been installed, I just haven’t finished the electrical for the switches.  Because my son is only 4 (as of January 5th) I’ve also built a seat arrangement that slides in and adjusts up and down so we can get the seat setup at a reasonable height for him.
The net effect of this project is that it’s taking a ton of my time.  I’ve begun referring to it as the albatross around my neck.  However, I saw the light at the end of the tunnel today as all of the major components have been assembled – I just need to get it in the house and hooked up and I’m going to take a break from the project for a while.
The fourth factor is that my writing schedule has been slowed WAY down.  Basically, I’ve temporarily discontinued my regular writing.  I expect that I’ll start writing about software development issues again very soon – however, in the mean time that means that even the regular posts linking to my articles have been missing.
The fifth factor is that I’ve been working a ton of hours at the church.  I took on leadership of the technical ministry for worship services which means I’m responsible for coordinating sound, lighting, and media.  Of course, I’m trying to get everything documented and get a better fundamental understanding of each part so that I can feel effective…  This in the middle of the Christmas production and my other duties taking care of the IT needs have been overwhelming.
So that’s it… add in the usual family commitments for Christmas and New Years, a few days of illness, and you end up with some pretty sparse blog postings.  However, I am seeing the light at the end of the tunnel on most of these things, so hopefully I’ll have more to blog about real soon.

Out of the darkness

If anyone has noticed that the blog activity has decreased, they’re right… It’s not because I’m abandoning the concept, It’s really just a concurrence of a few things …

1) I stopped doing the TechRepublic Stategies that Scale newsletter.  That was four postings a month (one a week.)  I really enjoyed writing the content for the newsletter but it wasn’t aligned to the things I was doing on a day-to-day basis so I had to let it go.

2) I’m transitioning between series at  Whenever I transition between series it disrupts the writing schedule.  We should be back on track this month but it means that I didn’t have the two posts per month I normally have announcing those articles.

3) I’ve been busy trying to figure out the eCommerce portion of the software development factory that I’m doing.  You’ve seen some announcements for betas…  I’ve got one issue to take care of in one of the products but otherwise the feedback has been good.  The net effect of which is I need to figure out how to start selling them.  I’ve taken a few wrong turns ( and the delay has caused me to decide that I want to build the new site on ASP.NET 2.0 which has turned out to be a giant gravity well which my time is falling into.

4) .NET 2.0 is really cool.  I’ve been playing with generics and how they can take typical problems and make them easier.  The obvious answer is collections.  However, I’m also very interested in taking the factory pattern and making it strongly typed and generic…  Unfortunately, I’ve decided that I’m starting from scratch so that means new database access code, new configuration management code, new collections code, and the new factory code … That’s meaning that it’s consuming a lot of time.

5) I can’t stop developing products.  It’s sort of like an addiction.  I see more needs than I can fill … I wrote a tool to manage web parts on any web part page in SharePoint (here’s a hint, almost everything is a web part page — including list pages).  It will allow you to add, delete, extract, and enumerate web parts.  (It’s done if anyone wants to play with it.)  I’m finishing a Url Administrator that allows you to change SharePoint List Fields which are of type URL.  The idea is that users sometimes use URLs in the portal that you wish they hadn’t — or you need to change.  This tool will go through the entire portal and organize all of the links for you.  It’s about 50% done.  I also have a tool which will go through and trim the versions in document libraries — more than a few clients have accidentally turned on versions in their document libraries and now aren’t sure how to get the versions trimmed.  That’s about 40% done…

6) I’ve been sleeping.  I try not to but occaisionally I’ve just got to.  My favorite catch phrase is “Sleep is optional.”  I’m being reeducated that it isn’t.

By the way, I’m looking for a mentee, protégé, coachee, who would be willing to work for a little bit of money and some good experience.  I need some help clearing some of my development tasks since I just can’t seem to get them all done.  If you’re interested drop me a line.


Requirement: Collaboration

The next time I see a requirements document which says they want “collaboration” my response is going to be to ask…

“Why do you want to cooperate treasonably with a foreign power?”

Maybe that will jar people into asking what they mean by collaboration.  (Asking what they mean by collaboration doesn’t seem to work in most cases.)

No Wake Before 10:00 AM

Every Parent’s Dream…

I saw a sign that every parent has dreamed of…

No Wake Before 10:00 AM


Maybe they weren’t talking about that kind of wake.


Submission — Anti-Virus Software

I broke down today and bought Anti-Virus software for the primary computer that I use.  I’ve had anti-virus software on customer computers, my son’s computer, and my wife’s computer.  The reason I didn’t have it on the computer that I work on is because I think it’s an unnecessary evil.  If you’re suspicious and careful you should be able to avoid infection by a virus.  OK, so I hedged my bets and occaisionally ran Trend Micro’s House Call solution. Still, I didn’t feel like it was necessary software — and supporting an industry which has caused so many hours of problems with software that blocks things in unexpected ways has never been high on my list.

However, I realize that in today’s environment, the only way for corporations to protect themselves is to ensure that the laptops connecting to their network have current anti-virus software and that the definitions are up to date.  The goal being, of course, to provide some measure of assurance that the computer isn’t infected.

So, I’ve joined the masses in using Anti-Virus software.  Even if I don’t like the whole concept.



Glaciers 101

Since coming to Alaska I’ve learned a lot about Glaciers.  Yesterday’s excursion was the Phillips 26 Glacier Cruise.  It was very good, although I wish I would have seen some whales.

Here’s what I did see!


Sometimes you just stick out…

If you’ve been wondering what I’ve been up to, I’ve been in Alaska doing some work during the day and playing during the evenings.

It’s been fun but it’s meant that some of my technical issues (like the one around enumeration class casting, are sitting on a back burner.)