Table of Contents
Last year I started writing down a summary of some things that I accomplished and learned in the previous 365 days. It’s a good way to put things into perspective and compile a high-level plan for what can be done differently in the coming year!
It’s time to re-visit this tradition for an overview of 2018, and set some goals for 2019! Now, I am not that big into setting resolutions because one should be able to do dope stuff on a rolling basis without some arbitrary time markers, but it’s nice to have a baseline against which you can measure progress.
Personal growth #
Every year I set the goal to grow as a person - this can encompass many areas, that I tried to break them down in their own sections below.
I remember the late January of 2010 when I started this blog. Look at that snazzy WordPress theme!
Running on a shared host, in a hard-to-manage WordPress instance (blog posts would randomly not save - it was a pain) and with a FeedBurner widget - times sure have changed since then, with this blog now running in the cloud, behind a CDN and with content being written and published from GitHub.
I really feel like blogging is a much better outlet for me to create long-lasting content than any of the social media sites. Instead of shelling out tweet storms, I started working on putting together more thought-through blog posts that can live within my own little universe, that is this site. In the past year, I’ve made some pretty good progress in this direction, which can be seen in the audience growth.
The number of daily page views went up from 62 to about 300-360, netting a total of almost 100,000 page views this year alone (for comparison, in 2017 that number was 15,000) - a vanity metric, for sure, and I am working to make the numbers a bit more actionable. There is more work to be done - I already have a long list of blog posts that I need to write in the coming months. Speaking of which, this year I found time to put together 30 blog posts (from 24 last year) - baby steps, but this number is going up as well.
Looking back, these are some of my favorite posts from this year:
- Building docs with GitHub Actions for those of you who want to automate API documentation building processes with the hottest new development from GitHub.
- DIY Docs in the cloud explores how you can host your own documentation in the cloud with processes very similar to the ones we have at docs.microsoft.com.
- Helping people work efficiently while remote describes some best practices that I learned working from the Great White North with a team distributed across the United States and China.
- Unlimited storage for your Nest cam, with no subscription talks about how you can record the video stream from your Nest camera at no cost!
2019 Goal: Put together 50 high-quality technical blog posts and grow my photo timeline.
I’ve really ramped up my reading numbers this year, all in an effort to be a better program manager - that turned out to be a worthy endeavor, as I got to read 14 books on the subject. Not all of them were good (there is a good amount of fluff/common sense titles), however there are some gems that really helped me get a better grasp on what it means to deliver value and ship customer-oriented experiences. Some favorites include:
- Exponential Organizations by Salim Ismail - a really good read that explains how some organizations get ahead of the others due to ruthless focus on innovation and risk taking.
- Deep Work: Rules for Focused Success in a Distracted World by Cal Newport - I can’t say I am ready to go to the same extreme as Cal, but it definitely is a nudge in the right direction on how to structure your life for maximum positive outputs.
- Remote: Office Not Required by Jason Fried, David Heinemeier Hansson - I work with a remote team, and this book outlines some of the best practices for putting things in motion with folks who don’t sit in the same office with you.
- The Innovator’s Dilemma: The Revolutionary Book that Will Change the Way You Do Business by Clayton M. Christensen - a great read on why innovation is hard in larger organizations and how to overcome the obstacle (with very well-described examples).
2019 Goal: Read 50 books out of the ever-growing reading list for the year.
The one way I can describe 2018 from the engineering skill growth perspective is “full of Python”. I’ve moved into an environment I barely used and forced myself to write tools in Python instead of the well-familiar C#, and I loved it. I spent some time working on foggycam, my Nest recorder project (182 stars on GitHub - wow) - all done entirely in Python. And what am I doing with it now? Learning how to write unit tests in the language.
I’ve barely used Visual Studio this year, instead relying entirely on Visual Studio Code - I work on a Mac, so the tool became a good lightweight option to get coding done. This taught me how to be more proficient with deeper debugging tools and the terminal instead of relying on purely visual/surface-level debugging. Arguably, tools are there to make our engineering lives easier, however I do want to have a much better understanding of how things are operating behind the scenes.
In addition to that, I am actually really proud of my GitHub contribution graph this year:
A lot of it is to documentation, but also a large chunk of it is in repositories that deal with tools, scripts and extensions (speaking of which, I also wrote my first VS Code extension). After visiting GitHub Universe in San Francisco this year, it finally clicked with me - the future of software communities is going to be with GitHub. And if you know me, you know that I am excited about everything GitHub, and I am more and more excited to work with the tools and services offered by the company to work in the open - this was a huge shift in habits that I intend to extend in the future.
2019 Goal: Contribute more to open-source projects and build out new projects in the open (thank you GitHub).
Work at Microsoft #
This year has been super-productive, if I do say so myself. I am part of the team that builds docs.microsoft.com, and this year I got the honor of focusing and helping define the API documentation and code samples infrastructure charter - there is so much we still have in store to make lives for developers better.
Some of the features that I get to work on with a fantastic engineering crew, that shipped, include:
- Java API Browser
- Python API Browser
- Cloud Shell integration in Microsoft Learn
- Tooling fixes and updates to nue, mdoc, code2yaml, type2docfx and node2docfx.
In addition to this, we’ve done so much work to automate internal processes, making the release of up-to-date API documentation a minutes-long process (it normally could take several hours). We’ve also moved the site feedback from UserVoice to GitHub, making it that much easier to actually provide feedback, track progress and assign work items to the right people for follow-up.
And of course, the lovable @docsmsft (the mascot’s name is Doc, by the way) grew from a mere 5,000 followers to 16,000 - we really did catch people’s attention with (ocassionally humorous) tweets this year.
2019 Goal: Ship more developer experiences and reach out to more customers to get their feedback and insights.
There is a lot to be excited about in 2019, both personally and professionally - big plans and a lot of enthusiasm about creating more impactful projects.