I started learning from these awesome resources. They were free because of my local library 🙂
With Lynda (now called LinkedIn Learning) I only took one course on Object Oriented Design and it was very clear and concise.
I am impressed with Team Tree House because it is interactive like Codecademy and in depth as well. They also teach how to use documentation and have small projects along the way.
Check out your local library and see if you can get these resources for free 🙂
Here are a few links that have helped me gain exposure to design patterns:
- Design Patterns Video Tutorial
- Design Patterns Tutorial
- Java Design Patterns
- Head First Design Patterns
My strategy is to repeat the material in chunks, i.e. section 1, then section 1 and 2, then sections 1 through 3, sections 1 through 4, etc.
I try to paraphrase every sentence. Sometimes it’s I just reverse the sentences, sometimes I change them into a question and answer, and sometimes I just use synonyms for a word or for multiple words in the sentence.
I think this has been working for me because of the sheer number of repetitions, but also because I am actively engaging with the material, and I am jamming the information into my working memory. Furthermore, I am exposing myself to the material in many different ways because I probably paraphrase things slight differently each time.
I think if I get comfortable with the earlier sections, I might start reviewing from the later sections. For instance, if there are 10 sections, I might review section 10, then section 9 through 10, then 8 through 10, etc.
I think I can certain material into long term memory by using flash card software. Also for things that just have to be memorized, I can create pictures, patterns, stories, rhymes, or use memory techniques such as The Link Method.
I came across these great articles on learning coding by using flashcard software:
- Memorizing a programming language using spaced repetition software
- How to use spaced repetition with Anki to learn to code faster
I also found pre-made flashcards here:
Here are a few tools that have helped me consume materials faster
Youtube Playback Speed Control This allows me to watch videos at up to 4x the normal playing speed
Spreed This is more for leisure/fictional reading. With this tool, I can copy and paste text, and read it rapidly. It presents the text one word at a time at a single point on the page, so I don’t have to move my eyes at all.
I recently read this article: The Interleaving Effect: Mixing It Up Boosts Learning.
A few interesting points were made:
Blocking involves practicing one skill at a time before the next (for example, “skill A” before “skill B” and so on, forming the pattern “AAABBBCCC”), in interleaving one mixes, or interleaves, practice on several related skills together (forming for example the pattern “ABCABCABC”).
Overall, the interleaving effect can be strong, stable, and long-lasting.
I am currently learning from Pluralsight courses. I think interleaving works nicely with Pluralsight because the modules are around 30-60 minutes, which can fit into a Pomodoro because I play the videos at 2x speed.
I also feel like I have more fun because I can take several courses at once and finish a module from each course every day. Plus I get the variety of many different subjects, and the repetition when the courses overlap.
In December I wrote about growing my coding abilities by reading.
Well I have found something even better and more enjoyable for me: learning from Pluralsight.
I am especially inspired by the growth shown by Kevin O’Shaughnessy who completed over 400 Pluralsight courses!
I feel like solving code challenges plus learning and building with Pluralsight will really accelerate my growth as a software engineer.
You can get 3 free months of Pluralsight by signing up for the free Visual Studio Dev Essentials.