For any organization you’re considering working for, make sure you can answer the following two questions with a resounding “yes”
- Would you invest your own money in this organization?
- Would you be a client of this organization if you needed a product or service they offer?
These two questions have guided me well over the years. Hopefully they will help you in your journey.
Twenty-four years might be considered a long time for a mentor-ship, but this one was unique, and started way back in 1981.
What I didn’t know at the time was that the principles and rules I had gleaned over those 24 years would continue to mature and gain new relevance during the years to follow.
Learning / Technology
I can trace my career path back to a single day, July 12, 1986 when my mentor presented me with a hunk of metal, silicone, and glass that would keep me busy for the next 30 years and counting. That Commodore 64 is still in my closet, and the last time I fired it up, it booted up just like it did all those years ago. He somehow knew that putting me in front of this strange new machine would alter the arc of my life and career in so many interesting ways. I’ve always had a stubbornly inquisitive mind, and this was the perfect way to channel it.
He taught me to be loyal, fiercely loyal, to family – which can mean your blood relatives or close friends who you consider family. Their safety is your responsibility, and it’s your job to do whatever it takes to protect them from any harm that might come their way. On multiple occasions, he would tell me, “Take care of your brother. Long after I’m gone, you two will have each other and I expect you to look out for each other.” As an infantryman in Vietnam for two tours and as a Policeman in my home town for 33 years, he was a walking example of making sacrifices of self to protect others.
Do the right thing, even when no one is watching
So many times I’ve kept myself out of trouble by remembering his words to behave “as if people are always watching what you do, and they have a camera to take pictures as evidence.” Simple as this is, this perspective has kept me on the right track many times.
Reach for the Summit, but…
When I was very young, he gave me a pewter Ram with a motto that he subtly encouraged me to follow. The meaning of “Reach for the Summit,” has changed for me over the years as I have learned it applies not only to “Charge the hill,” but also to “Charge the right hill,” and “Don’t charge the hill if it is a volcano.” Several years ago I was leading a hike on Mt. St. Helens in Washington with a couple of colleagues from Microsoft. As we neared the top, I took a hard look at the situation and realized that “Reach for the Summit,” also included re-assessing the situation during the ascent and altering the plan if necessary – even if this includes not actually reaching the summit. I had under-budgeted on water for the team, and we got a late start on the mountain due to unforeseen circumstances. When I saw that reaching the summit was indeed possible, but only at the expense of the safety of my team, I made the call to turn back. In the end, we all made it safely home, and that’s more important than reaching any summit.
Others may be more skilled, but don’t let them outwork you. Once you’ve set your mind to accomplishing a goal, you keep chipping away at it. Whether you’re slow or fast, as long as you’re moving toward your goal, you’re on the right track and every day you get closer to achieving what you set out to do. Getting discouraged is fine, but push past it. Oddly, he passes this along to me as a lesson he learned from the opposing force in the Vietnam War. While his side was under orders to fight the Viet-Cong, he respected the way they leveraged their persistence as a strength and were able to evade a more powerful army. “Know your enemy,” as Sun Tzu might say. There is much you can learn from them.
They say that time heals, but this is patently false. If someone truly made a mark on your life, there’s an indelible scar left when they’re gone and you’re never quite the same again. What time does do, is to help those scars feel less painful, and to make the voids feel less empty. Scars remind us of where we came from, and that makes them pretty important. Seldom a day has gone by in the past ten years when I haven’t thought of my Dad and how he somehow prepared me for challenges I would face, even years after he was gone.
In 2006, he checked 10-42* far too soon, but left me with a lifetime of advice that I’m constantly reminded of.
* (10-42 is a law enforcement term for end of watch)
I recently decided to set out on the somewhat mundane task of replacing my (nearly falling over) mailbox with a nicer brick one. It’s certainly not the epitome of an exciting project, but I came upon an interesting bit of insight along the way.
When I set out have something built my first instinct is to built it myself. I’ve come to learn that is a double-edged sword. Sure, I get to learn a new skill or technique and have the unique sense of pride found in having sweat equity in the end result. I love both of those aspects of DIY, which is why I tend to lean toward it. The flip side is that unless I’m going to build one of these things more than once, ever project I complete is the work of an amateur, regardless of how diligent I am in doing the best job possible.
Over the years, I’ve had to force myself to always evaluate the equation of build vs buy. This applies to projects around the house, and software at the office. There are many factors, but the main ones are these…
I’d say 95% of the time, my initial back-of-the-napkin estimates indicate that it is cheaper to build than buy. The full implication of DIY on TCO (Total Cost of Ownership) is something I sometimes willfully choose to ignore. Questions I have started asking myself to counter this are
- Do I already have the tools I need to accomplish the task? If not, and can I use them to accomplish other tasks?
- How much will the necessary tools cost?
- Will these tools be useful for other tasks?
- How much space will these tools take up in my garage
- Can I just rent the necessary tools instead of buying them?
- Would a person I hire be able to complete the task for cheaper than I can?
- Do I already possess the knowledge I need to accomplish the task?
- How long will it take to obtain this knowledge?
- Can I apply this knowledge in other parts of my life?
- Do I have time to complete the task myself? This includes any ramp up or tool and material procurement.
- Can I complete the task myself faster than hiring someone?
- How long will it take to find and hire someone to complete the task?
- If I hire someone, how long will it take them to finish the project?
- How quickly do I need the task completed? This has to balance my time vs finding and hiring someone else.
- Will I be able to hire someone that will deliver a result of sufficient quality?
- If I do it myself, will quality suffer?
- Will my perfectionist tendencies prevent me from ever completing the project?
- Am I willing to give up control of the project to someone else
- How important is having complete control – taking other factors into account such as cost, time & quality?
- Will I be able to hire someone to complete the task with autonomy?
Taking the time to do a quick evaluation of these four factors have helped choose a more effective route and achieve better results rather than just always falling back to DIY.
As much fun as it is to DIY everything that comes along, it’s not the right route for every project.
As far at the mailbox goes, I decided to hire someone instead of slinging hundreds of pounds of bricks and mortar myself. When he came out to do the estimate I could tell this guy was a craftsman, not a Jack-of-all-trades and I’m pleased with the result.
This afternoon, I went out for my usual afternoon coffee at Rush Espresso in Latta Arcade. while I was walking, I was responding to a question about the specs for some servers in a test lab.
I was also formulating my order at the coffee shop and barely caught the error below just before I pressed send. This is also why I initially leave the TO: line blank and re-read almost every email I send before I press the send button.
“These machines are self-contained and we will only need access on ports 80 and 443, as well as a medium decaf latte, RDP access”
I should know better than to order a server with Java on it 🙂
As a student of both my Dad, and Sun Tzu, the following advice has proven useful to me over the years.
The English translation I prefer is:
“The best victory is when the opponent surrenders of its own accord before there are any actual hostilities… It is best to win without fighting.”
Being prepared for what is ahead, and framing your perceived position to be one of strength, can often yield a successful outcome without the need for a more involved, high-risk, confrontation.
One of the stories my Dad told me gives a great example of this…
Dad was behind a car at a traffic light and noticed the driver seemed very nervous and kept glancing in the rear view mirror. It was a long light, so he had time to run the plate to check for any abnormalities.
Sure enough, the driver had reason to be nervous, as he had just stolen a shiny new sports-car, and the marked police car behind him seemed to have figured this out.
For whatever reason, Dad ended up in a lot of car chases in the 33 years as a cop and started carrying a helmet to keep from getting banged up as much.
When the car came back stolen, he reached over, grabbed his helmet, put it on, and tightened the chin strap.
Expecting the guy was going to run as soon as the light turned green, he caught the driver looking back at his now-crash-helmeted self and gave a huge grin indicating he was ready for an epic car chase.
As soon as the light turned green, the driver went through the light and pulled over before Dad even turned on the lights and siren.
When Dad got to the window and asked him why he pulled over, the driver says…
“Sir, this car isn’t mine, and honestly I was gonna make a run for it… But when I saw you strap on a helmet, I knew you meant business.”
Posture and preparation can often provide a shortcut to the desired outcome without the struggle and risk of conflict.
This morning, my wife asked me to fix the printer so that she could print some forms. Sure, I could have spent a few minutes fighting with printer drivers and what-not, but I hate printing and printers – They seriously stab at my soul.
So my solution was to automate her whole process instead.
If you remember the MadLib notepads you had as a kid, then this will be very familiar to you.
The premise is that you have a story with words cut out by type.
For example, “_______ (person in the room) is an excellent _______ (job / profession) who once _______ (verb) a/an _____ (noun) with his/her bare hands”
There would be a separate page with the following form, and while filling it out you can’t see how the words will fit into the final narrative shown above.
|Person in the room||_________||Job / Profession||_________||Verb||_________||Noun||_________|
Once completed, the form might look like this…
|Person in the room||George||Job / Profession||fireman||Verb||impaled||Noun||shark|
Then you transfer the words into the narrative from earlier and you get the unusual story of George the fireman who impales sharks.
“George is an excellent fireman who once impaled a shark with his bare hands”
Since I was unsure of her internet access at the location of the event, I needed to build something that was completely self-contained and did not need internet access while it was running. She has a Mac, so slapping together a WPF app wasn’t a straightforward option without installing a VM.
I’ve been learning Node.js in my spare time (since @chimon1984 thinks it might catch on one day), so this was a perfect real-world scenario for me. I had about an hour to time-box the project and set off to code it up in my pajamas on a Saturday morning.
The technologies used are all free and very simple to install and get running with. I’m assuming Linux or OS X, but it could be made to run on Windows without many additional steps.
If you want to check out the code and try it yourself, hop on over to the GitHub where I’ve posted the code. Feel free to use it any way you like, as it has a standard MIT license and submit Pull Requests for improvements and updates. There’s a todo.txt section with things I might add to it as I have free time (whenever that mythical time might be).
Since it’s Fathers’ Day, I feel obligated to share a story about my Dad that I was reminded of at lunch the other day with some of my coworkers. I have so many of these stories, and as my Father’s son, they remind me why my sense of humor also turned out to be just a little bit left of normal.
For this story, we’ll have to set the way-back machine to the late 1980’s. Does anyone remember voice pagers? I’m dating myself by admitting that I do, or that I remember a time before pagers at all. For folks who don’t remember, or weren’t born at the time, they were these little precursors to text messaging that you could wear and receive voice messages from folks who called your “pager number.” Wow, did I just say “pager number” out loud? The particular model we’re talking about would make a series of beeps and then automatically play the message. This becomes important later in the story.
When Dad was working in CID as a detective in Greensboro, he had a Sergeant with a particularly large ego who had just gotten one of the fancy-pants new devices. The squad had a brief bit of down-time for lunch, so they had met up at a local diner to have some lunch. Dad had witnessed just how exceedingly proud his sergeant was of this new voice pager and all the attention it garnered when it sounded off an important message. Sarge had become predictable when a page came in. The ‘new message’ sound would go off and there would be a slight delay before the caller’s voice could be heard. As soon as he knew the message was about to play, he would crank up the volume so everyone could hear how important he with his fancy gadget on his belt.
This time was no different, the pager started beeping to let him know that a message was about to play. He predictably cranked up the volume on the pager and awaited his important call. Except this wasn’t the kind of call he was expecting. All of a sudden his pager started yelling:
“Heeeeeey… fat boy! Where ya been, man? This is your belt buckle speaking and I haven’t seen you in a really long time. When are you gonna stop eating all those cheeseburgers and get in shape so we can see each other again? …”
I can only imagine his Sergeant’s struggle to turn the volume back down as quickly as possible once he realized his folly.
While I still miss Dad a lot, he left me with a lifetime of stories like these to remember him by. They continue to entertain me and remind me to always take life seriously, but never too seriously.