Category Archives: Work


Status: MCSE acquired.

I figured as long as I had some momentum, then keep the ball rolling. The Microsoft Certified Solutions Expert certification required the MCSA certification plus two additional exams. The 70-413 and 70-414 exams focus on designing and implementing advanced server infrastructure and require an in-depth, working knowledge of the Microsoft platform and tools. The MCSE exams also employ a variety of testing methods—not just multiple choice and fill-in-the-blank questions—that make it far more difficult to pass if you’ve only just memorized a list of facts and figures. These exams include several in-depth case studies and the trickiest True/False questions I’ve ever seen. Needless to say, it has been stressful preparing for these exams and I am happy and more than a little relieved at the accomplishment.

For the history books:

  • 70-413 test on Apr 1 with a score of 790
  • 70-414 test on Apr 9 with a score of 866


Status: MCSA acquired.

The exam is three tests, each has a possible score of 1000 points with a passing score of 700 points. It took me an average of 50 hours per exam of study and preparation over the course of 6 weeks. I’m looking forward to re-introducing myself to my wife and child and learning what they’ve been up to since the end of January.

For the history books:

  • 70-410 test on Feb 6 with a score of 868
  • 70-411 test on Feb 27 with a score of 866
  • 70-412 test on Mar 12 with a score of 775

How to Get a Job at Google

I love this article I read recently about what Google looks for in their hiring process. Here is a link:

There are 5 qualities they are trying to measure:

  • Technical skill.
  • Learning ability.
  • Emergent leadership.
  • Humility.
  • Ownership.

Those five things.

This aligns with the idea I knew to be true in my head but couldn’t form words around.

This is who I want to be. And I also need to be searching out projects and opportunities that value those five traits, because that’s who I want to be and that’s how I want my value to be measured.

OneNote and Error Code: 0xE4020005

I use Microsoft OneNote every day. Our team has a common notebook in our SharePoint site that we all connect to, each user’s changes are tracked with their initials, new changes appear as Unread, and I’ve found it’s the easiest way to share notes, screenshots, checklists, and everything else that usually ends up in email and sucks when you have to do it through email.

And today I found out that OneNote wasn’t syncing. Nothing since October 10. “An error occurred while attempting to sync this section or notebook. (Error code: 0xE4020005)”.

Luckily someone had already fixed this. I had to delete the local cache (which was somehow corrupted) and pull down the entire 320 GB OneNote notebooks from the SharePoint server. Thankfully OneNote only fetches data as you request it. Sad news is I lost any changes I made since October 10. And I have no idea what all that includes. Thankfully I keep most of my deployment checklists in a local notebook, not the team notebook, so I didn’t lose what I’ve been working on the past two weeks.

Using OpenSSL to Extract Private Key

So useful today.

From: Tips : Using openssl to extract private key ( .pem file) from .pfx (Personal Information Exchange)

If you want to extract private key from a pfx file and write it to PEM file
>>openssl.exe pkcs12 -in publicAndprivate.pfx -nocerts -out privateKey.pem
If you want to extract the certificate file (the signed public key) from the pfx file
>>openssl.exe pkcs12 -in publicAndprivate.pfx -clcerts -nokeys -out publicCert.pem
To remove the password from the private key file.
>> openssl.exe rsa -in privateKey.pem -out private.pem
This is required as, at the time of exporting privateKey, you have added a password to the private key to secure it. If you left the password with it, it will keep asking the password as any application tries to access it.

Virtual Training

All this week I am attending a Red Hat System Administration I training class. There are no Red Hat training centers in Nashville, so I’m attending a virtual classroom, which pretty much means I dial into a conference call and login from home.

The upside to virtual training is I’m dressing casually and drinking my own coffee. The downside is lack of interaction with other students. It feels like a Directed Study, not a classroom.

The other upside to virtual training is I have my work laptop open along side my desktop PC. So while I’m doing lab exercises on my desktop, I have a several chat windows open with work colleagues with more linux experience than me, so I’m asking them questions in real-time. Questions like: “The instructor is pronouncing it ‘su-doo’, is that right? I thought it was ‘su-doh'”.

Turns out, it’s “su-doo”. That’s something I would never have thought to look up.

Being Sick and WFH

I’ve been sick for a week.

I went to the Take Care Clinic near my house on Tuesday morning and Wednesday morning of last week. Strep test was negative, Flu test was negative, but my symptoms of cough, sinus congestion, fever, chills, sore throat, chest congestion, upset stomach, and headache were still very real. And it floored me. The last time I’ve been this sick was October of 2002.

At first they told me just to use over the counter products to help ease my symptoms but after a few days I had them prescribe a Medrol dose pack, which has been helping me feel normal again. Here is a picture of all the medicine I took this morning, just so I can function:

Cold Virus Morning Regiment

From left to right:

  • Mucinex DM, to clear up the chest congestion
  • Morning’s dose of Medrol, which so far has been a miracle drug
  • Ammoxicillin, because everything I’ve coughed up shows signs of infection
  • Claritin, to clear up the sinus congestion
  • Advil, for the muscle aches
  • Tylenol, for the head ache
  • Vitamin C, beacuse it’s important
  • Multivitamin, because it can’t hurt
  • DayQuil, for the cough

I’m thankful I’ve had enough PTO at work to take three days off last week. Thankfully, Martin Luther King Jr Day is an observed work holiday, so I get one last day today to rest up.

I am going to avoid the office for as long as I can, because I have no idea how long before I’m not contagious. There seems to be a consensus at 7-10 days before the symptoms truly subside, so I’m using that as a rule of thumb. Working from home is the easy part, because my employer makes it easy to work remotely (since I do a lot of after hours work). It won’t be difficult to make sure my coworkers in the office don’t come down with this virus. What’s more difficult is protecting my wife from it. So far she hasn’t shown any symptoms of it, for which I am very thankful.

I’ll be glad once I can get this sickness behind me. I don’t wish this on anyone.


This week I’m trying to automate some pieces of our disaster recovery test, which happens in less than two weeks. Previous tests have taken 4-6 hours to bring the BCP environment online and in the event of a true disaster, the faster we can bring it online the the better, so in the next two weeks whatever can get scripted… gets scripted.

Yesterday I wrote and tested a series of scripts to stop/disable and enable/start the IIS services on the web servers. There are multiple services that all need to be running, some of them take 5-10 seconds to start up, and some of them are dependent on others. In my testing, I was getting errors. I needed to insert a pause.

So I inserted a ping in the startup_iis.bat script.

sc \Web1 config IISADMIN start= auto
sc \Web1 start IISADMIN
sc \Web1 config HTTPFilter start= auto
sc \Web1 start HTTPFilter
sc \Web1 config W3SVC start= auto
sc \Web1 start W3SVC

The IP address is invalid and not reachable, but the ping command will try anyway. It created a pause of about 20 seconds, enough time for one service to finish starting before I attempted to enable and start the next service.

As an Application Administrator, it’s ingrained into you the religion of Change Management and the love of uptime. So I cannot even begin to describe how counter-intuitive it is to forcibly take down the Production environment. How awkward it is to write scripts specifically designed to create a disastrous outage. It’s the closest I will come to being a Mad Scientist.

UPDATE: a friend on Facebook pointed out some the parameters accepted as options in ping.exe. His example:

ping -n 1 -w 300000>nul

This makes one ping request with a timeout of 300,000 milliseconds (5 minutes). Nice if you are waiting for a server to reboot.


This week I discovered the website musicforprogramming();

It describes itself as:

“A series of mixes intended for listening while programming to aid concentration and increase productivity (also compatible with other activities).”

I’m only as far into the first (of seven) in the series, but it’s an excellent companion to working heads down on a project. If you are tired of listening to The Social Network original soundtrack while coding / debugging / troubleshooting / documenting, give it a try. Each mix is about an hour long. Here is their RSS feed and their subscription link in iTunes.