wolfgang ziegler


„make stuff and blog about it“

My Resolutions for 2020: Save the Planet and Learn Erlang

January 11, 2020

I have never been much of a new year's resolutions kind of person, but this year I found good reasons to change that. I also decided to go ahead and blog about it, in order to increase my commitment to those resolutions.

My first resolution is about using public transport for my daily work commute to contribute my share to climate protection.

The second resolution - learning the Erlang programming language - feels comparatively mundane, but is still a concern for me and something I have been meaning to do for quite a while now.

Climate Protection

Climate protection or rather reducing my carbon footprint is my number one resolution and the one I am actually very serious about. Embarrassingly enough, I have been using my car for commuting to work most of the time throughout the last year. Even worse, my car is a gas-wasting abomination (I'm planning to retire it in favor of an EV anyway) and my workplace would have been perfectly reachable with public transport. Since we moved offices, it has become a bit more cumbersome, but I'm fully committing to public transport now.

  • I gave up my office parking space.
  • I got a bus ticket for the full year in return for it (yay Dynatrace btw!).
  • I bought an E-Scooter to optimize the "walking" distances between bus tops and home/work, because commuting efficiency is definitely an important factor.
  • Additionally, I'm working from home on Fridays to avoid commuting altogether that day (yay Dynatrace again!)

Erlang

My second resolution, that has a less dramatic motivation, is learning a new programming language, namely Erlang. I have been meaning to take a closer and hands-on look at this language for quite a while now, but never really managed to allocate the time for it.

Luckily, I still had the great Seven Languages in Seven Weeks sitting in my bookshelf that I once half-heartedly read through.

Seven Languages in Seven Weeks.

One of the languages it covers is Erlang and I already did what I honestly hardly ever do - I started with the book's tutorials and follow-up assignments. Here's the first assignment I actually did:

Write a function that uses recursion to count to ten.

And here's my solution to it:

-module(count).
-export([to_ten/0]).

to_ten() -> add_to(0).

add_to(10) -> 0;
add_to(X) -> add_to(X + 1) + 1.

Now I'll "just" have to finish this book and find some real-world pet project I can work on. I'm grateful for ideas btw.

It's on!

Now that I have finished this blog post, my resolutions feel way more committing, which was the plan after all. I'll also set myself a reminder to do a retrospective post at the end of this year.