Lessons Learned in the Last Year

Most years I allow my birthday to pass fairly uneventfully. I will usually end up having dinner with friends or family, but I’ve never really enjoyed anything that put me on the spot (i.e. a full blown party). While thinking on this I decided to diverge from the normal mandate of this blog a little bit and talk about a few things I’ve learned and come to terms with over the past twelve months. Hopefully you’ll find them enlightening as well.

1. Communication is Important

The title pretty much means what it says. Communication is one of the most important things that we do in our daily lives. I’ve seen evidence of this in my personal and professional life. It doesn’t matter whether you’re a barista at a café, or the guy responsible for carrying a suitcase of nuclear launch codes. Communication is important.

As a professional example, it’s amazing to see the difference in the range of responses you’ll get from clients if you answer their emails promptly. Over the last year, the need for me to be able to interact with clients or project managers has skyrocketed. I’ve been confused to find that a lot of people are surprised when you promptly answer their email. It’s almost a foreign concept. Additionally, it generally results in a more positive impression of you and/or your company. Clients don’t feel like you’re wasting time if you’re promptly responding to their emails and constantly sending them emails with batches of things to test. It’s not that I would otherwise be slacking off if I wasn’t emailing the client, it’s just that I’ve got to remember to get out of my headspace enough while I’m developing to actually do it.

As much as timing is important, frequency and quality is as well. In personal life, these two factors usually balance each other – you either have a lot of low quality interactions over a span of time or a few high quality interactions. It just seems to be the yin/yang balance there. So, it’s a challenge when you’re in a situation that demands that both factors exist – specifically a long distance relationship. All of that is to say this: I no longer kid at people who are dating someone who lives several hours away. It’s not a cake walk.

As much as you can thrive by good communication, you can also feel suffocated by a lot of bad communication – or lack of enough communication at all. This is a fairly recent lesson I’m dealing with, after having moved to a new city. I had always imagined that picking up and moving to a new city for a better job was easier than people make it out to be. As usual, I was wrong. But, you’ve got to roll with the punches.

2. School is a Lifestyle, Not a Place

Something that I’ve found over the last 12+ months is that school is a lifestyle and it’s one you’ve got to intentionally make. I think that some people call the concept a “life learner”, or “learner for life”, or something equally silly sounding. Yet, it’s an apt description of the mindset. It’s the idea of someone who likes learning new things for the sake of learning new things.

That said, allow me to be frank. I hate exams. Actually, I don’t think the word hate does enough to describe my feelings toward exams. Honestly, if I could just build projects that show I know what the heck I’m talking about (and in a lot of Computer Science courses I was able to) – I’m a happy camper. But what I’ve found, especially in these few months after leaving UGA, is that I still enjoy playing with new technology. Although it’s not really “new” in the truest sense of the word, as those technologies tend to be more frustrating than enlightening. Rather, I’m interested in things that are new to me.

Short example: this weekend I didn’t really leave my room much. I spent most of the weekend doing what I do five days a week for work: programming. However, I was programming in Ruby as opposed to PHP (which we use at work). I wanted a project to cut my teeth on since I haven’t really played with Ruby on Rails since version 3.0 came out. So, this weekend I built my own link shortening service and set it up on the server. It allows me to create short links on my “frmr.me” domain. When a user clicks the short link it records the click, gives the user a cookie, and sends them on their merry way. I can even generate pretty bar charts that give me a visual indication of how my links are doing.

This weekend I worked almost obsessively on it after I finished the remainder of my work from last week, and I was enjoying myself because I was stretching those mental muscles inside Ruby on Rails 3.0. I even got to do a fair amount of server configuration to get the rails app wired up to my nginx web server (pronounced “engine-x”) that serves up this blog. I learned how to declare an “upstream” in nginx this weekend. Didn’t know that before.

Also, if you think a weekend is a long time to write a url-shortener, keep in mind I had to configure Ruby, RubyGems, Rails, and all required gems on two computers (my laptop and this server).

Over the past two months, I’ve come to grips with how difficult this concept is. It’s really great to get paid for a talent that I’m good at, but the day to day grind really wears on you. So, finding ways to still prod myself into learning something new usually requires getting outside of the box that I typically work in (PHP) to deal with something else (Ruby). And I think that’s just going to be how I have to work to keep learning.

3. There’s Always Time for a Cup of Coffee

I love coffee. I love tasting different kinds of coffees. I love hanging out in coffee shops (the good ones, not the ones that think it’s appropriate to play disco music), talking to the baristas, hanging out with friends, programming, etc. Coffee shops are where I’ve done some of my best programming work – and if I don’t have to worry about clients calling me (because I’m working out of business hours or on a weekend) it isn’t unusual to find me there. But I rarely take time to enjoy coffeeshops for their other uses: a place to decompress, a place to meet up with friends, and a place to read a good book. Sometimes I just need to leave the tech behind and go read something on a piece of paper every now and then. I want to be able to forget about things like firmware, bugs, and code.

What brings this up?

Well, it essentially stems from the old adage “too much of a good thing.” I love programming, but too much of it give me migraines. I love working on my computer, but even now I’m starting to get agitated by the backlight on the display. Sometime you just need to get away from what you’re doing all the time and go do something different – and I haven’t done that nearly often enough over the past two months. Be it reading, photography, or knitting – hobbies help us keep our sanity.

Final Thoughts

This blog post could go on for ages, and pages. At the time I write this sentence, the word count is already in excess of 1,300. However, it’s 1AM and I’m beginning to ramble. I imagine I’m going to have a good deal of fun editing this blog post to get it ready for publishing.

As usual, leave me some comment love using the form below – and I shall see you guys soon.