My First Week In Python:Lessons from a Beginner's Journey into Programming
Backstory
I was 13 when I heard about programming(I still didn't actually know what is was about). From there, I became more curious and I wanted to become a hacker.
How did I find out?
Good question. We were playing with the Ctrl and Alt keys in the computer room. A guy pressed Ctrl+I and I saw what I thought was likened to a hacking movie.
Numerous lines of code in different shades of colors and a palette that appealed to my eyes to this day.
I started to learn how to 'code' when I was 14. I took lessons in basic HTML, CSS and Javascript while preparing for my Junior School final exams.
The results were out, I did well so I had to prepare for High School. I lost focus for three whole years and more or less 'forgot' everything I had learned concerning programming and writing code.
I decided to resume programming after high school and got stuck in 'Tutorial Hell' .
I got into College in 2023 to read a Combined Major and Minor degree in Physics and Computer Science.
Then I had to start everything from scratch so I chose Python.
This is how the Journey is going
Lessons
Use the right resources
Finding resources to learn how to program is the easiest but toughest and most important step of kickstarting your tech journey. It might be easy to get the resources but it's not easy to keep a streak. A simple google search on learning programming suggests more than 2 billion results-that's a lot of resources on the internet. Find the best!
What I'm Using
- After being stuck in the Tutorial Hell for days, I chose freecodecamp's Python course. Charles Severance, author of Python For Everybody and Tutor of the course breaks down even complex concepts into small bits, making them easier to understand.
Additional Resources
Python for Everybody: Exploring Data in Python 3 Kindle Edition by Charles R. Severance
Freecodecamp Python-FULL COURSE
Don't just click 'next'
The system is designed to reward us on each level throughout the course. In the first few days, I was only focusing on filling that vertical bar to 100%. It took me three days to find out I had learned NOTHING. I had to go back and start over. I wasted 3 days so you don't have to.
What I do
I pause the video at regular intervals to ask myself some questions like;
"What have I learned so far?"
"Can I explain X in my own words?"
"Which other way can I do X?"
Then you know whether you're really learning or just binge-watching tutorials
Take Notes
Why do you have to take notes?.... Okay chill, I'll tell you in a bit
Taking notes while learning how to program online can be beneficial for several reasons:
Retention: Writing down the key points and examples can help reinforce the information in your memory and make it easier to recall later.
Organization: By summarizing key concepts, creating outlines, and documenting examples, you can better organize the information and create a framework for understanding the material.
Personalization:Everyone has their own way of understanding new information, and taking notes can help you create a record of the material that makes the most sense to you.
Review: If you need to refresh your memory on a particular concept or idea, you can refer back to your notes to help jog your memory and fill in any gaps in your understanding.
Still going to ask me why you should take notes?
I thought so.
Steal, Modify
Don't steal anything else....steal code and modify it.
HOW?
On Freecodecamp, there's a chunk of code after every single lesson
On every tutorial, there's a practice test
Here's how I steal, modify
If I saw print('boy')
I come back to my code editor and use the same function in different ways like this
print('Jake')
print('Preston')
I keep doing it until I'm familiar with the big idea that the lesson was trying to provide so Steal, Modify
Challenges
Syntax errors: One of the most common challenges that new Python programmers and I encounter is syntax errors. This occurs when you write code that doesn't follow the correct syntax rules of the language.
It's fine. It just shows you're now learning the language. It takes time to be familiar with a new language so do not give up yet.
Finding motivation: Learning a new skill can be daunting, and it's not uncommon to feel demotivated or overwhelmed.
To overcome this challenge, try breaking down your learning into smaller goals, find a supportive community of learners to join, and remember why you started learning Python in the first place.
Applying knowledge: Finally, applying the concepts you've learned in real-world situations can be a challenge.
To overcome this, practice writing code and working on projects that apply the concepts you've learned. This will help you gain confidence and build your skills as a programmer.