Quick note: I'm creating a brand new community for developers focusing on building programming skills through a welcoming online collaboration environment. We need developers like you so consider joining us!
Are you a total newbie and want to learn how to code? Or are you already in the process of learning?
I’m going to talk though some mindsets to avoid in your quest to improve your coding skills.
If you’re a complete beginner to the world of coding, the variety of programming languages available and getting used to technical terms related to software development can become overwhelming.
However, don’t get carried away researching things like choosing the absolute ideal first programming language. Or feeling like you need to know all programming terms and concepts. The field of software development is vast, and one can easily spend years looking at the theory. If your primary aim is to develop software programs (and not to obtain a PhD in computer science) then I suggest you focus on the development part.
Let’s say you’re completely new to coding and you want to get started developing your first program. Of course, there’s no harm in doing some reading on fundamental topics. In fact I suggest you read up on the very basics.
Some research you might want to do can include: How to set up your development environment, good programming languages for beginners and knowing about essential tools every developer should use such as git.
It’s good of course to get some background knowledge to have an initial idea of what coding involves. However, the point is not to get too worried about going in depth on each of the fundamentals. Instead, try to write your first program as soon as you can. Once you do this, you’ve already gone further than most people who just think about wanting to code.
What’s possibly worse than spending too much time reading up on theory? You guessed it, watching people code.
As the desire to learn to code gains popularity, the amount of video material on coding has also grown. These are videos you may have come across such as ‘code with me’ videos. This is where you watch people code an application or they go through tutorials on programming languages. I’d advise not to use such videos as a primary way of teaching yourself to code for a number of reasons.
While such videos can be useful to some extent in getting a feel of the process of coding, it won’t teach you important lessons on knowing how to tackle problems on your own. And trust me, knowing how to tackle problems you come across is a huge part of what becoming a developer is all about.
You're missing out on evolving your own methods of solving problems if you rely too much on videos. While some can be useful, video tutorials typically take a very hand holding approach, as they tell you step by step how to solve problems.
So instead of relying on how people solve problems themselves, start on your own and develop your own ability to solve problems. It might be more frustrating this way, especially for a beginner, but this is a skill you need to build up to tackle challenges you will surely come across.
Keep in mind this does not mean learning through videos can’t be useful or you shouldn't ask for help when you need it. It’s about developing awareness of knowing how to tackle an obstacle when you come across it. Without these skills, it will get tough when you come across a tricky problem that can’t be easily solved by a simple Google search.
I also want to address the types of coding related videos you might find yourself watching such as: How to learn coding fast, How to get a first development job fast, Make money fast by coding, you get the picture…
Coding is a skill that takes patience to build up so trying from the start to find shortcuts isn’t the best idea. There is certainly no harm watching such videos perhaps for entertaining purposes or for some motivation. Just remember, this won’t largely contribute to the actual work involved in learning how to code, which is by actually writing code.
There are many resources available on the web to help you on your journey in learning to code. This includes the availability of many programming courses. With many of the courses claiming they can teach you how to code in no time at all, it may be tempting to try out a paid course right away to get quicker results. It's however not essential to pay to obtain the resources you need to learn to code.
Thanks to the internet, there are many free resources available that will teach you what you need on the basics of coding. As we talked about, when you’re just getting started, an overview of the fundamentals is a good place to start. This can be obtained from many websites. Even sites that offer paid courses often have articles with free information on the basics of programming. The point is, there is plenty of free material available that's more than enough to help you get started without having to pay a penny.
FreeCodeCamp is just one example of a great resource for learning beginner friendly programming languages with no previous experience required.
Not to say there isn't a benefit to joining a paid course. If you're willing to invest in such courses go ahead and try one out. Maybe knowing you've paid for it can be a motivation to go through all the material! Just make sure you do the necessary research beforehand on what the course contains and how it will benefit you in your journey in learning to code.
One of the most important mindsets to adopt as a coder is knowing that it’s OK to ask for help when you’re stuck.
As you become more familiar with how programmers tend to work, you’ll quickly realise that even the most experienced of coders will always rely on support from others when coming across a problem they’re unable to solve from their knowledge alone. You might have heard of sites such as Stackoverflow which is a huge platform where people can ask questions and gain answers to all sorts of programming related queries.
As you code you’ll certainly run into problems on things you have no clue on. When you run to Google for help, you’ll learn to appreciate the existence of developer websites and communities where answers to all sorts of programming related questions are available.
You might also find yourself running into the same problems again and again. In such cases, it's a good idea to make a note of the solution so you aren’t always searching for the same answers. Learning how to overcome issues you’ve come across already is a great way to improve your efficiency as a developer.
This is probably the most important mindset to have when you want to learn to code and is an expansion on the first point of not spending too long on theory.
No one can truly become good at coding by just reading about it or watching others code. You need to be proactive and actually start writing code. As mentioned, there are tons of free resources that will help you get started in writing your first program using any programming language. Pick a programming language and write your first ‘Hello world’ program as soon as you can.
If you're reading this and are a newbie and want to start coding, remember that just getting started with writing code is where you want to be as soon as possible. This also goes for any experienced developers who wish to learn a new language or improve skills in languages they already know.
We discussed the mindsets to avoid when you’re starting out in the world of coding. Overall it’s important not to spend too much time at the start getting too deep into the many complex areas and topics of software development and instead to start coding right away.
Learn by doing is the key philosophy here, so learn to code by doing some coding!
Agree or disagree with the points discussed? Would love to hear your comments. Also feel free to share your own thoughts on mindsets to avoid when you start coding.
If you enjoyed reading this check out more posts on developer tips and coding productivity on my blog :)