In March 2020 I began my coding journey which means I have now been learning about web-development for 1 full year 🎈! I've learned a lot along the way but there are a few things I would tell myself if I could travel back in time.
Let's not waste any more time 👏.
- Don't be afraid of joining developer communities
- You can't learn everything so don't try
- Take notes or better yet write a blog
- Become comfortable with Git and command line basics early
- You learn the most when building projects
- Consistency is key
- Have fun
This is probably my number 1 tip. It took me around 9 months before I had the confidence to branch out of my own bubble and connect with other developers. I was hesitant about putting myself out there. About putting my work into the open. Thinking I wasn't qualified to share ideas or that I didn't have enough knowledge to teach.
I was completely wrong😅
The developer community is extremely supportive and there are loads of aspiring developers openly sharing their progress with each other. Check out the #100DaysOfCode on Twitter for some examples.
Sharing and learning from other developers is a key part of your progression. It can also be a great source of inspiration for your future work or perhaps a source of networking for you. These are a few of the amazing benefits I can think of 👇.
- You can learn from other devs in similar positions
- You can learn from more experienced devs
- It can be a great confidence builder
- You can get feedback on your work
- You can network with other devs
- You could make some friends
and so much more. Just make the jump and I promise it is the best thing you can do for yourself as an aspiring developer.
As a front-end developer I realized that there is always going to be some new shiny tech that becomes the thing. It is impossible to become a master of everything so don't try.
Do your best to focus on a few key technologies and try to master them. As a learning front-end developer I was jumping into different CSS frameworks, build tools and more. It really wasn't necessary for someone who is leaning front-end development early on.
If you get good at regular CSS then applying it to different CSS frameworks becomes easy when there is a good use-case for them. Once your comfortable by all means try out a framework but don't expect to become good with all of them.
Instead I would now tell myself to focus on the key tech and get good with them before moving on to the shiny stuff. For me as a front-end developer I would focus on the following 👇.
I didn't really take many notes while I was learning over the past year. I wish I had now. Recently I found myself trying to explain simple topics out loud and found that I struggled to articulate answers.
Having some of my own notes to quickly reference would have been extremely useful 🙄.
Keeping notes as you learn has so many incredible benefits. Writing will help you reinforce the knowledge you gain and can give you a reference for the future. You could also take it a step further and turn your notes into a blog for others to read.
If you would like to know more about the benefits of blogging while learning web-development then check out my article Why it's awesome for new developers to blog as they learn.
Even as a front-end developer the command line is something we use on a daily basis. It can be intimidating but even learning some basics can drastically improve your workflow. Things like folder navigation and running executables are valuable skills.
As well as this I would tell myself to not be intimidated by version control specifically using Git. As I prepare to start applying for my first web-development role I have been diving deeper into Git. It has made me realize how little I actually knew about it and what it can do.
The reality is that it is a very important skill to know if you plan on working as a developer in the industry. When you become comfortable with the code itself and you start building projects I highly recommend you practice with Git.
Building projects is awesome. That feeling when you host a project you built on the web for others to see and use is hard to beat. I have found that is also the thing that will help you learn the most.
It is easy to follow tutorials and early on it is a great way to become comfortable with the basics. But at some point it is important to break away and attempt to build your own projects. Start small and if you get stuck then of course use all of the amazing resources we have online to help you.
Google is every developers best friend 😃.
The process of running into problems, googling for solutions and implementing fixes is the iteration that will see you solving your own problems. This is key to becoming a confident developer. Even if the project doesn't turn out how you hoped, it is better than not trying at all.
The important thing is that you try it yourself first. Look up some simple projects and try to personalize it in some way based on your likes or interests.
Consistency is the key to becoming proficient at most things. If you work at it everyday then you are sure to see some progress. The same is true for coding.
Unfortunately not everyone can put all of their time into it. We all have commitments. But if you can dedicate a little time everyday then you are on the right track.
Try to have a specific topic in mind for the session and put all of your focus into it. Could be 30 minutes or it might be a couple of hours. As long as your focus is on the work for that time the consistency will be key to your development.
Sometimes coding can be frustrating. We've all been there. It's easy to get frustrated and feel downbeat when we run into problems. But try to remember why we became developers in the first place. For me at least it is because It's fun and I love it!
It's sometimes easy to lose sight of this. Now that I have a little more experience I'm getting better at controlling my code frustration and find that I can now walk away leaving it for later when I come up with a better solution. There was a time when I would stress over a problem for hours at a time.
I now realize that I would become frustrated because I'm passionate about coding and wanting to be as good as I possibly can. I love what I do and I try to keep this in mind which is easy to do most of the time 🙂.
Those were some of my the tips I would go back in time and tell myself and I think they are great tips for any developers learning their trade. I hope you are able to take something with you and if you did then please tell me about it.
You can do so @Kieran6dev where I'm always active or in the comments below.
If you could go back a year(or to the beginning) and give yourself a piece of advice, what would it be?