11 min read

Yearly goals: 2021 experiences

At the beginning of last year, I got the motivation from other people’s Twitter posts to set and track my own goals for what would surely be the year we would emerge from the shadows of the pandemic. With an ever so slightly more jaded outlook to life, I’m doing the same this year. On a global level, many societies didn’t seem to have learned an aweful lot from the Covid years of 2020 and 2021. From a personal perspective, I hope that the experience of setting and sharing my goals has helped me to define better goals for 2022. This post is a brief retrospective on the 2021 part of my journey, and the lessons I hope to have learned for the road ahead.

How did your year go?

Those were my 2021 stretch goals and the tally I drew at the end of the year:

Given that 2021 was year two of a global plague, it might be fair to add ‘having survived all that’ to the list of accomplishments. But I’m aware (and grateful) of my priviledged situation of being able to work from home on my computer, so let’s not cheapen the accomplishments of those who actually were out there working hard and who managed to stave off (or overcome) serious illness. A bit of perspective is necessary, from time to time.

At the same time, I think it is important to highlight the degree of structure and control that can be provided by setting goals and trying to reach them; however much arbitrary or insignificant those goals might appear in the bigger picture. I believe that especially in uncertain times there is a lot of comfort in wrestling a modicum of control from the chaotic universe. As long as we do the best we can do to our abilities (and circumstances) then we’re doing rather well. But enough existentialism. Let’s get back to data science.

On the goals themselves, I’d like to go into more detail than the Twitter thread allowed. I’d like to emphasise that those are stretch goals, and that I didn’t expect to reach all of them. Wouldn’t be fun it were too easy, after all.

Spend 500 hours on Kaggle

Success. Now, hours themselves don’t create mastery; it’s about what you do during those hours that counts. A short time of focussed effort counts for more than a much longer period of distracted dabbling. Having said that: setting a specific goal that translates to 1-2 hours per day can help immensely in creating habits and budgeting time.

For the latter, I would often spend about 1 hour per day on Kaggle problems during the week, and 2 or 3 hours on the weekend. Calling it a (Kaggle) day after that helped to avoid the temptation of working later at night, especially during the week. Kaggle challenges are more akin to a marathon (foreshadowing …) than a sprint, which means that pacing yourself becomes important. In general, having a healthy work-life balance is necessary to avoid burn out and loss of motivation (or health).

The habit-building effect of having a specific goal can hardly be overstated. Continuity is one of the main factors of successful learning and growing. If you’re spending (almost) every day on a certain project, or practicing a specific tool, then you are bound to make at least some progress in understanding. And learning is what Kaggle is mostly about, for me. (And the community, of course.)

Join 4 competition and team up in 2 of them

Success. This continues the previous train of thought: competiting is less about the ranks and medals, but more a motivation for learning new skills and tools. I always found it most efficient to learn by doing - and to learn from examples and applications. Instead of merely reading books of theory, or even code, I prefered to focus on the skills that I needed to solve a specific problem. And what better challenge to spend 3 months at a time competing with the brightest applied-ML minds on Kaggle on a new and exiting problem.

In 2021, I participated earnestly in 5 competitions. I also briefly dabbled in a few others; but honestly less is more in this kind of situation. You want to focus on one thing at a time, instead of scattering your attention across lots of projects and not really devoting enough time to any of them. I know, the temptation is great to jump into every new competition that launches. I’m trying myself to recover from that; so I recommend you do as I say, not do as I do. Having said that, 2021 for me was a notable improvement over previous year.

A lot of the learning effect on Kaggle comes from reading other people’s contributions in form of Notebooks or Discussion posts. This kind of effect is applified by a factor of a lot when you team up with other competitors. I had only done this very occasionally in the past. The main reason was probably that I didn’t have enough confidence in my own skills to contribute meaningfully to a team. I don’t want to be carried. I want to make a significant difference. Having learnt a bit more in 2020 I decided to get outside of my comfort zone and challenge myself in a team.

It turned out to be a very fun and rewarding experience. I joined forces with my Kaggle buddy Yassine on 2 imaging competitions and learned a lot from him on deep learning architectures and training strategies. On the way, I became much more confident in using the high-level FastAI framework and also Google Colab, which is a great cloud environment for GPU notebooks. Read my mid-2020 review on cloud GPUs right here. Bottom line: there are lots of great things to be found in the clouds these days.

Publish 52 episodes of Kaggle Hidden Gems

Success. The Hidden Gems series is my attempt to give back something to the Kaggle community by discovering and promoting underrated Notebooks published on the platform. The Kaggle community has grown enormously over the last years. So many bright people from many walks of life contribute to the community; which is great because you have the chance to learn from them. One difficulty, though, of this higher volume of contributions is that sometimes great content can have difficulties standing out and being recognised for its quality.

Every week I pick 3 new, underrated Notebooks to highlight. Here’s the most recent example at the time of writing: episode number 88. As a result my week doesn’t feel complete now without reading cool Kaggle Notebooks. In 2021 I succesfuly managed to establish a continuity of one episode every Tuesday, without fail. 52 episodes in 52 weeks. On the occasion of episode 50, I gathered all the Gems data into a Kaggle dataset and put together a Starter Notebook. This is Kaggle, after all, where even the data has data.

Write 12 blog posts

Fail. I only wrote 2 posts in total in 2021 (after writing 9 in 2019, and 5 in 2020). Establishing and keeping up a blogging habit is a question of time, certainly. But in my case, it might also be a challenge of perfectionism and preference for long posts. Like this post here, which is already shaping up to be longer than I had intended.

Going out of my comfort zone when it comes to writing isn’t easy at all. I don’t expect a large audience for this blog. I’m writing mostly for myself, so that I can remember and digest some of the things that I picked up over time. At the same time, I want for anyone who stumbles across those posts to get some quality information out of reading them. And that holds me back from publishing more frequent and shorter posts. That is one lesson learnt from 2021.

Run my 1st marathon

Success. I gotta be honest: this is probably my proudest achievement. My first ever marathon. 42 km in one go. After failing a few attempts during the year, I finally got there on Dec 6th. Just in time to make it a 2021 achievement; but in time nonetheless. Running in colder weather was also more conducive to success, as opposed to my summer attempt in August. Who would have guessed.

For me, exercise has always been a way to destress and detach from coding and data analysis work, which isn’t the most physically active of all occupations. As such, I didn’t come cold into this marathon challenge but have a certain level of fitness that I’ve built and maintained over the years. When the pandemic started, running outdoors was one of the few exercises that I felt comfortable doing. Having never ran more than 10 km at a time before (and that was quite a few years ago), I then gradually worked up to this marathon challenge. From 5k to 10k, and then running my first half-marathon (21 km) in 2020.

I didn’t read a lot of running blogs or stuff, so some of the things I discovered for myself might have been easier to read up on, in hindsight. None of this is expert recommendation, obviously. One insight is that a full marathon is a very different beast from a half-marathon. The 21 km of the half-marathon are something that I could run without stopping or nutrition; even without water (although that might not be generally recommended). None of that worked for me for the marathon.

Turns out that after 2-ish hours of continuous exercise you have burned through most of your carb reserves (i.e. glycogen). I genuinely didn’t know that. Coincidentally, my longest non-stop exercises thus far were just under the 2h limit (and years ago). So, in my first past 30-km attempt I had to stop with leg cramps and fatigue, and it took me a couple hours and a good meal to recover from that. I later found out about that glycogen limit and that I had literally ran out of energy to burn. Fun times. So for the next attempts I got some energy gels plus water with electrolytes and it made a huge difference. Almost no issues after the successful marathon. Just the fun of walking up and down stairs for the days after.

In numbers: I ran a total of 1332 km in 2021, which translates to about 1/30th around the earth, in 116 hours. I also logged about 3.7 million steps, for an average of about 10k steps per day. As a data addict, I’m using a Garmin watch and app for all those measurements. No link, since they haven’t given me a sponsorship yet. Gotta keep running.

Do 1 muscle up

Fail. Another failure. I didn’t even get close. I did pull-ups frequently, after my shorter runs, but couldn’t get a rhythm going. Another excuse is that I lost access to a decent pull-up bar early in the year, so that I had to make do with the crossbars of small football goals or with playground structures, both of which always have bars that are at the very least slightly too thick to grab them comfortably. If they’re not weirdly shaped to begin with. I’m sure that everyone knows exactly what I’m talking about. Very frequent situation.

In my eternal optimism, I had also hoped to finish the marathon by mid year. And then focus on the muscle up afterwards. As it turned out, that didn’t quite work either; what with me needing until December to run the marathon and all. So, the muscle up needed more effort due to the conditions not being as ideal, which was more than I could do at the time. Another reason for the failure was poor planning, as I didn’t look for specific muscle-up progressions that would take me there.

Sleep 8 h/night

Success. This was likely the most important aspect. Sleep and rest are super important. We can only burn the midnight oil for so long before it has bad consequences for our mental and physical well-being. Balance is vital. I was very happy to reach and exceed my goal.

But even though I got an average 8.4h over the year, there remained a notable variance of about 1 hour. I sometimes had to make up for shorter nights with sleeping longer at other times. I’m far from being an expert on sleep science, but from what I have read I believe that consistency is needed for building and maintaining healthy sleep patterns and restful recovery. Those patterns of mine still need some work, as the variations in sleep and wake times were also larger than I would have wanted.

I’m going to end this post here. Originally, I was planning to put 2021 results and 2022 goals in the same post, but this one is pretty long already. See the lesson above on failing to write frequent and short posts.

Coming up: how I’m building on these experiences for my 2022 journey.