To learn Python for data structures and algorithm interviews (assuming you’re already strong in another language): How I Learned Python in Just 10 Days
To learn by building projects: How to Learn Python Tutorial
To learn by solving problems: Teach Python 3 and web design with 200+ exercises
Here are 2 great resources for learning the answer to this question:
What happens when you click on a URL in your browser
What happens when you type an URL in the browser and press enter?
The way I learned this was by paraphrasing each sentence and visualizing the actions happening. I also use the GMail snooze feature to first review this every day, then every 3 days, then every week, and now it will probably be every quarter.
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 🙂
App Academy’s Ruby on Rails and React Boot Camp is now free! Here is a news article and here is the link to the free boot camp
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.
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
Here are some helpful and interactive SQL resources: