Michael Charland

Swift Developer

Home

How I Learn

Published Mar 19, 2021

I’m writing this to share the ways I learn. I find to learn something you have to come at it from various different angles. This is based on a popular technique typically associated with reading called Syntopical Reading. This is the process in which you read numerous books and figure out how they are related to each other. The technique I use is similar just across different types of media.

Reading

The tried and true and historically the most popular for me. I’ve read countless textbooks. Problem is I’ve forgotten most of what I’ve read. It didn’t sink in, or maybe I didn’t know it a depth I thought I did. Now a days I’m much more cautious about what I read and try to figure out as I go if I know the material or not. I really dislike when I’m half way through a book, and think “I should read this again to get to know the material a deeper level”. So currently when I read a technical book, I’ll create a mini project in Todoist with tasks for each chapter such as read, add Anki cards, write code (if applicable), and review. This has greatly helped me feel like I know the material when I am done the text book and not feel like I have to read the book again.

Repetition

I’m a big believer in spaced repetition as a learning technique. This involves answering a question correctly at progressively larger intervals. For example, 5 minutes, 10 minutes, 1 day, 3 days, 5 day, 11 days, 20 days, etc.. This has helped me build confidence about the materials I’m learning and feel that I’ve actually learnt the material. I’ve been using Anki for over 5 years and have wrote over 4,000 questions. Recently when answering questions that I haven’t seen for a while and I don’t know the answer I’ve been asking myself why is that. Sometimes the question doesn’t provide enough context to allow me to focus on what the answer could be, so I’ll edit the card and try to make it more intuitive for the next time I get asked that question. Other times it’s just a bad question asking for information that will become out of date rather quickly. For example, “Name the 3 most popular UI frameworks for iOS?” It’s not helpful to know that this is SwiftUI, AutoLayout, and CGRect. If I answer this question enough times correctly the period will get to years. So in 3 years from now the answer will probably be different. Also why is this even important to know a list of things? I ended up deleting this question and am going to replace with questions such as “Why would you choose to use SwiftUI?”, “Why would you pick SwiftUI over AutoLayout”, etc.

Diagramming

This is something I always feel like I should do more, but don’t. I’ll add pictures for the Anki cards, but I’m not going to go out of my way to create a diagram of what I’m learning.

Audio

Nearly everyday for the last 6 months I will go for a walk and listen to a podcast or audio book, or sometimes I’ll convert a video into audio. I use this to hear what’s going on in the industry, listen to more niche topics, and as a form of spaced repetition as I’ll listen to the same audio multiple times.

Video

Watching videos such as the ones from WWDC and from Clean Coders. I’ve been working in the Apple eco-system for the last 5 years and the best source of truth or the closest to it is from WWDC. I’ve watched a lot of videos going all the way back to 2012. I probably should treat some of the more important as mini projects, as some of the videos really haven’t sank in.

Experiencial

Actually doing the thing. When I was younger, I watched and read a bunch about hockey. For example I could tell you about the original Ottawa Senators, or what the scores of the previous nights games were, or what teams were going to be in the playoffs, but I didn’t spend that much time actually playing the game. I even took power skating. But when I’d go out and play hockey I wouldn’t have any clue what I was doing. I didn’t play the game enough or even practice the fundamentals. Now a days with coding I make sure that I’m not just reading about new stuff but actually practising it.

Conclusion

So, that’s the list. I find coming at learning from all these different perspectives and find really helps me feel like I’ve learnt the material. I would like to become a little more disciplined and coordinated across the different types of learning so they would feed into each other better, but that takes a lot more effort and isn’t as much fun.