How to Make Yourself Into a Learning Machine
Imagine this:
You’re an 18 year old with just a high school degree. You immigrate to a new country that speaks a different language, and start work with some of the brightest engineers in the world.
Soon after, you’re thrust into management. Now, you’re leading teams of people who are 10 or 20 years older than you, working on one of the fastest growing internet companies of the last decade.
You have two options: sink or swim.
That’s the position Simon Eskildsen found himself in early in his career. He left his home in Denmark after high school, and moved to Canada alone to take a pre-college gap year working at Shopify.
When he started, Shopify had 150 employees supporting tens of thousands of merchants. Now, it has 5,000+ employees and over a million merchants.
And Simon never went to college — he stayed at Shopify and moved up the ranks to lead infrastructure teams that help keep Shopify processing hundreds of thousands of requests a second, day and night.
So how did he do it?
He began to treat his mind like technology infrastructure.
Suddenly, instead of building systems to optimize server performance, he was optimizing his own brain: he was building himself into a learning machine.
Simon realized that in order to level up fast enough to do his work he needed to read — a lot. And not only that, he needed to retain what he read.
So he built an elaborate system to read, retain, and apply the lessons in hundreds of books. And he didn’t just read about infrastructure — he read literature, and scientific history; he read about politics, and philosophy.
Along the way he discovered that reading broadly was the best way to get to the bottom of things, and therefore the best way to get better at his job.
We explore his elaborate system for remembering what he reads using Readwise and Anki, how he built his own custom Zettelkasten in Markdown, his process for automating his language learning, and his project to cook a dish from every country in the world.
Let’s dive in!
Simon introduces himself
Hello, I’m Simon! I grew up in Denmark, but I left home at the ripe age of 18 to pursue an opportunity at a company called Shopify in Canada.
I had heard about Shopify from the Rails community, and after I graduated high school I did an interview with them. After the interview they said, “Yeah, you can come visit us in Ottawa.”
And my response was, “What’s an Ottawa?”
But I ended up interviewing again in Ottawa, and then decided to join for a gap year. Things went well and you could say I’m now on my sixth gap year. This was the job I would have wanted had I gone to university; I just got lucky to get in right after high school.
Back then, Shopify had tens of thousands of merchants. Today there are over a million. I work on building the infrastructure to make the site scale.
How he started reading
I began taking reading seriously when I started at Shopify in 2013. It was primarily driven by the fact that I became a manager very early in my career.
When I started managing, I felt a strong obligation to be the best lead I could for the team. Managing is a big responsibility — and it’s especially challenging when some of your reports are 10 years older than you.
It seemed to me that the best way to meet this responsibility was to wake up earlier and read something every day before I came in.
As I started to read more, the question was whether to go deep or wide. I am curious about so many things, so I naturally gravitated to read widely. I strive to be T-shaped: really good at something, but with a wide foundation — and that’s a metaphor we use widely at Shopify.
I read 30-50 books each year on topics ranging from the history of transistors to ancient philosophy. My girlfriend jokes that because I never went to university, I still enjoy studying. I’m not sure. I think I’d love university.
How he selects books
I used to have an extremely rigid process to decide which books to read, but I don’t anymore.
What I found was that choosing books with a fancy process ends up being more about what I “ought'' to read, rather than what I actually just find most fascinating. Eliminating a rigid system helped me pay better attention to what I like and don’t like: getting through the 700 pages of Anna Karenina was a struggle, but I tore through a book on the history of the telegraph in no time.
The one thing I do try to follow is to go on streaks of reading a lot of books on a particular topic around the same time. Doing this is useful because it means I don’t have to just trust one author’s perspective on a particular topic — and helps me connect a lot of facts together, so I can understand things better.
For example, last year I became fascinated with the middle of the 19th century. There’s so much there: the gold rush, the ice industry, the Industrial Revolution, the telegraph. It was a fascinating time.
I pick books by browsing Amazon and sending samples to my Kindle. Then I check out the samples to decide what I want to actually read cover to cover. I learned this from my friend Dan Doyon.
How he reads books
Once I started to read more books, I realized that I didn’t really remember much from them. That bothered me. So I went down the rabbit hole of building a bunch of systems to help me remember what I read.
The core of the system is highlighting.
Anything that I find that’s important, I’ll highlight on my Kindle. All of those highlights automatically go to my Readwise where I can add them to my learning system. Readwise is fantastic because it automatically scrapes all of my Kindle highlights and puts them into one place for me where I can search, tag, and review them.
My learning system itself has two components: a flashcard system and a custom-built note repository inspired by the Zettelkasten — which is a note-taking system developed by the social scientist Niklas Luhmann. The Zettelkasten is where I spend time processing, categorizing, and connecting what I read.
How he uses flash cards to remember facts
When I come across something in a book that seems useful to understand and remember, I will highlight it on my Kindle and add a note to it with the text: “.flash”.
All notes with “.flash” in them are then automatically loaded into Readwise and organized under a “flash” tag.
I’ll then periodically open the list of “flash” tags in Readwise, and then translate them into flashcard form in Anki.
Anki helps me remember things by surfacing flashcards that I’m likely to forget just before I’d otherwise forget them. It’s called spaced repetition.
I read to learn, and I flash to make sure I remember.
I have flash cards on everything from how many kilowatt-hours it takes for a car to travel 100 kilometers, to the definition of the term pollyanna, to the history and culture of the islands of New Caledonia.
It’s powerful to read something and be confident you’ll retain it for a long, long time. To me, flash cards aren’t to memorize random things, or to win at trivia.
They’re there to trigger a concept you’ve already learned, but want to make sure you don’t forget.
I am creeping up on 10,000 cards in Anki, and I’ve been doing this for over 4 years. It’s probably the most impactful habit I have in terms of impact over time invested.
He stores large concepts in his custom-made Zettelkasten system
When I highlight something from a book that contains an idea, concept, metaphor, or generally something more abstract, I’ll put it into my Zettelkasten instead of my flashcard system. These highlights aren’t to be remembered, they are to be connected.
Zettelkasten is German for “slip box” and is a method to manage knowledge. Basically, you take ideas from books, articles or conversations and write those ideas on note cards, collect them in a central database, and link them together so that you can start to find larger relationships between concepts you’re learning.
In the beginning, I would actually use physical note cards that I would hand-write and keep on my desk as my Zettelkasten.
Keeping a physical system started to get out of hand, so I tried a bunch of software solutions — Workflowy, Dynalist, Notion — but they were all too slow, didn’t have the features I wanted, and I worried about how they’d age. I wanted a system that I could use for life.
So I engineered my own.
It’s just text files on my computer written in Markdown, and edited using a plaintext editor. I’ve also written a lot of small, auxiliary tooling for searching, browsing related notes, editor integration, and so on. The main repo where I keep all of it is on Github.
Notes get into my Zettelkasten from the highlights in my Readwise. Readwise has a feature called Daily Review which shows me about 15 of my book highlights every day.
If I think a highlight is important, I’ll create a new note in my Zettelkasten and start connecting it with others. For example this is a note about the controversy zippers created when they first came into use:
This one’s a winner. So I’ll create an entry in my Zettelkasten for it:
You’ll see in my Zettelkasten I put in the original quote, then the source, and then write a small commentary on it.
Then I’ll start connecting this to other notes. One way to do that is with tags, and you’ll see that I added a #pessimism tag to the note.
But my system also lets me create links directly to other notes as well.
You’ll see on the right-hand side I have a full-text search prompt. To find other notes to connect it to, I might start by searching “pessimism”:
The first thing that comes up is a note I took from Morgan Housel that says that pessimism tends to sound smart.
If I hit the button on my console it will add a link to this note in the original note about zippers. I’ll also write a bit about why the link is relevant.
I’ll continue searching through my archive like this, and go down the rabbit hole to think about how this note connects to everything else in the system.
By the end, the note might end up looking something like this:
Of course, no note is ever completely done. At a later point, I might come back to it, add to it, change it, or rename it.
If I’m writing a presentation, thinking about a problem, or doing any kind of creative work, my Zettelkasten is a gold-mine. All of my daily writing also happens inside of it, including reviewing books (which also end up on my personal website.)
I have about 700-800 notes, and have been doing it for about 2 years. I’ll likely continue to use it alongside flashcards, but it’s much slower to update and maintain.
My engagement with it ebbs and flows over time too.
Why he spends so much time memorizing things
I think memory is underrated.
For example, memorizing all of the U.S. presidents is something that people might think is for show. But to me it’s actually really helpful to know who was president at a certain time because it allows you to connect the president with that time period.
For example, take Reagan. If you know when he was president, you can say, Okay this was around the Cold War and it was towards the end of it, and his platform supported trickle down economics which was a very important idea in that time period.
Memorizing these things means that if you’re talking about the U.S. in the 80s, you’ll remember that he was president, and all of those concepts come up.
So that’s what I find helpful — knowing all of these facts becomes a kind of memory connector.
It gives you this web of facts for you to put new information into context, and answer questions with deduction without having to go look something up.
He uses Things for GTD
I do fairly standard GTD with Things. I use it to organize things into time-buckets, decide what to work on at the beginning of the day, and use tags to organize tasks. It’s nothing crazy. Here’s an example from a very real non-work day:
I have three main areas I throw tasks into:
Growth (a list of personal projects)
Life (chores)
Work
In the Growth section, I keep track of all of my personal projects:
I have a lot of personal projects, and I work on them whenever I have the time.
For example, I have a project called “Napkin Math” where I’m working to improve my order-of-magnitude calculations when it comes to system design.
But I have many other projects like reviewing the Vital Articles on Wikipedia, the periodic elements (and their primary uses and sources), blog posts, and a million different things I’d like to learn.
I expect most of these projects to take years, decades, and some of them I’ll be working on for the rest of my life. I run a script when I have a few minutes that helps make little bursts of progress by choosing a random one of these areas.
He’s trying to master the cooking of every country in the world
Another project I work on is called Around the World Cuisine. For the past four or five years, I’ve challenged myself to cook a dish from every single country.
My criteria for success? I want to be able to prepare it well enough that if someone from that country tries it they aren’t offended on behalf of their cuisine.
A few years ago I made a traditional Iranian beef stew. A co-worker of mine was from Iran so I brought it to him at work one day. He tasted it, looked at me and said “This is great!” So I checked it off the list.
We also get my friends involved. We pick a random country by going to random.country, look up the traditional meals, and then have a potluck where everyone brings a different dish. We’ve done Hong Kong, Mongolia, Bangladesh, Brazil, Spain, and many others.
He’s even automated his language learning
Another project I have is a system to help me build my vocabulary.
Since English isn’t my first language, I sometimes run into words while I’m reading that I don’t understand. So to learn more words, I created a script that takes words from Readwise, and then automatically adds the audio pronunciation, the definition, and examples in a sentence to an Airtable.
I then take these words and put them manually into Anki to help me learn them.
I did run into a problem with this approach: I ended up using words that no one knew. I would take a word from a 19th century novel, and then insert it into everyday conversation. No one would have any idea what I was talking about.
So I had to add another piece to the system to sort the words by how often they’re used. The most accurate proxy I’ve found is the number of Google results for a word.
That way I end up learning vocabulary that’s actually useful and I don’t accidentally learn words that native speakers don’t even know.
He uses a reMarkable tablet to read long documents and emails
Over the years, I’ve found that reading dense PDFs or Google Docs isn’t very good on a laptop or on a Kindle.
Recently, a friend was raving about the reMarkable tablet, and I now use for reading those types of documents a fair bit. It’s a simple e-ink tablet. It’s larger than the Kindle, and feels like paper when you write. It doesn’t replace your Kindle. It’s not good for long-form.
Categories of content that I just didn’t read before are now a pleasure to sink into a chair with.
Most of the Google Docs and longer emails (I often use a 10 minute mail as a service) I review, I send to my reMarkable and process there.
The reMarkable gives great space to think, but because of its limitations I wouldn’t recommend it to everyone. It’s for a very particular workflow. It can easily end up as another expensive shelf gadget.
Surprisingly, I’ve also found that it works very well for making presentations with. Drawing slides is much more fun — I get frustrated when I’m in Keynote for too long.