2020: Year in Review

I’ve spent the past few days reflecting on the past year. 2020 has been an eventful year in many different ways, and I thought it was important to review some of its highlights and what I learned along the way. I also decided to write a year-in-review post to document my journey for myself and to share with anyone else who may find it useful.

Changing jobs

In July, I left Eyowo, a fintech company in Lagos, Nigeria, after almost two years as a backend developer (intern and full-time employee).

Looking back, I’m grateful for the time I spent there. I worked on the consumer, retail, and payroll products. And I got to learn a lot about building fintech products (and the Nigerian market). I also feel honored to have worked with and learned from many talented engineers in the company, solving different user and engineering problems.

Later in July, I joined an investment bank in London as a software engineer. I worked remotely from Lagos for the first few months before relocating to the UK in November.

The new role is a different kind of challenge in a different environment. And it’s an opportunity to work on new things at a different scale and learn from new people.

Moving out

At the end of November, I permanently relocated from Lagos to London. I had been anticipating the move for more than two years (since I first did an internship in the UK in April 2018). But it was an emotional move still. Before moving, I had lived in Lagos all my life. And most of my family and friends live there.

But moving to London feels exciting. I’m looking forward to exploring the city and meeting people when the pandemic is over.

Learning

Besides changing jobs and moving out, I also got to learn different things this year. My learning journey tends to be flexible. I follow a loose list of topics I’m curious about, and I try to find the best content available about those topics. I found a few books and podcasts interesting this year. And some tools helped me make the most of what I was learning.

Podcasts

Before this year, I wouldn’t have considered myself a “podcast person.” I had listened to a few episodes from a few different podcasts, but I didn’t follow any of them earnestly. But this year, I learned to enjoy podcasts—in particular, long-form podcasts.

Some of my favorite episodes of the year were: Elon Musk and Naval on The Joe Rogan Experience; Patrick Collison, Naval, and Yuval Noah Harari on The Tim Ferriss Show; and George Hotz, Richard Dawkins, Alexander Fridman, and Eric Weinstein on The Lex Fridman Podcast [1].

I enjoy the extended nature of the podcasts. Besides the subject of the discussion itself, I find that I also get to learn about the speaker’s personality and worldview.

Books

I also got to read a few books on different topics this year. Some of my favorites were: “Heroes,” a collection of stories of the heroes from ancient Greek mythology; “Reality Is Not What It Seems,” an account of how our understanding of the world has changed over the centuries, from Aristotle to Faraday to the Higgs boson; and “Notes from the End of Everything,” a fictional story of an author diagnosed with terminal cancer, writing about regret, friendship, existence, and death.

Though I had used them both before this year, Goodreads and Kindle helped me maintain my reading habits. I use Goodreads to discover new books and organize lists of books [2]. And I take notes and highlights when I read on the Kindle application. I also bought a Kindle reader this year. And it’s been a much better experience than reading from my mobile phone or laptop.

Roam Research has also helped me learn better. I tried it out for the first time in August, and it quickly became part of my daily routine. I use Roam for a lot of different things, like journaling and drafting blog posts. And I also use it to keep notes and highlights from books and podcasts. I use Readwise to auto-sync the notes and highlights of books I read on my Kindle device to Roam. And I manually enter notes from the content I read or listen to elsewhere.

The unique thing about Roam is how easy it is to link different texts together. I find this especially helpful when reviewing notes. After indexing a phrase or an author’s name, I can jump around to view different notes related to the same author or idea [3].

Taking better notes, in general, has helped me learn things better. And I’m looking to take better notes while improving the quality of content I learn from and how well I apply them to my daily life.

Building

My blog

I started blogging (again) this year. I reclaimed my domain name (chidiwilliams.com) in April and published a few technical posts. Since then, I’ve written two posts on Go (one on writing web servers and another on slices) and a four-part series on implementing the game of Ayòayò with JavaScript.

Writing on the blog has helped me consolidate my learning and share them with the larger tech community. I’ve received comments and personal messages from people who have found the posts helpful. Next year, I hope to write more—and better—blog posts.

Open-source projects

I also worked on a few open-source side projects this year. In the first half of the year, I got curious about writing 2D and 3D software with JavaScript. In February, I wrote a 3D drum machine that plays drum sounds on the browser with Three.js. In March, I built a 3D simulation of the earth orbiting the sun, also with Three.js. And in June, I wrote a program that generates a fractal called the Sierpinski hexagon. I learned a lot about how 2D and 3D animations work on the web from building these programs.

I also contributed to a few of my friends’ projects, including a repository of data structures.

In November, I wrote GitHub Stories, a Chrome extension that adds stories to the GitHub dashboard. The project went viral on social media: the launch tweet had more than 180,000 views, and the repository currently has more than 200 stars. It was a lot of fun to build and share.

I enjoy building open-source side projects because it lets me use new tools, techniques, and concepts outside of what I do in my day job. And I hope to build more fun projects next year.

Discord and #SystemDesignTuesday

I and some friends from the Nigerian tech community frequently have conversations on Twitter about designing software systems. We would discuss questions like: “How would you build X?” or “Why would you choose X tool/library over Y?".

And at some point, I felt like those discussions would be more effective in a more structured and accessible environment. Sometime in August, I spoke with two friends of mine (one of them runs @SystemTuesday), and we set up a Discord server.

Since then, we’ve run about 3 group call sessions on the server to discuss different questions and share resources related to systems design. About 30-40 people join the calls on average.

Looking back, we spent a lot of time stressed on the fine details while planning: which application to use, which channels to create, what we would do when people become bored and uninterested. But at some point, we decided to eat the frog. I set up the server to live-stream the development of GitHub Stories, and we figured out the rest from then. In this case, it was better to try things and figure the rest on the way than overthink the details and lose momentum.

It was a rewarding experience overall. I’ve learned a lot from the sessions myself, and we’ve received positive feedback from others who have attended.

Experiencing tragedy

2020 also brought with it troubling times.

The health and economic effects of the COVID-19 pandemic all year round were worrying. It wasn’t clear how well the government and the general public were responding to the pandemic. And many times, I was concerned for my family, my friends, and myself.

There were also many episodes of violence. For days in April, there were robbery incidents around Lagos, where I lived with my family. Some nights, we woke up to the sounds of gunshots nearby.

In October, there were peaceful #ENDSARS protests in Lagos and other cities around Nigeria. Nigerian youths protested against police brutality from the Special Anti-Robbery Squad (SARS), a rogue police unit. And on the 20th of October, the Nigerian military opened fire on the protesters. The violence escalated, and over the next few days, there were many more incidents of break-ins, looting, arson, and murders across Lagos and other cities in Nigeria.

These times were scary and tragic. It was devastating to lose people to those incidents.

Others

Music: Besides being entertaining, music helps me recover and refocus on stressful days. I’m grateful to have gotten some time to practice the guitar and keyboard this year. I learned a few more techniques and songs, and I’ll be practicing more in the new year.

Religion: I’ve spent a good part of the last couple of years thinking through some of the biggest issues I’ve had with religion. Consequently, even more so this year, I’ve grown more skeptical about religion.

Lisp: Within the year, I also got curious about functional programming, and then Lisp. I had heard about the language in the past, but I knew nothing about writing it. Through a handful of YouTube tutorials (like MIT 6.001 Structure and Interpretation), Paul Graham essays, and some practice, I got into writing Common Lisp. I didn’t end up building any serious projects with the language. But I learned about some new concepts, like meta-programming and “bottom-up programming.”

Stoicism: Stoicism was one of those topics I’ve heard about in passing. And this year, while learning about ethics and values, I spent some time reading and listening to conversations about Stoicism. I wouldn’t consider myself stoic in practice. But it was insightful to learn what the Stoics thought about values like reflection, focus, self-control, and modesty.

Relationships: For a year in which I was mostly locked indoors, I met a surprising number of new people (mostly via Twitter). I made new friends and reconnected with old ones. And I’m grateful for and to all of them.

2020 was an impactful year for me in many ways. Some of the decisions I took, things I learned, and emotions I felt this year would remain with me for a long time.

In the cosmological sense, new years appear to have little significance. We’ve chosen an arbitrary point along our journey around our home star to say, “We’ve come full circle.” And we try to reflect on the previous lap and look forward to the next one. We give the time meaning.

And it is in this sense that I look forward to the new year, to the new lap, to learning more about myself and the world, to building and growing relationships with family and friends, to doing the things I value the most.


Notes

[1] Lex Fridman was one of my biggest inspirations this year. I learned about many new, interesting people and ideas from his podcast.

[2] If you want to follow my reading lists and reviews, check out my Goodreads profile. I typically read books about popular science, philosophy, and technology.

[3] Admittedly, at $165/year, Roam Research is much more expensive than other note-taking apps, and it may not be worth that amount for everyone.