My 2017 Year in Review and Beyond

Musings Jan 2, 2018

Another year is over and so naturally an end of the year post is in order. My reflection post from last year focused a lot on data. As a data-driven person, I think it's imperative to have concrete data to assess what I have/haven't achieved. Writing this post also gives me an opportunity to reflect on my year and keep myself honest. So no #fakenews here! Let's get into it.

Did I achieve my resolutions and goals?

On blogging

Before diving into any data, one of the goals I set for myself for 2017 was to blog more regularly. I can say with confidence...that I have failed this goal. Last year I have only created 8 new posts. I set my goals for 2017 too ambitiously and spent a lot of time working on other projects, so found myself not blogging nearly as often - that's something I definitely need to work on. However! I had set other goals for myself, which were to double all of my numbers this year (for both my GitHub metrics and for my blog metrics). Here's how the data looks this year for Caffeine Coding:

Caffeine Coding 2017 Metrics

At first glance, some of these numbers aren't necessarily double from last year. I wanted twice as many new users, sessions, and pageviews. You'll see that it's more around a ~55% increase for users and sessions and a minor bump in page views. This was a bit disappointing, but that may be due to a lack of volume of posts. I had written more posts last year with less time.

With that said, there were several things I was proud to see in metrics; there was consistency in month to month page views and 50%+ of my page view were from organic searches. This is a stark contrast to 2016, where 42% of my posts came from GitHub. My most popular pages were very technical posts that I wrote up because I could not find results for those topics. What can I take away from this? Well, it seems that writing extremely specific technical posts yield strong results, reinforcing the philosophy that "if there is a customer need and you solve it, people will naturally use it". Also, it's nice to know that users have collectively spent more than 235 hours on my blog. As a result, even though I may not have doubled certain numbers on my blog, I would say that quality of user engagement has been better, so I would consider this goal as an overall success.

On coding

One of the other goals that I set for myself last year was to code more and obtain an additional 160 stars on all of my GitHub projects (as I had a total of 80 stars last year). So I was looking to obtain about a total of ~240 stars on my Github projects this year. Super ambitious, but let's see if I accomplished this. Unfortunately, I don't have a cool graphic like last year (the service I used last year has discontinued the feature). So here's a janky list of my repositories.

Github Metrics

By some miracle and luck skill, my projects have a total of 276 stars! Not only did I hit my goal, but I exceeded expectations by 36 stars! This one was a stretch goal and I'm super stoked to have hit it. To be fair, one of the projects (Google-Allo-For-Desktop) was more of an experiment than an actual open-sourced project (read more about that here) and attributed to about 54 stars, but whatever, still counts!

However, compared to 2016 I have contributed less overall. Whereas I made over 160 commits in 2016, I've only made around 86 in 2017 - that's almost half the amount. So what gives?! Well, I actually spent a lot of time in 2017 working on other private projects, which are part of my private GitLab repositories. But believe me when I say I spent a lot of time coding in 2017. Thus I can confidently say that I have achieved my goals of coding more and doubling my cumulative star count.

Looking at 2018 and beyond

Now that I've spent some time going over the data and reflecting on the goals I set for 2017, I've realized that I can't set my 2018 goal to double all these numbers again; this definitely cannot scale. In order to improve on both my open source contributions and growing the blog, I would have to spend more energy and effort to make these things happen. The problem is, these are no longer my focuses. A new year means new goals.

If I had to reflect on 2016 and 2017, they both had vastly different themes. My theme for 2016 was learning and sharing. I had set out to create a blog, learn from the open source community, and share this knowledge with the community. Even in my personal life, 2016 was a year of transitioning all my learnings from my first employer, then bringing it to a new place where I can continue to learn and share everything I know to improve the product/platform.

In 2017, the theme was self-reflection and iteration. My 2017 was spent on obtaining a better understanding what I liked and disliked; what motivated me and what I found frustrating; and what I needed to focus on and what I needed to ignore. I spent time redoing and improving on not just my ideas/code, but also my personal self. This was reflected in both my code contributions this year, my side projects, and even this blog.

For example, unlike other posts I've written in the past, this is the first post I've written that had no pre-planned structure. I've learned that writing a new post takes a long time. The dread of the time spent writing these posts are what's been deterring me from writing as frequently. Writing one of my other posts would take usually around 3-5 hours to craft. So why should I have to spend so much time writing? In contrast, this post only took me about an hour and a half of just free-writing. Granted, this wasn't technical in nature so it was easy to write, but I didn't dislike writing this.

A new year means new goals

When I reflect back on my very second post on Creating a Successful Blog, I determined that a successful blog meant the following:

  1. It would have to be fun for me to write
  2. It would have to be engaging, interesting, and meaningful for at least 1 person

These goals aren't even necessarily restricted to this blog, but have huge relevance to my personal career as well. If I wanted to reword this to represent what it means to have a "successful" career, it would probably look something like:

  1. My work would have to be fun
  2. My work would have to produce something engaging, interesting, and meaningful for at least 1 customer

I feel I have achieved (2) in both respects, but I have lost sight of (1). So to kick off 2018, I've decided my theme for this year to be boldness and selfishness. Now, what does that exactly mean? Well, only time will tell. But stay tuned, cause my year is about to get interesting.

Gunter excited