Life is short, so we have to prioritize the things that we learn. This is my current list of interests in practical and theoretical areas related to programming.
Published: May. 15, 2015
Last updated: Feb. 9, 2022
This morning one of our developers pointed me to a post from Avdi Grimm describing the programming languages he was most interested in learning. I agree that it's important to recognize that our time is limited, and we need to prioritize tools that we want to learn, and also to realize that some things have to be pushed aside to make room for our priorities. Inspired by his post, and at the same time realizing that my own priority list is almost entirely different, I decided to jot down my own roadmap. My own language interests tend to blur the line between theory and practice, so I'll present a list of languages as well as theory that inspires some of my interest in tools at the moment.
I’ll be attending the Oregon Programming Language Summer School in June 2015. Topics covered will include type theory, category theory, and languages such as Coq and Agda which are deeply related to these theoretical areas. As I prepare for OPLSS this June, I'm studying the YouTube videos from the OPLSS 2012 on similar topics. Specifically, I'm going through the talks on Type Theory, Category Theory and Proof Theory, which are taught by some of the most prominent figures in each area (Robert Harper, Steve Awodey, and Frank Pfenning, respectively). I have a long reading list related to the areas of theory that interest me, but I'll leave that for another post.
As a programmer, I think many times each week that I'm lucky to be in a field where the horizon of things to learn is so broad. It requires strong prioritization to maintain focus on our particular areas of interest. There is a wide range of languages, from Haskell, which is an extremely pragmatic tool that we use every day to rapidly build working systems, to Idris, which is introducing compelling concepts at a dizzying rate for the next generation of programmer tools. I'm excited by this path that I've found for my current study of tools and theory, and I hope that some of these ideas have also piqued your interest!
A big thanks to Stack Builders Juan Pedro Villa, Luis Laverde, and Lori Leitgeb for providing useful suggestions on a first draft of this post.