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 some resources on Object Oriented Design:
Here are a few links that have helped me gain exposure to design patterns:
I recently started learning from kudvenkat and he is a great teacher who provides clear, simple, and detailed explanations and examples. I am sure his series Design Patterns Videos are great as well.
Here are some great resources for learning System Design:
To learn these I recommend: Learning by repetition and paraphrasing
I have been learning material by using a combination of repetition and my variation of The Feynman Technique.
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:
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
Natural Readers and Free Text to Speech Reader These let me copy and paste text so that I can simultaneously read and listen to the text
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.
Here are some great ASP.NET MVC tutorials and guides