03-009: How to Learn a New Programming Language
Over the years, I’ve been hired by organizations such as Learn.co and AppDev to write programming curriculum for:
- Ruby on Rails
- Ruby programming
- Python
- Java
- Several JavaScript frameworks
The only language that I really build applications in is Ruby, which means that I’ve been forced to become proficient in a number of languages that I didn’t have much experience with—sometimes in a very short period of time.
Over the years, I’ve developed a system for learning a new language or framework, and that’s what I’m going to walk through today.
📌 Steps to Learning a New Programming Language
1️⃣ Watch a Full Tutorial Series 🎥
- Don’t try to follow along—simply watch what the instructor does in the demos.
- This helps you get a high-level view of the syntax and flow of the language.
2️⃣ Create a "Hello World" Application 🌍
- Incorporate a few basics, such as:
- Running a loop.
- Creating and instantiating a class.
- Implementing high-level concepts you remember from the tutorial.
3️⃣ Implement a Sorting Algorithm 🔢
- Pick a sorting algorithm and implement it in the language.
- A basic one like selection sort or bubble sort is fine.
- Sorting algorithms force you to use:
- Data structures
- Loops
- Variables
- Functions
- Combining these elements will give you a good grasp of the language.
4️⃣ Follow an Advanced Tutorial 📚
- This time, code along with the instructor.
- Build the programs step-by-step to reinforce learning.
5️⃣ Solve Coding Interview Questions 💡
- Work through interview-style questions for the language.
- If you can confidently solve these, it’s a good sign that you have a solid understanding of the language.
🎯 The Key Takeaway
I’ve used these five steps for multiple languages, and I can tell you:
- Once you become proficient in one language, picking up new ones becomes easier.
- Most languages share common processes, so all you need to do is learn the syntax differences.