I do my best to teach those around me about programming and encourage them to take on tasks. If someone is in the learning process, I provide as much support as I can. Observing people at university or in my circle, I’ve noticed a few common mistakes, in my opinion. In this article, I’d like to address these.
Programming Is Not Everything
If you’ve set your mind on learning to program, you should know that programming isn’t everything. Constantly studying code might get you somewhere, but only to a certain point. It’s equally important to develop your communication skills, confidently engage in the programming ecosystem, share what you’ve learned, and be a good reader and problem solver... among many other things. You need to grow in these areas as well.
You can’t just “lean back, write code, and call it a day” in this profession. It’s possible, but not ideal. The more code you write, the more you need to know how to read code and solve problems effectively. After all, our job is to solve problems. To do that, you must understand the problem thoroughly, analyze it well, conduct research, review a lot of code, and share your findings with teammates. This collaborative approach leads to a better product.
Don’t Keep What You Learn to Yourself
Your programming journey is going great, you’re learning new things every day and improving. So why not start a blog? Or launch a YouTube channel? By sharing what you’ve learned and involving others in the process, wouldn’t you progress even further?
Sharing your knowledge is a way of saying, “I’ve learned this, and here’s what I’ll tackle next.” As you write or create videos, you’ll build a community. You’ll have people to ask questions, discuss ideas, or even reach out to when you’re in need. Plus, others might contact you when they need help.
Build Projects, Not “Mini-Projects”
When learning a programming language, you’ll naturally work on projects—often calculators or to-do apps. Do these, sure. But what’s more important is tackling a larger-scale project to understand the challenges you’ll face and how to approach them. The best way to learn this is by working on a real project. If you have like-minded peers, collaborating as a team is even better.
You also need to learn how to market your projects. If you’re making them open-source, share them on GitHub or GitLab, but use these tools effectively to make it easy for others to review your work. While developing, don’t forget to document what you’ve learned and the mistakes you made in a blog.
Don’t Forget to Market Yourself
You’re learning to program, but who knows about it? Who’s following your journey? If your goal isn’t just to code as a hobby, you need to market yourself. This is crucial because when you start doing this professionally, everything you’ve built will serve as a stepping stone.
Actively use platforms like Twitter, GitHub, and LinkedIn to put yourself out there. Make sure your profiles on these platforms are authentic and substantial.
Don’t Try to Learn Everything
Don’t waste time trying to learn every technology at once. Save some for later. With every project, you’ll naturally pick up new skills. Chances are, the technologies you skipped earlier will come up in a real project, and you’ll learn them hands-on. This way, you avoid wasting time upfront.
Wondering what to learn? Here’s a tip: Check job listings for the role you’re aiming for. Focus on the technologies they emphasize most.
Let me share an example from my experience. In the past, I wanted to learn a lot of things but didn’t dive into most of them. I was busy with projects, and there was no time to learn new tech. Now, in my study cases, I use unfamiliar technologies in real projects, learning as I go. This is how I continue my learning process.
When you’ve done all this and reached a solid point, job offers will start coming to you. Instead of applying for jobs, you’ll evaluate offers and choose the project you want to work on. Ask yourself: Do I want to apply for jobs and prove myself, or pick the best offer from those coming my way?