There’s no secret that learning to code opens doors to opportunities for your career. According to the U.S. Bureau of Labor Statistics, “Employment in computer and information technology occupations is projected to grow 11 percent from 2019 to 2029, much faster than the average for all occupations.” Saying, “coding skills are in high-demand for a variety of jobs” would be an understatement! From cybersecurity, to software development, or even data science, coding skills are a foundational skill to have no matter the path you choose.
Learning to write code is fun, but it can be a bit overwhelming. With your newfound excitement, you might sign up for a coding tutorial site (or two), or buy a few coding books. These are great resources, but you may not get too far if you don’t have a solid learning plan.
Here are five tips I follow when learning a programming language.
1 — Build A Solid Knowledge Foundation
- Learn more about the language itself.
Learn the answers to the following questions to gain an understanding about the language itself. Who created the language? How is the language used in the industry today? Then there are frameworks, packages, and libraries to consider that’s associated with the language. What are the most notable libraries and how are they used? What functionalities do they have? It’s easy to get lost and not know where to begin. So, begin with the basics of what the language is and how it’s used today.
- Understand coding basics.
Now that you’ve got a good understanding about the language itself, you’re ready to learn coding basics. Begin building a solid foundation by learning syntax, formatting, and logic. Do code review with others so you know what good coding should look like and how logic is applied for different solutions. Keep it simple. Taking the time to learn how to read the code is just as important as knowing how to write code.
- Apply critical thinking.
Go beyond learning what code to write or reusing someone else’s code. Try and answer this question, “when should you use a for loop, while, or an if-else statement?” Learn how the code works when the program executes. Apply this to any language you’re learning and you’ll pick up syntax faster.
2 — Pace Yourself (Learning is a marathon, not a sprint.)
- Time is constant.
Time doesn’t stop, and neither should your learning. Schedule 1–2 hrs a day for just practicing coding. Set a goal of 100 days of code and see how far you go. Tomorrow will come, next month will fly by, and before you notice it’ll be a new year. In 6 months, will you be happy you took the time now? Or will you have wished you spent it working toward your goals? Be disciplined and dedicated. Just pace yourself so you don’t burn out.
- Recharge and relax are just as important as practice.
Learning something new can feel exhausting after awhile. Give your brain time to recharge and soak up what you’re learning. Retention is key. If you’re stuck on a problem, sometimes you just need to walk away and give yourself some recharge time. Your brain will continue to work on the problem subconsciously.
- Prioritize family and self.
Give yourself breaks and prioritize yourself. Remember, time is constant. You can never get time back. So, spend it wisely! Respect your needs, family needs, and don’t forget to live. That’s just a general life lesson.
3 — Build Fluency and Retention
- Become familiar with the coding documentation.
Learn how to use the coding documentation to find your answers. You’ll get stuck (and often) as you learn how to write code. Try to stay away from solution sites or just getting the answers quickly. This removes the opportunity for you to learn. Learn how to use the documentation so you’ll know how to get yourself (and maybe others) out when you’re stuck in the future. The more you practice this, the more experience you’ll gain, and your coding knowledge will increase faster.
- Analyze technology tools and solutions others use.
Check out what others are creating. Would you do anything differently? What features would you include? How hard would it be for you to include that feature? If it’s an open-source project, maybe contribute. Learn how to critically think about solutions out there because you’ll be in this critical thinking space when you work as a developer.
- Set goals and challenge yourself.
Set attainable daily goals and complete daily challenges. Try not to cheat or look up the answer. If you’re stuck — GOOD! That means you’re about to learn something new! Feel uncomfortable with something in the language? GOOD! Go learn it so you’re not uncomfortable anymore. Lean into the uncomfortable and you’ll grow faster.
4 — Expand Your Network
- Join a community (or two).
There are developer communities all around you. On almost every social media platform, you there’s likely a developer community related to the coding language you’re learning. Most programming sites even have their own communities baked right in. Connect with these communities and talk through solutions with others.
- Code with others.
Learning to write coding by yourself can be fun, but coding in teams is the best experience you can get! Not only do you learn how to write code with others, but you build critical soft skills. Contributing to projects created by other people is a healthy way to learn and get experience working on code you didn’t write. You’ll be coding with others in a developer role, so it’s good to get that experience now. Soft skills are just as important as technical coding skills.
5 — Stay Curious
- Improve previous solutions.
As time passes, look back at the challenges you solved when you started learning. Find new ways to solve your problems or improve your code. Looking back is also a good reminder of where you’ve been and how far you’ve come. Don’t forget to recognize and celebrate your journey!
- Follow the roadmap (and review known bugs).
If you’re learning a piece of technology that has releases, pay attention to the roadmap, release notes, and bugs logged. What are challenges other developers facing? What’s new that’s coming out? How are they solving? Review this information on a regular basis.
- Continue to learn.
Start building projects, no matter how small or big. The things you build can go to creating a nice portfolio. Continue to learn new approaches and solve problems. We’re all learning and start somewhere. We’re just at different points on our path.
Learning is like climbing a mountain. The journey is long and filled with challenges, but you’ll continue to make progress one step at a time. Remember we’re all learning, just at different points in our path.
If you want some resources to get started on a specific language, feel free to email me. I’ll make future posts for each language requested.
— — — — — — -
Elizabeth is a software developer, writer, and data science evangelist. In her daily life, she writes technical content that helps developers and architects solve challenges and skill up to reach their career goals.
This article is in her words and from her experience. Her thoughts and opinions are her own. Follow her on twitter @ElizabethDGroot or connect on LinkedIn for more.