2020 Goals
Tags: goals, motivation, selfimprovement, balance
Published: 2020-01-13 06:02:13

When it comes to goals and self-improvement, I have a nasty habit of being over-ambitious and over-committing myself -- as evidenced by the piles of technical books and unused yoga equipment cluttering my apartment. And it's not that I don't achieve anything. Last year I [completed Georgia Tech's online Masters in Computer Science (OMSCS)](https://downey.io/blog/graduated-georgia-tech-omscs/) and published seventeen posts on [dev.to](https://dev.to/), for example. It's more that I have trouble focusing on a single thing and seeing it to completion.

This year I'm going to focus and plan to complete a smaller number of measurable goals. Last year I focused pretty heavily on academic Computer Science, even to the detriment of my physical health a bit. Although I will continue to grow technically, I'm planning on mixing in more fitness and wellness related work. Here's my tentative plan for 2020.

## Technical Goals

### Earn the Certified Kubernetes Administrator (CKA) certificate
In 2019 I began my Kubernetes journey in earnest. At Pivotal, I left my Ruby comfort zone and transferred to a team tasked with figuring out the ingress and container-to-container [networking for Cloud Foundry on Kubernetes](https://github.com/cloudfoundry/cf-k8s-networking). I was even fortunate enough to [attend KubeCon 2019 in San Diego](https://downey.io/blog/kubecon-2019-takeaways/), which truly immersed me in the  Kubernetes community.

This year I plan on continuing to grow my Kubernetes expertise both at work on VMware Tanzu and at home via blogging and self-study. To help focus my efforts here, I will be working toward earning the [Certified Kubernetes Administrator (CKA) certificate](https://training.linuxfoundation.org/certification/certified-kubernetes-administrator-cka/). I honestly don't expect the cert to buy me much professionally. Still, I am hoping some structured study will help fill the Georgia Tech coursework void I'm feeling. 🙃

### Learn Go
Learning the Go programming language has been an annual goal for me, and I still feel like I have a long way to go on this front. Though the team I'm on now _does_ use Go, I still am way more comfortable with Ruby. This year I'm going to make a concerted effort to change that.

I will finally finish reading through my copy of [The Go Programming Language](https://amzn.to/2tSRTOx) and work through this copy of Thorsten Ball's [Writing an Interpreter in Go](https://amzn.to/36QinyD) that's been sitting on my desk for the past two years.

I also plan on working on some toy side projects to develop more familiarity with it. Maybe I'll rewrite my crufty [image editing CLI](https://github.com/tcdowney/mitty) in Go. 🤔 Or perhaps I'll write a web-scale Cloud Native GETFILE server implementation in it.

### Self-study Distributed Systems
Though I've been working with distributed systems practically for the past four years, I feel like I lack some of the theoretical foundations. This year I plan on reading through this [Distributed Systems](https://amzn.to/2sinrwG) textbook. One of the co-authors (Tanenbaum) wrote an Operating Systems book I've used previously, and the book has pretty positive reviews, so it seems like a solid course of action. To hold my self accountable while reading, I plan on taking detailed notes either with hack.md or as through blog entries -- still haven't decided on that front. Once I've completed the book, I plan on tying in some of the theoretical concepts to the practical distributed systems I work on through blog posts.

### The Plan

In the past, I would have tried to tackle all three of these at once, but this year I'm planning on doing them roughly in order. First, I'll focus on Kubernetes -- at least until I pass the CKA certification exam. Then I'll work toward finishing the Golang-related books I've got. After that's done, I'm hoping I can combine my Go side project and Kubernetes goals a bit. Maybe I'll write the GETFILE server to run on Kubernetes and write a tutorial for it? 🏄

## Fitness Goals

### Lose Weight
My number one goal this year is to shed the pounds I gained during the OMSCS and drop back down to a healthier level. I plan on doing this primarily through diet. I haven't had much luck with calorie counters in the past because I found they led me to eat foods that were easy to track. By this, I mean pre-packaged food with scannable labels or at restaurants that had existing meal submissions. Instead, I am planning on cutting way down on fried foods, soda, and eating out. This year I will be frequenting the produce section at Whole Foods and sticking to fresh vegetables (especially kale 😋) and home-cooked meals.

### Improve Cardio Performance
I've always hated cardio. However, I just turned thirty, and the dangers of cardiovascular disease suddenly seem more real. I'm pretty out of shape at this point, so I am planning on doing a modified version of the popular "Couch to 5k" program called ["none to run"](https://www.nonetorun.com/blog/couch-to-5k-running-plan-alternative). It's a bit slower and takes longer, but has a larger emphasis on mobility and stretching, which I think will be good for me.

### Get Back Into Yoga
Back when I lived in Kansas City, I had a very regular yoga practice. Ninety minutes, twice a week with the awesome Bernie Koehrsen. That practice has fallen by the wayside since moving out to the Bay Area, and I'd like to remedy that. This year I plan on taking a yoga class at least one weekend a month.

## Odds and Ends

This year, I also plan on becoming more financially literate. The acquisition of Pivotal by VMware and forced stock sell-offs that followed made me realize I really don't understand the financial space as much as I would like. I don't yet have a plan on how to improve in this area, but I most certainly would like to! 🤑

That said, these are my goals for the year. So far, at least. 😬  At this point, they all feel both actionable and achievable, so here's to 2020!