The Three Types of Resources
1. Full Views
This book, course, or podcast provides a step-by-step introduction. You should comb through it for at least 30 minutes a day, as it offers both a high-level and deep understanding of the subject. Do not skip or rush. This is your foundation.
Principles for Language Learners
- If it doesn’t have audio, it’s useless.
- If it doesn’t teach you how to read and write the language and/or uses romanization, it’s useless.
- If it doesn’t come with review or practice features, it’s useless.Principles for Aspiring Developers
- Books are always more in-depth than videos. If you find video tutorials, great, but assume they’re supplementary.
- Don’t buy any book that won’t give you free updates. Languages and tools change all the time, and you need to be up to snuff.
Language Learning ExamplesLanguage-Specific Examples
- Russian: Mark Thomson’s courses (Russian Alphabet Mastery app, Russian Made Easy podcast, Russian Accelerator course)
- Mandarin Chinese: Yoyo ChineseProgramming ExamplesWeb Development ExamplesiOS Development Examples
This is an app or course that gets you started, but often leaves you frustrated because it seems to be missing something. This nagging irritation is actually a good thing, because it keeps you engaged and asking questions, and pushes you to find answers. The key difference between Full Views and Kickstarters is time: with the latter, each lesson is self-contained and can generally be completed in 5-30 minutes. The sense of instant gratification and accomplishment you get from this type of resource makes it an excellent warmer and motivation sustainer. It’s a way to trick yourself into learning when you’d rather watch TV. And they have the added benefit of not giving you a false sense of mastery (assuming, of course, that you’re not exclusively using this type of resource). As with #1, they’re well-organized—you’ll see levels, tracks, and whatnot—but they don’t offer deep knowledge.
Language Learning Examples
Language-Specific ExamplesWeb Development ExamplesiOS Development Examples
3. Deep Dives
These are neatly divided by concept, and give you a deeper understanding of the material you’re covering in #1-2. Keep in mind that this part involves the most work. It’s not enough to just go through the material. You need to create drills. Pick something you want to master or improve—grammar or vocabulary, Table Views or Core Data—and work on it everyday for 2-4 weeks. If you’re trying to expand your vocabulary, create flashcards that force you to put new words in the context of familiar grammar structures. If you’re trying to get good at building and designing Table Views, create an app that uses TableView everyday for a month, and force yourself not to repeat the same designs, animations, or extensions.
Language Learning Examples
- Russian: Learn Russian, Russian Alphabet
- Mandarin Chinese: Basic Patterns of Chinese Grammar, Skritter
- Japanese: Tae Kim’s Guide to Japanese GrammariOS Development Examples
During the busiest time of the week
- 15-30 minutes with a Kickstarter. Finish one section.
- 1 chapter of a Full View. Assume it’ll take an hour. If it’s a really long chapter, and you’re pressed for time, find a good stopping point.You don’t need to do these in one block. Do one in the morning, the other in the evening.
When you have blocks (2-4 hours) of uninterrupted time
- The same as above
- + Deep DivesIf you’re a developer, I’d suggest Saturdays for Deep Dives related to a project you’re working on, and Sundays for your own projects.If you’re a language learner, I’d suggest Deep Dives that prepare you for conversation practice. If you’re having an italki lesson tomorrow, do your Deep Dive to prep today.If you’re super-busy, too bad. Break up your sessions into small chunks.