An Adjustment in Priorities

I think it is very common this time of year for people to reflect, especially on their accomplishments during the past year, and what they would like to accomplish next year. Personally, I’ve been doing quite a bit of thinking about my development as a software engineer.

It feels as though, over the past couple of years, the pace at which I have been learning has slowed. This troubles me. One of the reasons I love the software industry is that there is always something new to learn. I love learning about new ways to solve problems with technology. And, learning is what you must continue to do if you are to stay relevant as a software engineer.

Now, this doesn’t mean that I haven’t learned anything over the past couple of years. Quite the contrary actually. I’ve really been enjoying the boom our industry is seeing in non relational data storage systems. We’ve been utilizing many of these newer technologies at Signal with great success. I’ve been an active member of the ChicagoDB users group, attended a few conferences on this topic, and even gave a few talks…a first for me. I’ve also been learning first hand how to scale a system as we’ve taken the Signal application from one capable of sending thousands of messages per “blast” to one that regularly sends millions of messages per “blast”.

However, something is missing. I used to read more. I used to blog more. I used make a sincere effort to learn a new programming language every year. I used to constantly download and tinker with new tools. These things have fallen to the wayside. And, I really miss them.

Instead, over the past couple of years, I have been spending the majority of my time creating. When creating a new project, there is usually something new to learn. That’s what drives me to create the project in the first place. But as time goes on, the cost of the time I spend working on the project starts to outweigh the benefit. I reach a point where I am no longer learning anything while working on the project. If I’m not benefiting from working on the project in any way (now that the learning part has mostly dried up), there is little motivation for me to keep working on it.

Part of me feels obligated to keep these projects going, and to get them to a point that I would consider “done”. I’ve never been a quitter, and stopping work on these projects sounds like quitting to me. However, it makes little sense to continue working on something that gives me nothing in return. I will still fix bugs that are reported, but any new development on most of my active projects is likely going to cease. Time is precious, and I need to make the most of it.

So as of right now, I’m making an adjustment in priorities. I’m using my free time to invest in myself. To read more. To blog more. To get back to learning a new programming language a year (Clojure is on tap for 2012…I’ve been wanting to learn it for 3 years now). To resume downloading and tinkering with tools that spark my curiosity. I want to start practicing how to write code, like I learned at the code retreat I attended over the summer.

I’ll still be creating, as I’m someone who learns by doing, but I have a feeling from now on my projects will be much, much smaller.

It is impossible to “find” time to do something. You have to make time.

Goodbye Old Friend

Last night I said goodbye to one of the best friends I’ve ever had.

My wife Beth and I always wanted a dog, and knew that as soon as we got a house, a dog would be soon to follow. On a trip in to see my parents, we stopped by a local animal shelter to take a look at the dogs. We came upon this crate containing 5 puppies, the offspring of what appeared to be a German Shepherd and a Rottweiler. I liked German Shepherds, and Beth like Rotties. We quickly took to the sole black puppy in the litter, and started the paperwork necessary to take her home.

I remember the day I picked her up from the shelter like it was yesterday. I took the day off of work to go and pick her up. The little ball of fur weighed only 10 pounds, and was sleeping soundly in my arms as I filled out the last bits of paperwork. The first thing we did was drive up to see Beth at work. She whined the entire way. We named her Bacardi.

Childless for the first few years of our marriage, Bacardi was our baby. She was a first class member of the family. We did everything with that dog.

A more loyal friend you could not find. Whenever Beth was sick, Bacardi would refuse to leave her side. Those two had a connection like I’ve never seen. It was simply amazing to watch. An eternal puppy at heart, Bacardi was always playful, even in her older years. Affectionate like no other, she’d lick you until your skin came off. Her whip-like tail would start beating against the floor the minute she saw you. Even on my worst days, Bacardi was always able to put me in a good mood. She was always happy to see me, and always put a smile on my face.

When we welcomed our first son Dylan, we were repeatedly warned by friends and family not to let Bacardi too close. I know that many of these feelings stemmed from the fact that she was half Rottweiler, and Rottweilers don’t have the best reputation as a family dog. But Beth and I were confident that we had raised Bacardi to be kind and gentle. Needless to say, Bacardi proved them all wrong. She was both a friend and a guardian to our little boy, like she was for us. I remember one day when Dylan was lying in his bassinet, no more than a week or two old. The bassinet was just a bit taller than Bacardi, and she tried like hell to take a look inside, to see what was making all that noise. She was actually able to tilt the bassinet slightly with the side her head, and look at Dylan with her one eye.

In the following years, she could not have been a better family Dog. She let Dylan do anything to her. He’d ride her like a horse, lie on her side, pull her ears…everything you could imagine, and she just laid there. If she ever had enough, she would simply walk away. Dylan loved Bacardi as much as we did.

Three years later, Beth and I welcomed our daughter Chloe. Chloe was ill quite a bit the first year of her life. We attributed this to Dylan brining home “presents” from pre-school, but started to suspect something else when she was still getting sick over his long breaks from school. We found out that Chloe was an asthmatic, and allergic to Bacardi. We knew we had no choice; we had to find Bacardi a new home. Knowing that this was the right choice didn’t make it any easier. Luckily, Beth’s uncle who lives just 10 minutes from us agreed to take her in. His daughter had always adored Bacardi, and we knew that she would be treated well there. Shortly after agreeing to take her in, Beth’s uncle came to pick her up. That was a terrible day.

In the few short months Bacardi lived with Beth’s uncle, we continued to see her on a regular basis. She was always happy to see us. Even though we knew she was being treated great, a part of us always felt terrible when we left her behind. We wanted so badly to take her home with us, but we knew that we couldn’t. And, it didn’t help to see that she clearly wanted to come with us. Sometimes, it felt like losing her all over again.

Just this past Thursday, Beth’s cousin called to tell us that Bacardi was ill. Beth took her to the vet on Friday, and the vet said it was either a really bad infection or cancer. As Saturday and Sunday passed, her condition quickly got worse, and it became clear that it was not an infection. She was in the late stages of a battle with lymphoma. Early this morning, around 3am, we said goodbye to our friend, and put and end to her suffering.

In Bacardi’s 7 1/2 years on this earth, she touched so many lives. We will always cherish the memories of the times we shared with her. She was a great friend, and one amazing dog.

Bacardi, I love you so much, and miss you terribly. Goodbye old friend.