Secrets of Reverse Programming | Learn Coding Faster
How to start Programming? Nope, there is a lot of articles on internet related with this topic, so I am not going to say same things to you because I will show you secrets of Reverse Programming
When I first start coding I made a lot of mistakes and my learning speed was so slow until I changed my learning style. As I see from social media majority of beginners are starting their coding journey from HTML CSS which is very simple and doesn't require extra effort. At this time, you are not improving your algorithmic thinking skills, it decreases your learning speed.
You have to always challenge your brain in order for it to grow. This is why choosing a complex is so beneficial. It engages your brain to learn something new and offers the chance to improve.
A complex activity not only strikes a match of excitement, but forces your brain to work on specific thought processes like problem solving and creative thinking
A 2013 study in Psychological Science found that older adults ages 60 to 90 who did new and complex activities, such as digital photography or quilting, for an average of 16 hours per week for three months scored better on working and long-term memory tests than those who did more familiar activities like reading and doing crossword puzzles.
If you start to learn programming from complex you already will know easier parts. For instance, I had no idea about Python when I tried to develop web crawlers with it. However, after few days I built my first project with Django (Web Framework). That was amazing fast progress that I made with this method!
I know some of you will think there are limits to how far any individual can go, genes set a boundary around what is possible. However, while genetics influence performance, they do not determine performance. Do not confuse destiny with opportunity. Genes provide opportunity. They do not determine our destiny. It’s similar to a game of cards. You have a better opportunity if you are dealt a better hand, but you also need to play the hand well to win.Reference: Atomic Habits - An Easy & Proven Way to Build Good Habits & Break Bad Ones
I completed several internships and all of them required high tech skills or popular frameworks like React and Django. If you want to focus on front-end development don't stuck with HTML and CSS instead consider to directly deep dive into JS frameworks like React, Vue and Angular. While you are learning these frameworks, HTML and CSS automatically will completed.
Overlearning refers to the continued training of a skill after performance improvement has plateaued.
What Watanabe’s ( a professor of Cognitive, Linguistic and Psychological Sciences at Brown University and an author on the study) research suggests is that if you stop training a skill right after you've acquired it the brain stays in its ready-to-learn state. If you then train on a second similar task while your brain is still in a plastic state, it overwrites the first skill. It's like you haven't been studying the first skill at all.
This is called retrograde interference
What Watanabe has found is that if you don't over-learn, your brain has greater quantities of glutamate-dominated excitation. Glutamate is a chemical that makes your brain plastic or more capable of learning. However, overlearning reduces glutamate levels and increases the quantity of GABA, a chemical that stabilizes the brain. “If you overlearn the skill, your brain state changes very rapidly from being plastic to being stable,” said Watanabe. Which in turn means that your brain has more time to lock in the skill preventing it from being overwritten.
Reference: Popular Science
Practice makes permanent, and that goes for brain function, too. I remember when I finished my several Django projects I switched my learning path to React. After a while, I messed up with both. Therefore, I developed 30 more blog projects with Django and mainly focused on Python. In addition, I used to spend at least 7 hours with coding in every single day.
An amateur practices until they can play it correctly, a professional practices until they can’t play it incorrectly
Practice makes perfect and it’s all about the repetition DEVs. It’s all about the repetition. It’s all about, well… you get the idea…😅.
Wake up early
Getting up early gives you a kick start for the day ahead. Besides allowing you more hours for your work, it also boosts your speed. Studies have suggested that when a person gets up early, he is more energetic and takes lesser time to do a task that would take more time otherwise. He is also more adept in taking better decisions, planning and achieving goals.
Don't skip breakfast! By consuming a high-quality breakfast to start your day, you can improve your memory and concentration levels, as well as improve your mood and lower stress. Different studies amongst children have shown that kids who eat breakfast tend to have improved cognitive skills and perform better at school.
When I got into university abroad, I was staying 40 people in dormitory and this part was worst part of my life. No enough money, opportunity and language was different so communication with people was hard. I was suffering in this situation until I organized my daily activity. After woke up early, I took my laptop and went out to buy something for breakfast. Then I spent my whole day in library learning reverse programming. I achieved my goal by doing same everyday, started build websites for customers and moved to better place.
Tutorials and Books
It is better to start with watching online tutorials before buying books about specific programming language. I asked this question on twitter and here is the answers from experienced developers.
I like both. Online courses & tutorials are for faster understanding the subject (they often have helpful tips how to adjust IDE or something like this). Books are for further information about the topic.— makneta (@makneta) July 26, 2019
I would say both and that main factor to choose is material level and pace vs your current knowledge. I think the most important think to stick with learning is finding a right learning curve for yourself. That's hard, at leas for me 🙂— Laurynas Rekasius (@LaurynasRek) July 30, 2019
Online tutorials to learn basic concepts and the whole scope.— David MM🐍 (@DavidMM1707) July 26, 2019
Once I know the basics, I'd rather use books. I can search faster, I can read it at the place I want (not at the place the teacher talks) and I can copy-paste code if I need to test something fast.
I do both but watching online tutorials is great the first time trying to learn something. Then the books are great reference— Cl. Maciel-Contreras (@clc_80) July 26, 2019
If you want to know great sources for learning programming comment below and my next post will cover it.
Write programming articles or tutorials
Once you are trying to teach someone else the material or task you are trying to grasp, you can speed up your learning and remember more.
When teachers prepare to teach, they tend to seek out key points and organize information into a coherent structure. Our results suggest that students also turn to these types of effective learning strategies when they expect to teach.
You can answer questions on StackOverflow, this amazing platform is not only looking for solutions and asking questions. It is one of the best way to increase your knowledge by solving different programming problems. Even you can provide your StackOverflow account when applying a job or intern.
Join programming communities in social media to track your progress and interact with other developers to learn something from their experience. Post your daily tasks, what you learned and even questions related with programming.
Be patient my friend! This is not only essential in programming, but also in life. You have to understand that programming has a challenging curve of learning, and it will take you some time to understand things. You're going to be a great coder one day.