As devs we are constantly challenged by the rapidly changing environment. Here are four habits that will help you become the best developer you can be.
Should I try it?? Wait ... there is already the next thing.
It feels like we have to work on something at all times, or we might fall off. And then there is the elusive 10x engineer people are talking about. Have you ever asked yourself how one becomes a dev with a 10x output relative to their peers?
Read on if you want to learn how to improve your development skills while staying sane.
If you are not willing to learn, no one can help you.
If you are determined to learn, no one can stop you.
- Zig Ziglar
If there is one thing you take away from this post, let it be this
Having a growth mindset will help you overcome obstacles you may face when learning new skills in general. This is not limited to development.
There are two types of mindsets:
- Fixed mindset
- Growth mindset
In a nutshell: People with a "fixed mindset" believe abilities are "fixed" and can't change. People with a "growth mindset" believe abilities can be developed through work and dedication.
A fixed mindset usually manifests in this thought pattern:
You can change your behaviour, but the most important aspects of your personality cannot be altered.
If you find yourself saying things like "I'm a procrastinator," "I'm unathletic," or "I'm not smart enough to...", you may have a fixed mindset. This causes you to avoid situations in which you may struggle or feel like a failure.
For the things we have to learn before we can do them, we learn by doing them.
I chose the wording "build things" deliberately over "code, code, code". Building is not restricted to "coding" but also includes ideation, recognizing problems, designing solutions, choosing the right tools, problem-solving, time management and much more.
Yes. Coding is important. We all look up to the dude who knows every single bit of a language without checking the docs. But coding is not all a developer does. In fact, most developers don't code as much as you may think.
Make it a habit to build things. Here are a few ideas to help you get started:
- Build a side hustle to make extra income: SaaS, Desktop Apps, Automation Software, an API, a Chrome Extension etc.
- Work on a passion project: Image classifier to tell whether there is a hotdog on the picture or not (Machine Learning).
- Build a CLI for yourself: Sick of doing a pesky task manually? Automate it.
- Contribute to open source projects: There are tons of projects on Github looking for contributors.
- Embedded Systems: Read environmental data with a Raspberry Pi.
Side note: be pragmatic
If you intend to build a product/service as a side hustle and want to make money with it, stick with technologies you know. Remember, you are solving a problem first and foremost. Designing and building the solution is still practice. You will still find yourself making mistakes, and that's alright. Remember, there are no mistakes, only lessons. Building a product as a side hustle will yield great improvements in your skills as a developer as a whole.
If you predominantly want to learn a new technology, choose a small problem to solve for yourself. The keyword here is small. Build a CLI for yourself, don't start with implementing a game engine. Keep it small and move onto bigger things once you get a feel for the thing you are learning. This will keep the positive feedback loop short and encourages you to stick with it.
You can improve as a developer without coding every day. Try to learn something new as often as you can. Honestly, I would recommend the last part to anybody, not just developers.
Read a blog post, take an online course or watch a YouTube video about how someone solved a problem in your field. E.g. database solutions and scaling, setting up a webserver, setting up authentication for a NextJS page, creating CSS animations or improving your communication skills. Take your pick.
Practice data structures, algorithms and system design problems. I know, I know... people are sick of leetcode. But I think we can agree that knowing data structures and algorithms will benefit you as a developer. Why not learn it with questions handed to you on a silver platter? Abstract the approaches behind it, and you might find yourself using them in your projects.
Your learning is not restricted to tech specific things. You could also listen to a podcast about marketing, learn how to edit videos, make music, use Photoshop (or any other image tool). Listen to someone from a different profession (e.g. designers, marketers, musicians, accountants etc.) and try to understand what they are struggling with.
Besides the technical knowledge you will gain, this will also teach you how to recognize problems, better understand potential users, market your products and so much more. I could go on, but I think you get it.
Take care of your mind, your body will thank you.
Take care of you body, your mind will thank you.
- Debbie Hampton
Regular physical activity has consistenly shown to improve cognitive function. This probably doesn't come as a surprise to most of you.
Exercise benefits your memory and thinking both directly and indirectly. It comes with many direct benefits, including the following:
- It stimulates chemicals in your brain to positively influence brain cell health
- It incites the growth of new blood vessels in the brain
- It amplifies the quantity and survival rate of new brain cells
It can also indirectly help you improve your mood and sleep, as well as reduce stress and anxiety.
To perform as a developer we use our brain a lot. Well, sometimes I'm not so sure about that when I look at some of my old code. 😂
All jokes aside - keeping a healthy body is vital to your ability to think, code, your creativity and overall well-being. You should make eating well, sleeping enough and exercising a priority.
Don't forget about mental health either. Sitting alone in front of a screen day in day out can be mentally taxing. Engage with like-minded people. Go out, or play games with friends. Spend time with your family. Join a community (online or offline). Go to a meetup. Or just do something you find pleasure in.
Implement these four habits in your daily life:
- Develop a growth mindset
- Build things regularly
- Keep learning. There is always something you can improve on
- Stay healthy
Don't be discouraged if you make mistakes or feel like it's too much to handle. Focus on the next task at hand and go from there. Improve a little every day. You will see great improvements after a while thanks to the compounding effect of it.
With that, happy coding!
If you liked this article and know a friend who could benefit from it as well, please consider sharing it 🙏 If you want to get news and updates from me, subscribe to the newsletter below 👇 or follow me on Twitter.