For the past couple of weeks, I have been going out to program in public, and since then I have met with a lot of programmers. I have met professionals and beginners. It has been a great experience for me. But the beginners I have met always complained about getting stuck while learning either HTML, CSS, and JavaScript.
This is very popular in web development. Getting stuck while learning web development languages especially JavaScript. That is why I am making this article to share my experience on how I learned programming on my own without a mentor, and without reading too many blog articles or watch too many YouTube videos. Truth is, I never got stuck, you wanna know why? This article is for that.
"It's not possible for you not to get stuck, except you must have paid for the best courses and used the best tools", so some may think. But that's the opposite of my reality. I didn't pay for any courses I used w3schools to get started and guess what? I never had a laptop when I started learning. And it's not that I was a guru or something. When I started I didn't even know programming was a thing, I used to call it networking :).
These are the interesting things I am going to be talking about
- What inspired me to learn to code
- The roadmap I took without knowing there was a roadmap
- How I started learning to code without a laptop
- Why I couldn't get stuck in JavaScript
- What kept my inspiration alive
Before you jump right in, it might interest you to know that Codecademy has one of the best online platforms to learn to code for free. Start your journey today with a great resource.
What Inspired me to learn to code
About two to three years ago, I wanted to rebuild the app that was popularly used in my church. Because of that, in early 2019, when I got an android phone, I started making research. It's funny how I started researching web development (I called it creating websites from scratch back then) when I wanted to build a mobile app. I clearly didn't know what I was doing, but something was leading me to the right path.
Do you know why I had to start typing creating a website from scratch on Google? Because I was first misled to WordPress, and I almost wasted months on WordPress before discovering that WordPress isn't what I wanted. Though I liked WordPress, I mean I admired it, but it wasn't for what I wanted, so I walked away.
Finally, I stumbled into w3schools HTML tutorial. I looked at the introduction page, I also saw the things HTML and CSS could do from a youtube video! So I was interested in learning them. So building a mobile app is what inspired, pushed me to learn to code.
The roadmap I took
When I checked out some other tutorials in w3schools, I discovered some other languages that I could use to build a complete website, like JavaScript and PHP. From that point on, I wanted to dump HTML and jump right into PHP. Because, back then the introduction page of PHP tutorial (in w3schools) referred to some big apps that were using PHP (like Facebook, and WordPress).
So there I was thinking PHP was the only thing Facebook used. I mean I wanted to build an app like Facebook, so it would be a step in the right direction if I used what they are using. Then I saw in w3schools, that I need to be familiar with JavaScript before learning PHP.
I was like cool. I will learn JavaScript and then PHP. When I got to the JavaScript section, they said you need to know HTML and CSS before learning JavaScript. So I went back to HTML again.
You see, that was how I had my own roadmap (HTML => CSS => JavaScript => PHP => Like Facebook app), thanks to w3schools tutorial's prerequisites. I almost didn't follow my roadmap though.
I remember when I was done with HTML, I started CSS, three days into CSS, I stopped CSS. I got interested in Python, so I started learning Python. It wasn't up to a day something pushed my head away from Python back to CSS because I felt like I was being a failure, giving up on CSS so easily.
A reminder that Codecademy is one of the best free platforms for learning to code. They have a tool that will give you a roadmap based on what interests you the most. You don't wanna end up like me who had no idea where He was going.
How I started learning to code without a laptop
As essential as a laptop can be, it is not a prerequisite to start learning to code, especially web development languages. You may say "well you can learn quite alright, but you won't be able to build projects and stuff." Hmmm. That is so wrong, I have seen projects (like portfolios) that were built with mobile devices.
There are wonderful apps on mobile app stores that act as a code editor for languages like HTML, CSS, and JavaScript. So if you have just a phone and you want to learn to program, these are the things I did and how I did them:
1. I planned my study time:
This is a very important and difficult aspect. It is easy to plan a time to study, but it is difficult to stay consistent with it. I made up my mind that I was going to cover at least two sub-topics (using w3schools) of a language daily.
Truth is, I wasn't always consistent with it. There were days I wouldn't even study at all, I mean if this is you it's fine, I have been there. People run and fall most times, but the point is how quickly can you recognize that you fell and that you have to get up.
Set out a time for studying, and try to make sure that you do it daily. And remember if you should miss a day or two or more for some reason, you should always get back to your routine.
Here is a tip: Don't abandon your study for too long, else when you come back you may struggle with relating the things you are about to learn with those you already learned. Because chances are you won't even remember most of the things you already learned.
2. Had a notebook for jotting:
Not having a notebook to jot down points while learning is a great way to get stuck and remain stuck. This is one of the things I am proud I started from the very beginning. Every subtopic, explanation, sometimes code were jotted down in my notebook.
It is from this notebook of mine that I used in generating 70 questions for HTML, and more for CSS and JavaScript. These questions will be out on a web app I built for developers soon.
Most times when I forget something while coding, I always find myself going to my notebook first. There are wonderful documentations and write up on different programming languages. But nothing is as good as what you wrote for yourself, because you would easily understand it.
One other beautiful thing about jotting down is how it makes you meditate on what you just read. So when you read something, you jot down the points, and as you do so your mind will reiterate what you just read. This can help you remember easily.
So you want to learn HTML? Get a book for HTML, jot down the points. Do the same for the other languages. I hope in the future I will write an article on some of the important things you should jot down in different languages and also show you the irrelevant ones to ignore.
3. Revised daily:
Just as I studied daily (or try to study daily), I also revised my daily. This is where practice comes in. At this point, I don't need to go to the website again, I simply use my notebook.
When I revise, I don't necessarily read my notebook as though am reading a novel. When a read a point, I put that point into code. I further explain it to myself in code.
It is said that one of the best ways to learn more or understand better is to teach. I practiced this.
Though I didn't have an audience to teach, I had me to teach. I would teach myself over and over both in code and on a whiteboard. You may not have to do it like mine, you may have an audience, teach them, try to make them understand. Your audience can be your pet, your audience can be your Twitter followers, or on a blog.
Practicing in code is very important. If the course or tutorial shows you just one code. Try recreating that code and then do more. The more you do it, the more it becomes clearer and the more it will stick with you.
There are mobile apps you can use to achieve this, my favorite for HTML, CSS, and JavaScript was TrebEdit because of its organization.
It organizes your code very well, that's why I mostly used it for building mini projects (not just for practicing a concept) like Calculator, To-Do, etc.
While if you simply want to try out a concept or code snippet, there are also apps for that. With platforms like Codecademy or w3schools, you can do so on the website.
Why I could not get stuck in JavaScript.
The reason has been clearly stated above. You don't need a mentor to learn to program by yourself.
You can convert the things I have shared with you into simple rules for learning programming. It would work any time and with any language. So what are these rules? I will quickly reiterate all that was said.
- Plan a study time for each day and try to be consistent at it.
- Have a notebook for jotting down points.
- Explain what you have studied to yourself or an audience.
- Put in code what you have studied, it worked? Make another example. It didn't work? Try again.
These are not things I learned from a blog post or someone, this is my experience. These are the things I did, that worked for me. So you shouldn't say "it is easier said than done" if someone already did it, why can't you?
Just a quick tip: Don't try to study everything at once. Don't try to impress a friend by pushing yourself to learn HTML in one week. It's not worth it.
Take your time, everyone is not the same, just because someone learned JavaScript in 2 months doesn't mean you who are in your fourth month in JavaScript is a failure. As long as you know you are doing what is right. Keep at it.
Now, you may say, it's not possible to not get stuck while learning JavaScript (or maybe any other languages), well if that's what you believe, I'm afraid it's going to keep working for you.
Before learning JavaScript, I didn't know getting stuck was a thing in programming so I couldn't believe it, because I didn't know about it. So not knowing about it made me not believe in it which in turn helped me to not get stuck.
This is why you should be careful about the things you read or hear (in blog posts or youtube videos), and be careful about the things you believe from what you read or heard. These things can either destroy you or develop you.
So if you believe in getting stuck while learning, and then get stuck, using a platform like Codecademy is of great importance. With Codecademy you can get unstuck with hints, already asked questions in the forum relating to what you are stuck with, you can also get unstuck with an actual and similar example.
What kept my inspiration alive
This question has been asked severally by beginners. How do I stay motivated? This depends. For me, it is honestly not what inspired me to learn to code that kept me inspired.
Coding was interesting to me, so I wanted to learn more to be able to do more. One of the ways I stayed inspired was by looking forward to making a project. I am not talking about complex and big projects, it was always mini projects like calculators, To-do, etc.
When I was unable to do some of these projects, I'd go on to study and practice more. Another approach I used was playing with exercises. W3resource was my favorite (it's still my favorite).
I'd go there to get simple exercises that relate to what I have studied and then try them out. When I don't get it, I'd always go back to study more.
Some projects and exercises required what I haven't studied, so I'd always say to the project or exercise, "when I study more, I will come back to you," that way, I was always eager to learn more. These were the simple things that kept me going.
Because I understand how important exercises were to me, I have created a web application for that purpose. This article is not about it, but I just want to let you know it would launched soon. It is a very interactive way to keep practicing.
Quick Tip: Using Codecademy pro, you can practice with projects that are related to the module (or sub-topic) that you've studied. As a free user, you will also have access to exercises related to that sub-topic. Try it.
Conclusion
These aren't things to sweeten or anger your heart. This is reality and it is very simple to work by. As I said, it's not something someone motivated me with, and then without trying it am telling you to do it. It is something someone has been doing, my experience. So if you want to chose to do this, am saying it is easy.
If you don't have a laptop, you can start learning with a smartphone. If you don't have a smartphone, hmmm, may God be with you. I mean you should have a smartphone, they are pretty easy to get these days.
Alright, that's it for today. Thank you for reading. If you find this article useful, please give it a like and share as well. Also, let me know of your experience in the comment section.
Ahhh lastly, there is a Hackathon (Qubators Hackathon) that I participated in, if you don't mind I'd like to demand a vote from you. Simply click here, search for Team MaGoner (number 32) and click vote. Thank you in advance.
Top comments (1)
A good learner is one of the lifelines to success in life. Learn from your mistakes, learn from what other people do and act on it or forget it. There are no shortcuts to success. So, if you want to become a successful developer, you need to take a right step and that right step is programming on your own and do check at it4nextgen.com/best-laptops-for-st... site for best laptops for studying. The process of learning programming has 2 main parts. First part is learning how to program and second part is applying what you learn into practice- that means creating something using the techniques taught in class or creating some interesting logic and then applying them onto an existing code base, which I’ll be covering in this post