Okay, enough David Bowie.

I am going through what could possibly be the most excruciating time of my life.  There are so many emotions flying around it’s hard to keep everything straight.

There are things I can’t yet reveal.

There are things I can reveal.

After almost three great, great years, I am leaving Solve.  I have been so blessed to work with such tremendous people.  Nancy, David, Mike, Larry, Jordan, Jay, and most recently Tom and Jason.  Not to mention the people at my client for the past three years – Wes, Chris, and Patrick.  It’s been a fantastic ride, and what we’re currently setting up for the client will be extremely awesome.

Why would I leave?  Well, I’ve been given an opportunity to get in on the ground floor with a brand new company called Talavant headed up  by Dave DuVarney and Rob Long.  It’s a new consulting company based in Madison, WI; a little closer to home than my current client in Arkansas.  This is in no means a slight on the client I’m finishing up with – I loved working for them, I love visiting Siloam Springs, Arkansas.  It’s a great place.  I recommend everyone visit there at least once.  I intend to go back in the future, to visit my friends.

Dave DuVarney approached me about a month or so ago asking to meet up for coffee.  We had the obligatory chat, talking about life, families, and whatnot.  It was then I asked “OK, you didn’t ask me here for coffee…”.

I had met Dave several years ago when I was the DBA with National Guardian Life.  He had co-authored a book on SQL Server Reporting Services and we were looking to migrate from Business Objects without having to put all of the agents in Active Directory.  Nothing came from that meeting, but we’ve kept in contact ever since – bumping into each other at MADPASS meetings, etc.

Dave and Rob had started a new consulting company in Madison earlier in the year and needed to expand.  They had too many clients for their personnel.  I met Rob a couple weeks later and we continued to talk.  It was after that Dave asked me if I’d like to work for them.  I said yes.

There were a number of factors in my decision.  It’s local.  Yes, it’s about 50% travel, but I’d be able to be in a local office.  Currently my nearest office is 65 miles away, and it’s full, so I really don’t have a work station there.  This isn’t a knock on Solve, in fact, it just means they are growing so fast that they need more space!  That’s a good thing!

It’s not the money.  It’s more or less a lateral move.  But, I’m one of the first people on board, and I hope to ride that to a more senior role as the company expands.  That means I need to stay focused, do the best I can, continue learning, and well, yeah – just do the best I can.

Burn out.  I know my Solve colleagues may not like this so much, but I never expected to be on one project for three years.  I’ve been told by my co-workers that I’ve done things with SQL Server that make their heads spin (can’t wait for the knowledge transfer sessions:-) ).  I take that as the highest compliment.  But  I expected that as a consultant I’d hop from project to project every few months or so.  Again, this is not a knock on Solve, because they have been so good to me during my time here.  I do not have one single bad thing to say about them.

So, early next year, I’ll leave one great company for what I hope will be another.  The decision was not without a lot of thought and prayer.  I told David when I was interviewed three years ago I was looking for a company I could retire from.  I sincerely thought Solve was that company – and it probably could be.  But, there’s still a little flame left in me, and with that light I want to see where this next path leads me (holy cow, I sound like Bilbo).

David.  Larry.  Nancy.  Michael. And everyone else there.  I love all of you.  I will not stay out of touch.  And I will see all of you again – sometime.



Posted in General Stuff | 4 Comments

The “Art” of Home Brewing

Let me preface this by saying that what I do in no way constitutes “art”, nor do I claim to be talented at the craft.  Having said that though, I have made a few really good batches of beer.

I’ll leave all the SQL Server technical stuff to others for now, because I am borrowing from a Tom LaRock theme on blogging about whatever I want.  And today it is about beer.

I got into home brewing a little more than a year ago.  I dabbled in it years ago, but it was from kits, and my resulting beer tasted like, well, like it came from a kit.  Boil some malt syrup, add some hops, add some yeast, and a month later you have beer.  Not good beer, but beer.

I’ve upped the game since then.  I wanted to brew good beer.  I wanted to be able to share my creations with friends.  So, with a  couple hundred dollars in the initial investment (it could go a lot higher in the future, believe me), I bought the equipment.  I started out doing partial mash batches, i.e., a little bit of grain and some malt extract powder.  I made some good batches with that, but it was still not where I wanted it to be.  So, about six months ago, I started brewing all grain.  Let me take you through the process.

To brew two cases of beer, you need about 10 pounds or so of grain malt.  There are several different types, depending on what kind of beer you want to brew.  I have my grain milled, meaning the kernels are sent through a grinder so that the husks are crushed and the insides are exposed.  This allows for the enzymes to be extracted later on in the process.  You also need about two to four ounces of hops; again, depending on what type of beer you are brewing, there are many different varieties.  And, your yeast.  There are several different yeast varieties as well, again, depending on what type of beer you want to make (you can see by now that the possibilities are endless).

The first step is the hot liquor tank.  No, it doesn’t mean warm brandy, it’s just a fancy term for a vat to hold water as it is being heated.  Once three or so gallons of water is heated to about 165 degrees (some beers actually call for a slightly lower temperature), it can be added to all of the split grain in a vessel called a mash tun.  This can be as simple as a cooler with a spigot.  I use a 10 gallon Coleman water cooler with a false bottom – a screen filter that keeps the grains from draining later on.  Sealed tight, this sits for about an hour.

The second step is boiling the wort (pronounced “wurt”).  I drain the mashed water from the mash tun into my boil kettle.  I then add another three gallons to the mash tun for what is called sparging.  I drain this slowly off into the boil kettle.  This extracts more flavor and enzymes from the mash. Once it reaches a boil, I add some hops, about two ounces.  It boils for about an hour, and at 45 minutes in I’ll add the flavoring hops, usually another half ounce or so.  After it is done boiling, I have to cool it down.  I have a copper coil wort chiller that hooks up to an ordinary garden hose.  I immerse that into the wort and in about 40 minutes the wort is cooled enough to add the yeast.  Adding the yeast when the wort is too warm will do you no good, since the yeast will die from the warm temperature and your beer is ruined.

Once the yeast is added, I move the finished product to a fermentation bucket.  There it will sit for about a week or so, and if I decide to go secondary fermentation, I’ll transfer it to a 5 gallon glass carboy.  Secondary fermentation stirs up the concoction and re-activates the yeast.  It’s quite interesting in the early stages of fermentation to watch the air lock “bloop” as the yeast goes to town.

After about 3 or 4 weeks the beer is ready to bottle.  I add a bit of corn sugar so that the yeast can create the necessary carbonation.  I transfer the beer to my bottling tank, from where I sort of pipette the beer into 12 ounce bottles.  After another two weeks, voila, I have beer ready to drink.

Through all of this I am constantly cleaning and sanitizing.  Believe me, because it has happened to me, it is very easy to ruin a batch of beer because something wasn’t sanitized properly.

Home brewing is a fun hobby for me.  It’s not a cheap hobby, and if I decide to up my capacity, I can see another considerable cash outlay for better equipment.

I name all of the beers I make after the lakes my boat has been on.  Today I brewed another batch of Pipestone Pale Ale.  I have a Mendota Red Ale in inventory (named because the sunsets on Lake Mendota are so beautifully red), and a few bottles of Winneconne Wheat left.  I need to brew another Monona Golden Ale, the Despair Belgian Dubbel goes into bottles tonight, and perhaps a Pilsner is next.  Not sure what to call that one yet.

I’ve received praise on my Pipestone Pale Ale from another home brewer who has just opened up his own micro brew pub.  Compliments from your peers makes you feel good, and is educated feedback.  But heck, if anyone said they liked my beer, I’d be happy.  To reciprocate, I told him that his Pale Ale is by far the best beer I’ve ever tasted.  Seriously, it is that good, and I’d like to think I know a little bit about beer.

If you’re every curious about home brewing, let me know.  I love doing it, and as I said, I am by no means an expert, but I have fun and some of the batches ain’t too bad.

Posted in General Stuff | 1 Comment

Learn Something New Every Day

I recently had to develop an SSIS package that took Excel files from a different server, import them into a SQL Server table, and process the information from them.  Normally, not a hard thing to do.  To complicate matters, the name of the Excel files was always unknown and ever changing, and there was no consistency in what the worksheet was named.  Normally I’d create a generic connection and dynamically change the connection properties in a script task, but the added complexity of having variable worksheet names made that unbearably difficult.

I solved the process by creating a ForEach loop looking for any Excel files in the landing folder.  I elicited the help from a colleague to develop a C# Script Task (I know Java and VB.NET, but C# is a little iffy for me) to convert that file, regardless of what the worksheet is named, to an XML datatable, from which I could process into a landing table in SQL Server via a stored procedure.  In order to accomplish this, given that we’re creating an Oledb connection string to Excel in the C# script, was to make sure the SSIS package was running in 32 bit runtime.


Running the package manually posed no problem.  Worked like a charm.  I built the package and deployed it and created a SQL Server Agent job to run this package once a day to process any new files that arrived in the landing folder.  The package would fail each time it ran.  Thinking it was a permissions issue on reading the file, I made sure the SQL Server Agent Service account had the necessary permissions to access and read the file.  After verifying this, I ran the package again through the SQL Server Agent and it still failed.  I then looked at the new job I created to see if I had missed anything.  Turns out I did.  For the step that actually executes the package, I missed one important part.  I opened the job, and clicked Edit on the step I needed to look at.  It turns out I missed one little important check box in the Executions Options tab of the job step.


The step that executes the package that needs to run in 32-bit runtime also needs to run in 32-bit runtime.  Once I fixed that and saved the changes, the job worked like a charm.

In conclusion, I guess the lesson from this is to make sure your settings are consistent throughout your whole process of design and deployment.  I learned something new today, and I’m glad I did.  This will be very useful in the future.

Posted in General Stuff, SQL Server, SSIS | Leave a comment

Technology (or lack thereof)

DSC_0233Recently Suzi and I were on vacation for a week at a fishing lodge in Ontario, Canada.  I had been there several times before; this was Suzi’s second visit – the first being three years ago.

In the past, this fishing lodge catered to everyone.  They had theme nights for families, hearty breakfasts for everyone, and you felt as though you were a guest in the owners’ home.  There was internet in all the cabins, ping pong and casino night in the rec center, canoes, paddle boats, and bonfires.  Heck, the owners would even visit you in your cabin in the evening, bringing with them a bottle of wine to share.

We packed up our fishing gear, warm clothes, food, and of course a supply of Spotted Cow.  We headed for about an hour north of International Falls, expecting the same as before.  We knew the camp had new owners, but we weren’t prepared for what awaited us.

We knew we wouldn’t have cell coverage up there.  What we didn’t expect, however, was the absence of any internet connection.  When we arrived at the lodge that Sunday afternoon in the pouring rain, we found that we were unable to tell anyone we had arrived safely.  I’ll touch on this again a little later.

Suzi and I were essentially cut off from all communication with the rest of the world.

Was this a good thing?  One could say yes.  We were on vacation, after all.  We were in a different country in the middle of nowhere.  I was getting burned out at work, and I hadn’t had a vacation in over two years.  Just being away felt good.  On the other hand, no one back home knew if we got there safely.  We couldn’t receive any news, good or bad.  Some country could have launched a nuclear attack on another and we’d have no clue about it.

My point in all of this is that we have become so dependent on technology and information.  Especially those of us who work with it every day.  Although we were in what I consider one of the most beautiful places on Earth, it was unnerving to not know what was going on.  No Twitter feed, no Facebook, I couldn’t check work emails (not that I would have anyway).  No SQL Server clusters, no T-Log restores, no VMs.  About the only technology we had was three phase AC current, and the internal combustion engine in our boat motor.

There was a genuine withdrawal – I assume not unlike someone who is quitting smoking (though maybe not as severe of a withdrawal), not being able to get online.  Those of us in technology rely on information, and when we can’t access it, it becomes very unsettling.

Ultimately, we were able to go to the main lodge and access their very limited wi-fi for a bit and let everyone know we were safe and having fun.  We were able to post a couple Facebook updates.  Suzi and I were also able to see that our friends and family were safe after the violent storms ripped through Madison last week.

In conclusion, in this day and age we take technology for granted.  We see it almost as a right.  And when that right is taken away from us, we become lost.  But that might not be a bad thing once in a while.

Posted in General Stuff, SQL Server | Leave a comment

That Time of Year

sqlsat287_web  It’s that time of year again.  What time is that, may you ask?  SQL Saturday season, that’s what time of year it is.  MadPASS, FoxPASS and a  bunch of other volunteers are putting the finishing touches on Wisconsin’s only SQL Saturday, to be held this upcoming Saturday, March 29, 2014, in Madison, WI.  This is our third time hosting a SQL Saturday, and we’ve grown greatly since the first one in 2012.  We are at capacity with 350 registrants, and a waiting list of more than 30.  This is also the first year we have pre-cons!  Jes Borland  and Ted Kruger are hosting a pre-con about tuning your SQL Servers to perform better, David Klee is giving his talk on SQL Server virtualization best practices, and Dan English is hosting one on Self Service BI.

Me?  I’ll be presenting “You’re the DBA.  NOW What?” again.  A 100 level checklist of what to look for when you’re suddenly thrust into the role of Database Administrator.  We’ll cover files, configuration, disaster recovery, indexes, encryption, and a whole lot more.   The first time I ever presented this, or anything, for that matter, to a group larger than a user group meeting was last year’s Madison’s SQL Saturday (you can read about that, if you want, here).  Since then I’ve given it to many other SQL Saturdays.  It remains well received, I think, because I try to keep it simple for those who are just starting out.

I’m looking forward to this one, as I do all of them.  It is great to meet up with people I see far too seldom.  It’s a great day of free learning from the experts.  These speakers spend their own money, time, and talent to help make us all better at what we do.

Quoting Flounder from Animal House  – “This is going to be great!!”

See you this Saturday.



Posted in SQL Server | Leave a comment

Another SQL Saturday in the books


This past weekend I attended yet another SQL Saturday, this time in Kalamazoo, Michigan.  I took my show on the road, as it were, because once again I was fortunate enough to be selected as one of the speakers.  I wasn’t able to make it to the PASS summit this year, and I was looking forward to seeing some friends and colleagues again, even if it was at a smaller venue.

I forgot about the one hour time difference between Wisconsin and Michigan, and realized on Friday that if I didn’t leave right that second I’d be late for the speakers dinner.  Even with the late start, I felt I had plenty of time to make the trip.  Hitting downtown Chicago at 2:00 pm didn’t seem like it would be an issue.  I didn’t count on the 35 mile construction project (45 mph zone) between Rockford and Elgin, Illinois, nor did I count on a fatal crash on the northbound Dan Ryan Expressway in Chicago, closing that completely, and bringing the southbound Dan Ryan to a standstill for about 45 minutes.  Add to that pouring rain in Indiana and Michigan, and I finally made it to my hotel about 5 minutes before the dinner was supposed to start.

The speakers dinner was awesome.  I got to chat with Joe Fleming for a good long time, and met Stacia Misner for the first time.  I also met up with the usual suspects Josh Fennessy, Allen White, Tim Ford, Frank GillBrian Davis, and Tamera Clark, among others.  Hope Foley wouldn’t join us until Saturday morning.

I loved this event.  It was one of my favorites.  A great crowd, and another full room for my session.  People asked some great questions, and I must be getting better or doing something right, because the reviews from my session were wonderful.  The lunch was a taco bar and it was amazing.  One very pleasant surprise was the appearance of Gareth Swanepoel.  From Jacksonville, Florida by way of South Africa, Gareth is in Green Bay these next couple of weeks on a consulting gig.  He drove six hours to Kalamazoo this weekend just for the heck of it, not to attend anything, but just to say “hi” and help out if any help was needed.

I sat in on a couple sessions.  Brian’s session on automated installs was interesting.  I might have to check that out in more detail to see if we can start standardizing some environments at some of my clients.  Allen White’s session on BIML and PowerShell started out as a complete foreign language to me, but by the end of his session it was all coming together, and now I can’t wait to start playing with this sort of technology.  I can see it playing a role in some of the ETL work I have to do for my main client.  What I got most, though, out of Allen’s session is that everyone has something to offer.  He encouraged everyone to give speaking a try.

The after party was also a lot of fun.  I didn’t sing any karaoke (if I am ever caught doing so, someone please take my car keys away from me), but it was still a good time.  Talked a bit with Aaron Bertrand and got to know him better.  I also talked to Josh a bit, and he gave me a great idea on my next session.  I’ve done a short talk on SSIS before, and now have some ideas on how to expand this one into a full one hour session.

Back at my hotel Saturday night (nice studio suite at the Residence Inn), I set the coffee maker to start at 6:30 because I wanted to get an early start back to Madison.  I didn’t reset the time on  it though.  So, because of the daylight savings time, the coffee actually went off at 5:30.  I tried to sleep through it, but couldn’t.  By then the clock on my phone said 6:15, which was 7:15 the day previous, 5:15 back home in the Central time zone, and who knows what the clock in my truck said.  So, having no real clue what the time really was, I just said to heck with it all and got up, got ready, and headed out.  I ended up pulling into my driveway right around 11:00 in the morning.  Or noon.  I’m still not sure.

Anyway, it was a great event.  Like I said, one of my favorites of all of them that I’ve attended.   Thank  you to Josh Fennessy for organizing it.  And thank you to all of the volunteers – Tim, Tim’s wife Amy, Joe Fleming, and everyone else.  Without the volunteers none of these events could happen.

Posted in SQL Server | Leave a comment

SQL Saturdays

As I sit this evening, sipping a Spotted Cow, watching the Twitter stream of all my friends at the PASS Summit, I wish I was with them. The PASS Summit is always a great time, I’ve been to the last four, but it was not in the cards for me this year.  Even if it was, my workload right now is such that I’d probably be doing more work than attending any of the sessions.

I had submitted a session for the conference in hopes of speaking there for the first time, but it was not selected. The reason? I don’t have enough speaking experience. Fair enough. I’m relatively new to the whole speaking thing, and when I had submitted my abstract I had only spoken at one SQL Saturday and a couple local user group meetings.

With that being the case, I made the decision to submit my session “You’re the DBA, Now What?” to a lot of the local SQL Saturday events in the Midwest.  I’ve been lucky enough to have been selected to a few of them.   Madison, St. Louis, Minneapolis, and Kalamazoo so far.  I think I’ve submitted to a couple others, but I forget, and I haven’t heard from anyone else that I’ve been turned down or selected. 

I was a first time speaker at the Madison SQL Saturday – I blogged about that one before.  This past summer I drove to St. Louis and gave the presentation to another large crowd.  Minneapolis was this past weekend, and I got a lot of questions, which was good.  It helped fill the entire one hour and fifteen minute time slot.  Kalamazoo will be in November, and I am looking forward to seeing some good friends there. 

After this round is over, I will probably shelve this presentation for a while.  I’ve got the next one in mind, I just have to start on it.  I’m thinking the title will be “You’ve been the DBA for awhile, Now What?”  My first presentation was a 100 level course, mostly for beginners and newbies, and this next one will be geared more towards the mid-level DBA.  This should be fun to put together.


Posted in SQL Server | Leave a comment