Nik Kantar

Saturday, January 7, 2017

Goals for 2017

This worked well for last year, so lets try it again.

Last year I set some goals and achieved some of them, so I thought I’d do that again.

1. Really Learn to Touch Type

No, I don’t stare at the keyboard whilst typing, but yes, I do glance at it occasionally, most notably for passwords.

Ever since I switched to Vim, I’ve been feeling more and more like my control over the keyboard could use some improving. This will be the year I take that seriously.

2. Write Every Week

I need to write more.

In addition to posting more on this blog, I want to write a newsletter. I run into so many interesting links almost very day, from a number of sources, and I always end up sharing them via Twitter and Slack with a select few, and with very little permanence. I’d like to experiment with a consistently delivered newsletter, perhaps every week/two weeks/month, with links and short blurbs about why I’m including them. I even wrote a few drafts last Feburary, when I first thought of this, but never sent them.

Between the blog and the newsletter I’ll have plenty of available outlets.

3. Learn a New Programming Paradigm

Last year I learned Vimscript to make myself a Vim plugin. It wasn’t what I was thinking of when I set my goal of learning a new language, nor was I thinking of said goal when I did it, but the happy accident counts anyway.

This year I’d like to learn a new paradigm. The likely candidate is functional programming, mostly because I find it interesting on its own, but also because I find Elixir and Elm very appealing. In fact, I expect to learn it through Elm, as I’d like to add an enjoyable frontend tool to my skillset.

4. Up My Python Game

I <3 me some Python.

I write it nearly every day, as it’s my primary language both at work and for personal projects. I have an (at times very high) interest in a number of other languages, like Elixir, Elm, and Rust, but I still enjoy Python the most, and want to be better at it, even if my programming career takes me elsewhere.

I’m not talking about learning some esotheric syntax or just getting more practice with list comprehensions—I’m talking about understanding Python on a much deeper level. I want to delve into language design choices and how its object model works and why, in search of the Pythonic. I want to attain something that could ostensibly be seen as a certain level of Python expertise.

5. Release One Project Each Month

Inspired largely by 1PPM, this is an attempt to battle the scope creep and distractions that kill so many things I start.

Some “rules”: