How to learn to code: tips and tools for your coding journey
Tags: programming, design
Published: 2021-05-18 00:11:19

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s702od73320vtz3u4yfw.jpg)
The ability of programming is a wonderful skill that gives you a sense of personal and professional satisfaction, as well as enables you to build, solve problems, and invent. It can also open many doors for you.

It is natural, to see more and more people from different backgrounds deciding that they want to learn to code. But at the beginning of the road, they run into an unpleasant truth " Learning to code is difficult !! ".

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y3j84lvjquadh7blru60.jpg)

There is a lot of complexity and confusion, and at first, almost everything will be illogical. Contrary to expectations, the "I don't understand it" feeling may persist for long into that journey, pushing minds motivated to learn to feel hopeless, lost, or willing to give up.
The moral of the story is that you must be prepared and started immediately. The road to programming paradise is a long one, and without the right mindset at first, the road will quickly lose its light.

In this article, I will try to provide some guidance on what to expect on this journey, how to face it, and what tools and resources to help you on your journey.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tvt6k7r02c3i51e2fm1c.jpg)

It may seem counterintuitive, but the first thing you need to realize is that programming is, at its core a technical subject. So, learning the basics of programming takes a lot of focus and practice. But know that countless people, both technical and non-technical, have made this journey before you, so do not be disappointed.


How to learn programming >>>>

->Firstly, Choose your destination, choose the language.
Here you should ask yourself some important questions before starting the field…
i- Why do you want to be a programmer?
ii- What is the goal that you pursue by learning to code?
iii- Do you like to read the code and solve a specific problem?


->Secondly, Define your field.
The areas of programming are many, so you must specify a specialization.
i- Are you interested in building websites?
ii- Are you interested in mobile applications?
iii- Are you interested in desktop applications?

After you choose the specialization that is in harmony with you and you to have a passion for it, then you will be able to choose your favorite programming language.....


->Thirdly, Start with something small.
Learning will take time, and there is a lot to absorb. If you try to build a complete app on your first day, you will not get there. To spare yourself frustration, start with small, simple problems and work your way up from them and go on.

For example, the first program to be written when learning any new language is "Hello World!" (Hello World) which simply prints "Hello World!" on the screen. And in most programming languages it is impossible to write a simpler program. Obviously, this program does not offer much benefit, but it does take many language basics to write, so it is ideal for getting familiar with how to write in the languages.


->Fourthly, Be patient.
For example, when I started learning I found the debugging process infuriating, and I did not even feel like it was programming. Instead of writing a new script that does cool new things, I would spend an entire day reading my script trying to understand where I went wrong this time. In the end, I discovered that I forgot to place a semicolon somewhere, or that I used several blanks instead of one space, and when my program is ready to work, the day is over, and I feel very that is not my place, and that what I am doing is a waste of time.