I intend to spend the rest of my life continuing to learn new things; partially to stay professionally relevant, but mostly because I’m curious and enjoy it. In spite of doing an extremely poor job of keeping any writing up to date on this site, I am going to start doing annual recaps of what I have learned over the past year. I am not totally convinced that I will use the same broad categories year-over-year, but had to start somewhere. These are the tools that I have been learning to use over 2017. I have not mastered any of these tools, more just built enough of a baseline competence to accomplish my goals in each of them.

  • Some of the Python data analysis/visualization packages (pandas, Matplotlib, seaborn)

    I have spent a fair amount of time using R for data analysis. Learning that was nothing short of painful. R is wonderfully powerful, has a large active community, and is perhaps the most inflexible and unenjoyable programming language I have used. Were it not for Hadley Wickham’s packages (ggplot2, dplyr, rvest, and others), I probably would have given up a long time ago. I have always appreciated the feel of Python, and wanted to learn to use some of the data analysis ecosystem. Long story short, I don’t think I will be using R for much in the future.

  • Docker – redeploying an app I had made using a docker container

    Especially when it comes to software infrastructure tools, I don’t feel like I can ever really grok the concept and value of something until I have seen it in action and done something with it. I had a concept of what containers did, but wanted to see it in action. I built an eliminator pool app for pro football season, and I redeployed it using docker. It was one of the great ‘wow’ moments that happen every once in a while with technology. I’ll never have to configure a server for that app again.

  • Django – learning a python web framework

    As I mentioned above, I have always found Python to be a satisfying coding experience. I mean, how many other languages have something like PEP 20. Dating back to high school, I had done a lot of scripting exercises in Python, but precious little in terms of applications. Having spent more time on javascript web frameworks, Django was awesome. It felt more thought-through.

  • d3 – wanted to make a chart interactive

    Javascript is fantastic. And I hate it. Both. It’s ugly and slow, but is everywhere and can be made to do most anything I can imagine. That said, d3.js is so awesome. I’m a big fan of visualization tools, so I wanted to use d3 for the chart on my Reading page. I still have more I’d like to dive into on this, as I have time.

I am not sure yet what I will focus on what tools I will spend time learning next year. I think perhaps spending some time with Kubernetes and Lambda on AWS. Suggestions are welcome!