2016 was Okay

As 2016 draws to a close, I've been more reflective than normal about how the year went. In a lot of ways it's been a good one. Work is going great, especially considering how I was thrust onto a brand new team using unfamiliar technologies in early January. My boys are growing up fast and I can already see glimpses of the type of children they are becoming. In some ways, though, this year has also been one of lessons.


Since I brought it up first, working at Shutterstock has only got more awesome. I'm coming up on my three-year anniversary in a week, the longest I've been at a single job, and 2016 has been the most challenging and rewarding one yet. It all started in late 2015 when, due to changing company priorities, I was moved to a brand new team (API) working on a shiny new initiative (building a Unified API Strategy), developed completely in Node. I barely knew Javascript at the time, or anyone on the team, and all this was a bit terrifying for a remote worker.

Thanks to a welcoming team (and my willingness to jump into things headfirst) I thrived in the new position. We made a lot of progress during the first half of the year, and when our structure shifted dramatically at the end of Q3 we rode it out and tackled some even cooler projects over the rest of the year. I'm now the main technical contact for our top partners, regularly chatting with programmers from companies around the world, and am fulfilling the role of a lead developer within my team. There are some exciting opportunities coming in 2017 that I can't wait to share, too.


So, about that Node thing. I still consider myself a PHP developer and am keeping plenty busy with several open source projects on the side, including a swagger-driven microframework that's kept my Github activity humming all year long. But at work I do the Node. I'm still getting used to it, especially with terminologies and best practices. Other traits like concise and pragmatic coding transferred over nicely from my years of PHP experience. I am quite happy that I did this year's Advent of Code in Javascript, something I wouldn't have dreamed of doing last year. So maybe this year marks the beginning of a full language switch.

This year was also big on testing for me. I entered 2016 hoping to practice unit testing, a skill that I never really got into before. Starting with open source projects and PHPUnit, then moving into Chai/Mocha, I now default to TDD on my projects. Integration and unit tests are now all matter of fact on anything I work on. Shoot, I even built a continuous integration flow for one of my personal websites. So yeah, I'm pretty proud of how much ground I covered on this front.


During the end of summer I snapped out of a funk and decided to get into shape. I was five pounds overweight, the heaviest I've ever been, and just didn't feel good in general. Using only Weight Watchers and two different Beach Body programs (21 Day Fix for a few months, then T25) I dropped over thirty pounds and picked up some muscle tone. Hiking and running come easier now, and pants are comfortable to wear again.

There was one big catch. In late October I pulled something in my upper back while lifting weights. I took a few weeks break from exercising and hiking, then started T25 and running. A combination of the upper back injury and these high-impact routines have wrecked havoc my lower back. So now I get to enter 2017 in a decent amount of pain. It's been a harsh reminder that I am getting older. My thirty-year-old body doesn't enjoy getting thrashed as much as my twenty-year-old body did.


Speaking of aging, the boys are growing up fast. Noah, now three-and-a-half, can be a very thoughtful and polite kid at times. He can also be a downright bully to his younger brother (we blame bad influences from school). Thomas is almost two and is darn sweet. Both of them are turning into little hikers (we did a three mile loop in November and they rocked it) and we almost got an overnight in with Noah this fall. If everything turns out well I hope to do a backpacking trip with both of them in a few months.


Ah yes, there's hiking too. That activity I do sometimes and blog about. It's been an okay year for hiking. It started with a rather embarrassing mishap on Malapais Mountain and never really picked it from there. I did get to start venturing into the Mazatzals, though all three of those 'epic backpacking loops' were cut short for one reason or another. Then there was the multiple attempts on Mother Lode that didn't work out, and Ballantine too… 2016 just wasn't that good for my hiking.

I may be a bit harsh. 2015 was an epic year that clocked close to 430 miles, including nine days on Isle Royale, even though I had to plan around a newborn for the first few months of the year. This year I'll barely hit 320 miles (if I have a good New Year's Eve) with only two three-day backpacks on familiar trails. At least I did the transition to ultralight (and super ultralight) backpacking. Maybe next year will swing back in a positive way with a few solid successes and a multi-day trip to someplace epic.


Something I've been trying to be more aware of lately is stress and mindfulness. Work is stressful, even if I am lucky enough to be a remote worker, and programming can be incredibly taxing. In the hopes of doing something different I started learning Spanish via Duolingo and have racked up a sweet 140-day streak. It was fun, I picked up some words, and it was something besides coding to think about.

However, I don't think it's going to work out long term. Learning new languages is great if you use them, and no one in my close network speaks anything outside of English. Even if I kept with it for a year or longer it would eventually drift away from disuse, just like my ability to program with R. This was another lesson from 2016 - habits are only useful if they lead to long-term benefits.

One of the reasons I've been so reflective on the last year is that next year is going to be, well, one with a lot of unknowns. And I want to approach it with as solid of a base as possible in the hopes that I can be prepared for the unknowns. I'll be talking more about some of this in an obligatory New Year's post, something I've been doing in some fashion since '11 (dang, this blog has been around for a while).