How to Start Your Journey as a Self-Taught Programmer
Written on
Getting Started with Programming
A relative recently asked me for advice on how to begin learning programming independently. I shared some fundamental steps: grasp the basics, set realistic expectations, and commit to daily practice.
"The journey of programming is filled with ups and downs, but with the right mindset, anyone can learn."
Understanding My Background
Since 2020, I’ve been working from home, enjoying a flexible schedule. Before that, I often had the freedom to choose my working hours. This led to curious relatives frequently inquiring about my job, to which I simply explain that my role as a programmer allows me this flexibility.
One morning, my cousin-in-law sought my guidance on how to approach learning programming on his own. With a decade of experience across various programming languages and platforms, I feel equipped to share insights on what makes for effective learning and what pitfalls to avoid.
Common Pitfalls in Learning Programming
While learning programming is achievable, it can also be challenging. Many individuals abandon their journey due to poor decisions or unrealistic expectations. Here are some frequent mistakes aspiring programmers make:
- The urge to learn everything at once
- Choosing an overly complex language at the beginning
- Believing that a few minutes of study each day suffices
- Attempting to learn multiple languages simultaneously
- Aiming to develop a fully-fledged application within a short time frame
In essence, programming is neither easy nor quick. It demands commitment, focus, and time to absorb a wealth of new information.
Begin with Simple Foundations
I often dream of flying large airplanes, yet I have no interest in starting with smaller models or pilot training. Unfortunately, this approach is impractical. In aviation, as in programming, foundational knowledge is crucial.
Many aspiring programmers wish to jump directly into mobile development for Android or iOS. However, this complexity can be overwhelming, leading to frustration and abandonment of their goals. Instead, I recommend starting with HTML, CSS, and JavaScript for several reasons.
HTML is the backbone of all web pages and is straightforward to learn. Errors in HTML won’t crash your project, allowing you to experiment without the pressure of complex algorithms. This will help you become comfortable with coding and improve your ability to communicate with computers.
Next, you’ll encounter CSS, which enhances the visual design of your HTML. While it introduces some complexity, it is essential for improving your coding precision and attention to detail.
Finally, JavaScript introduces programming concepts such as variables, methods, loops, and conditionals. This phase is where even small errors can lead to significant issues, but it is crucial for any programmer's journey.
Avoid the Algorithm Trap
Algorithm exercises can be daunting, often requiring advanced math skills and a strong memory for formulas. Instead of getting bogged down in theory, focus on practical application.
Create a small project each day. For example, you might build a digital clock one day, followed by an alarm clock, and then a task manager. Consistent hands-on practice is key.
In the past, learning was primarily done through experimentation and hands-on experience rather than just reading. Aspiring programmers often had a collection of small projects that showcased their journey.
It’s essential to engage in practical coding rather than solely focusing on theoretical algorithms. Many online resources, including websites and YouTube channels, offer programming tutorials. The distinction between them is minor compared to the effort you’ll need to invest in your learning.
Choose a Single Learning Path
Focus on a single path for your studies rather than attempting to juggle multiple ones. Conduct thorough research online to clarify your doubts, but maintain a clear direction.
That's all! I hope these insights help you embark on your programming journey with confidence. Best of luck!
Chapter 2: Essential Resources for Self-Taught Programmers
The first video, "How To Become A Self-Taught Programmer," provides valuable insights into the self-taught journey.
The second video, "Self-Taught Programmers... We need to talk," discusses the challenges and realities faced by self-taught programmers.