How to learn a new coding language -- FAST

Happy Tuesday!

Last week, I learned Javascript.

You can't learn to code in one week, but you can be efficient in the way you study. If you already know a coding language like Python (proud developer here), learning a new language can be a pretty quick exercise. Here are the three approaches I took to ramp up my JavaScript skills FAST.

1/ Define Your Motivation

Understanding your motivation when starting to learn a new coding language is crucial. Having a clear motivation helps you stay focused and committed to the learning process, which can be challenging and time-consuming. Identifying your motivation also helps you tailor your learning approach and choose the right resources that align with your specific goals, making informed decisions and optimizing your learning experience, ultimately increasing your chances of success.

My motivation to learn JavaScript is to develop a web application to sell my own digital product. As a Python developer, I could use a framework like Flask or Django, but my research shows that more visually appealing Django and Flask projects use the JavaScript framework React for front-end components. While Python frameworks like Django provide more "batteries included" functionality, JavaScript allows for more flexibility and customization, which I prefer.

With this in mind, I have a clear motivation to be disciplined and consistent on my learning journey.

2/ Study the Fundamentals

All coding languages are built on the same foundation. Once you've learned one, learning the next is about understanding how the new language implements these foundational principles. Start by identifying how you learn best and picking a resource. If you prefer video-based learning, YouTube is a great resource. Others may prefer text-based learning with a book. For those who prefer interactive learning, a course like FreeCodeCamp or Codecademy might be preferred. Whatever your preference, don't spend too much time searching for the "perfect" course. Pick one and get learning.

I chose to purchase "Modern JavaScript From The Beginning 2.0" by Brad Traversy. I spent a week going through the course, learning the fundamentals including syntax rules, data types and variables, operators and expressions, control flow, functions and methods, input/output, and error handling.

3/ Build a Project

Once you're comfortable with the fundamentals, it's time to jump into a project. Mastering a coding language requires hands-on experience through practical projects. Building projects reinforces understanding by applying concepts in real-world contexts, identifying areas for improvement, and developing problem-solving strategies. Projects expose you to professional challenges, best practices, debugging, and error handling. They showcase practical skills, benefiting portfolios and careers. The iterative nature encourages continuous learning and adapting to new requirements. While theory is essential, true mastery comes from diving into projects, solidifying understanding, cultivating problem-solving abilities, and fostering a mindset of continuous learning – invaluable for achieving proficiency.

The project I built was Wordle, check it out here! I learned a lot with this project, including how to declare variables in JavaScript (Python doesn't care about this), how to deal with arrays (after trying to 'append' several times, it's finally engrained that in JS, it's 'push'), creating if-else conditions (JS does NOT like 'elif'), how to create loops (Python loops are perfect, I hate 'i++'), how to identify elements in HTML using query selectors, how to react to clicks on the screen, and how to create functions.

While I still have more to learn, I feel like I've learned more JavaScript in the past week than I did after a month of studying Python.

Tuesdays Top 3

This is the section where I share three things I enjoyed and/or learn from in the past week.

I have been watching Jacob's videos for the past few weeks, and I enjoy the peek into his life in NYC as a Youtuber and self-taught indie developer.

2. Article:Here is why AI search engines really can't kill Google’ - David Pierce (TheVerge)

This article is interesting. Recently, I've been experimenting with using Perplexity as my main search engine in Chrome instead of Google.

  • The process of navigating directly to websites from the search results is more cumbersome, often requiring multiple clicks instead of a seamless redirect.

  • However, Perplexity provides a better overall experience when searching for information, with more comprehensive and relevant results.

  • Finding the right balance between these two aspects will be key as I continue using this search engine routinely.

Ultimately, while Perplexity may demand a bit more effort for direct website access, its superior information discovery capabilities make it a compelling alternative to Google, provided I can adapt to the slight inconvenience of extra clicks.

In this episode, Rob Walling breaks down the 2/20/200 Framework for idea validation:

  • 2 hours for validation

  • 20 hours for a landing page/customer talks

  • 200 hours for MVP

Fascinating time strategy!

Thanks for reading! If you enjoyed this you might enjoy:

-- Summer