13 Bits of Advice for New Programmers when they feel overwhelmed by all the things they need to learn. Relax, take a breath, and read this blog post.
The other day I asked this question on Twitter:
What is the one tip you would give another programmer?
— Victor Velazquez (@zazvick) March 5, 2020
New programmers can feel overwhelmed by all the new things they need to learn. I truly believe this is a normal situation and is normal that everyone feels like this at the beginning.
Throughout my experience as a people manager, one of the questions I have been asked the most is: What is the one tip you would give another programmer?
Here are some answers to the question:
- Help your co-workers, try pair programming: the more you help the more you learn. 🙂
- Frustration tolerance and reading bases. Not being dazzled by frameworks and thinking this is the solution to everything.
- Write the code you would like to read.
- Read, learn, and share with others.
- You’re not your code.
- Get off your high horse.
Give yourself an edge with these 13 wisdom gems:
1. You’ll need to fail fast and fail often if you want to get ahead
Success comes after many failures, but if you are going to fail, do it fast. Don’t waste time feeling guilty or diminishing yourself; learn, and keep going. Someday you will be on the top.
2. It’s okay to ask questions
Don't be afraid to ask. In fact, ask everything: try to learn as much as possible from others! Share on XDon’t be afraid to ask. In fact, ask everything. Try to learn as much as possible from others. You’ll be surprised by how many people are always open to help and teach.
Also, be curious and ask questions to yourself all the time. I really believe that this is the shorter path to success.
3. Everyone learns differently
Indeed, don’t feel overwhelmed by others’ progress. We all have different ways of learning, you have to find the best way for you.
Remember: everyone learns differently. Just find the best way for you. Share on XFind out the best way for you to learn; by practice, by reading, or by following tutorials. Fortunately, there are lots of options available at your disposal:
- Documentation
- Books
- Tutorials and Courses
- Podcasts
- Workshops
- Open Source (a great way of learning)
- Code Katas
- Blogs
- And So
4. You really learn as you go
Technology is advancing so fast that I truly believe it’s actually impossible to learn everything. So don’t worry if you are not familiar with the new JS Framework or the time fashion language. You will get the chance to learn new things as you go.
5. Imposter Syndrome is normal at every stage
Don't be afraid of trying new things! Share on XImpostor syndrome (also known as impostor phenomenon, impostorism, fraud syndrome, or the impostor experience) is a psychological pattern in which one doubts one’s accomplishments and has a persistent internalized fear of being exposed as a “fraud”.
It’s normal to feel afraid of this new position, you just got promoted so it’s also exciting, right? I won’t say don’t be afraid, my only advice here is: it’s okay, everything is going to be just fine. You got this!
6. Writing code is only a small part of what goes into shipping production software
Behind the scenes of every Website, Web app, or any software product there is a process: planning, architecture sessions, discussions, code review, demos, standups, RCA’s, diagrams, retros, etc.
7. You won’t typically start a project from scratch
There is a room for doing this, but not always. You will inherit Legacy Projects more times than you think. So it’s time to refresh on all the design patterns and best practices you know and don’t get stressed by this.
8. How to read backtrace errors
Please, read backtrace errors. Before you feel crushed by an error, take a deep breath and read your code carefully. Share on XJuniors, in particular, struggle a lot with this. Sometimes they will have the answer in front of their eyes. Please, read backtrace errors. Languages and frameworks have evolved a lot, so before you feel crushed by an error, take a deep breath and read carefully. You may easily find how to solve this buggy situation.
9. The importance of open source
Open Source can be your ultimate source of learning and social interaction with other engineers and people around the globe. If you are not, give it a try! Share on XOpen Source can be your ultimate source of learning and social interaction with other engineers and people around the globe. Give it a chance, start simple and with baby steps, look for easy issues to solve (translation, code structure, typos, etc) and keep moving to the hardest ones. You will learn a lot when reading other people’s code.
10. Test Everything
Let me repeat it: test everything. As you advance on your career you will find new concepts like TDD, Unit Testing, TSD, BDD, or Integration Testing. Learn something about these topics, implement them in your codebase, and simplify your life. You will thank me later.
11. Understand Design Patterns
A design pattern is a reusable solution to
a design problem.
This is an important topic and there is a huge list of design patterns, so go read on them and learn how to implement them and in which situations.
12. Improve Soft Skills
In Software Development, not everything is coding. Softs skills are important too! Share on XNot everything is coding. Softs skills are as important as hard skills. These will help your communication, how you handle stress, how to manage specific situations, and so on. So, give them a try.
13. Have Fun 😎
And last but not least… this is super important: have fun and enjoy your journey.
Thanks for reading! Keep in touch ✌️
@VíctorVelázquez, Director of Engineering at MagmaLabs