How to learn a programming language easily

How to learn a programming language easily

staying motivated is not a list of things to do but how to channel yourself

Β·

6 min read

Hello and welcome back to a new lesson on our progress to becoming a developer or software engineer, whichever way you have decided to be addressed.

Let's begin by letting you know this, they are no magics that are involved when it comes to learning, different people have different learning patterns and most important motivations. We will not just be discussing doing this and that but we will find a way to channel our minds and heart to what we are working on.

I will be listing some of the things that you shally do to be a great learning and a productive one ( like you noticed that I did not say 5 or 10 things because some of us might just need only one or two of what I will list below)

cup-4078017_1920.jpg

Firstly, what do I want to use this language or technology to do?: You see this question of what do I want to use it for? Let me share my story with you on that, when I first started as a software engineering student, I had almost no idea of what was going on and the meaning of all these codes, I was learning SQL and python in school then, and It was very frustrating that I could not understand anything again at a level, so I approached one of my course mates and I told him "Please I want to be an Android mobile developer, what language do you think that is best to do that" and note, he was someone that knows about 5 languages then and he said "Java is the most universal programming language for Android mobile development", That was it, I started learning Java before my school even started teaching it and when I began to master concepts in Java, I became popular in school as a Java Guy till I even taught two different classes Java in that same school from start to finish (2 different semesters). Now I know so many languages including web, mobile and I even did the assembly and low-level language after some years.

Now, this is the point, the question of what I want to use it for, it is the question that sets you on why you should keep up with the process, why you should understand some concepts more than others, and why you should draw a time table for your learning, Just always type it or store it somewhere you can see every day, a text that says for example "I want to be a mobile developer" (I had it as my phone lock screen text then).

mark-516277_1920.jpg

Secondly, how should I learn from basics to advance?: The thing is that learning is not a normal thing like eating food because sometimes, you can get protein back to back, and sometimes you might not get anything near protein for weeks right? yeah, learning is based on what the language has to offer you, so how do you learn?

  • Divide your learning journey into sections: use online tools to search for topics covered in that technology from basics and by yourself, select sections to pick. This is what we have also done here in the lessons we will be teaching.
  • Focus on your progress and not someone else own: The thing that you must understand is that you are own future and progress, you don't expect anyone to believe in the dream that they were not there when you were dreaming it. It is your future and your dream so you must stay in line with your goals.
  • For each section covered create something: Search online, make google your friend, we have a lot of help on the internet, search for exercise on the topic you have just done, this is what we will be doing here also.
  • Overtime, stay accountable to someone: Staying accountable to someone can be hard, which is why we are creating a community for that but also you should know if someone you are accountable to usually available then picks someone new immediately, don't work with anyone time if the person is not always available and most especially if the time is not specific.

project-363266_1920.jpg

Thirdly, building complete projects: building projects is kind of different from building complete projects, this is when you begin to bring together all the projects that you have worked on when you were learning basics, like for example, you built a console calculator when you were learning basics and now you can complete it to real-world mobile application using Java and android studio or convert it to a GUI application but most importantly make sure that all projects are complete. This is also included in our learning process here.

Fourthly, make your learning fun with GitHub: I will be creating a separate lesson on how to make use of GitHub, where you will learn how to use GitHub to track your progress and also see how well you are doing, you will learn how fun it is to look back on your progress and be happy. and if you already know that then keep up with it also.

woman-446670_1920.jpg

Lastly, motivation: I have talked about a lot of things, let me say something about the presence of motivation, programming or software engineering as a whole can make you rich in just x year(s) or x months but as interesting as that is, it requires only for a very hard thing which is staying motivated in the whole process. Find your motivation, maybe a quote "I will stop when I am done and not when I am tired", "Taking breaks does not mean stop, it means to come back once your mind is a bit rested", or "Taking a step each day can lead me to the door, at least I have to open it before knowing what is on the other side so I will keep taking a step", you could even set yourself a 100 days of code goal.

You don't need to browse thousands of things to stay motivated, you can just work on this listed above, it does not have to work once or the first week or second but keep pushing. I saw a post that once said "Never let yourself two(2) days without doing a habit" - This turns your habit into a game (it makes it fun)

Thank you for reading through, I am here to support your learning journey in Java programming language with more detailed explanations concerning the official documentation and the white paper

Subscribe to the youtube channel to support and also learn using video lessons, all lessons will be provided both on the youtube channel and also on hashnode

For questions and support:

Subscribe Here πŸ‘‡πŸ‘‡πŸ‘‡ youtube.com/channel/UCuAQfijqNh99N_JKzguhw7..

GITHUB πŸ‘‡πŸ‘‡πŸ‘‡ github.com/for-maxstack-developers

HASHNODEπŸ‘‡πŸ‘‡πŸ‘‡ maxstack.hashnode.dev

Β