Learning how to code is arguably the gold rush of this time, as the number of people looking to build careers in technology continues to rise. It is increasingly easier to find learning opportunities - online or offline - which anyone can take advantage of to learn software development. When it comes down to it, getting good at this craft - like with any other worthwhile craft - takes some doing. Whether you're doing this as a hobby or as a means to land a first job and launch a career in software, you're going to need to know how to handle yourself and navigate your way to where you need to go.If you recently started to code, the following tips should be of help to you:
1. Learning to Code is a marathon, not a sprint.
Some newbies tend to lose steam and get discouraged when they hit a bump in the road, usually in the form of a task or challenge they are unable to easily breeze past. Depending on your background prior to learning to code, it is not uncommon to often feel like you don't know what you're doing. It is perfectly okay to feel that way - almost everyone you know and admire today had those same feelings when they first started out. The goal is to not stop probing and trying to learn. The feeling will occur less often as you progress.
2. Git Right
One of the first things you will need to master is Git. Git is a version control tool that helps you manage and save versions of your code. It will literally save you from the far too common "Oh my, I have a deadline to meet and I've lost all my code" problem you may already have experienced or seen. Git allows you to manage multiple versions of your project so that you can retrieve and use any version you need at any time. If you want to stand out, you've got to learn how to wield Git effectively and save yourself from hassles. GitHub put together a handy guide that explains version control and Git you should check out.
3. Build (and Break) Things
Software engineering is a craft where you learn better and faster by building (and breaking) things. Don't get caught up with only reading and clicking next on the tutorial videos that you don't actively challenge yourself by taking on the exercises and code challenges. You will break stuff, and your code is not going to work a lot of the time at first - and that's okay. You will learn better that way. Whatever programming language you're learning, you should work on being able to build an app well enough with it. Be able to think through problems and solutions in that one language before trying to learn everything else.4. Learn The Agile MethodIf you're going to be working in a team on projects that users need, being familiar with the Agile software development method will prove invaluable to you. Most software engineering teams use the Agile method to organize and manage their project workflows. The Agile method is a system that utilizes iterative workflows (also called sprints) to build software products. This process is iterative because it is reliant on collaboration and feedback from team members at various points of the project workflow to allow the team to manage and respond to unpredictable or unplanned events that occur along the way in a timely fashion. To learn more about Agile, see this short video that explains it pretty well.There are a few other things that will help you stand out as a newbie software engineer. Soft skills like empathy, collaboration, communication, problem solving, the ability to take and apply feedback (constructive criticism) go a long way to helping you stand out from your peers. In this industry, technical skills are the baseline of entry - everyone who gets in will do it on meeting the technical requirement. But as you grow your technical skills, you have to work on growing your soft skills as well, so you can rise as high as you need to.Finally, it is important to reiterate the need for you to hang in there and keep practicing. I'll leave you with a quote by Malcolm Gladwell:
"Practice isn't the thing you do once you're good. It is the thing you do that makes you good."