Hello, friends!
Welcome to ProgrammingZero (to HERO), where I simplify complex computer science concepts into easy-to-understand pieces. We’re starting things off at a gentle pace, covering some foundational topics before moving into more advanced material.
Here are some of the upcoming blog posts you can look forward to:
A Beginner’s Guide to Git & GitHub
Choosing Your First Programming Language
Creating Your Own Computer Science Curriculum (and exploring additional resources)
Python Basics #1: Understanding Data Types
Stay tuned for these! But for now, let’s dive into the article.
Starting with a single language
I've been using Codecademy.com for a few years now to supplement my programming education. Initially, I was eager to jump straight into one of their ‘career’ paths, which included multiple programming language courses, portfolio projects, and a structured progression. I thought that by the end of the course, I’d have mastered the domain and be ready to land a job.
While I’m sure some people have found great success with this approach, it didn’t quite work out for me. I quickly realized that there’s a lot more to programming than just learning the syntax. So, instead, I opted for a different approach (which is also the generally recommended one): I chose a single language and committed to diving deep before moving on. I decided to take Codecademy’s Learn Python 3 course because Python is the language I chose as my first.
If you’re curious about why I decided to stick with one language before exploring others, check out this video by Namanh Kapur on YouTube 👇
Q: So, how was the course? Was it worthwhile, and would I recommend it to others?
A: In short, absolutely. Let’s dive into the reasons why and set some expectations.
What is Codecademy?
Codecademy.com is an online learning community dedicated to teaching programming. They offer a vast array of courses and languages, so even if Python isn’t your thing, it’s worth checking out what else they have to offer. Just to clarify, I wasn’t sponsored by Codecademy to write this post (although that would be pretty rad)
What I personally enjoy about Codecademy is that the learning is hands-on—you're actually writing your own code and working through a series of exercises. For me, the best way to grasp new concepts is by applying them to create something, so this was a major factor in choosing their platform over more lecture-based options.
Another aspect I appreciate is the ‘gamification’ of the learning process. I was hooked on computer games when I was younger (and I still indulge in a 2-3 week Minecraft phase every year), so earning XP, tracking your overall course progress, and having opportunities to take quizzes and complete off-platform projects (like side quests) really appealed to me.
The Python Course
So, how is the course itself? The Learn Python 3 guides you through basic syntax and core concepts, making it accessible even if you have no prior programming experience. While the course isn’t free, a subscription to Codecademy does offer additional benefits if you choose to go that route. I happen to think you get a lot of value from the subscription, but sift through those benefits before making your own decision.
Here are the main modules that the course walks through:
Hello World
Control Flow
Lists
Loops
Functions
Code Challenges I
Strings
Modules
Dictionaries
Files
Classes
Code Challenges II
Next Steps
Each module includes an interactive lesson (where you’re writing actual code as you learn each concept), a quiz, some projects, and either an article or a bonus piece of content.
Codecademy also offers ways to reinforce these concepts after each lesson with flashcards and quizzes. Plus, you earn stars and checkmarks for completing activities! (Hey, I need all the dopamine hits I can get.)
Next, I’ll cover what I liked, what I didn’t, and my advice if you’re planning to take the course yourself.
What I Liked
There were actually a lot of things I enjoyed about this course and Codecademy as a whole. For simplicity, I’m going to combine both in this list for those of you who might be unfamiliar with the platform.
Everything is on-platform: You don’t have to worry about installing Python, finding a text editor, or troubleshooting on your own. This was especially helpful when I was just starting out and had no idea how to set up a coding environment on my computer.
Learning by doing: Each topic is paired with an interactive lesson, allowing me to apply what I learned immediately. Typing out the code myself helped me commit the syntax to memory.
Sense of progression: Codecademy does a great job of making you feel like you’re moving forward. When you’re first starting out, it’s easy to feel stuck because of the learning curve before you can actually build your own applications. Codecademy helped bridge that gap for me.
A larger community: The Codecademy learning community is extensive. It was easy to get answers on their forums or ask questions in their Discord server. The server is organized into smaller topics, making it simple to find what you need. Having these resources made me feel less alone in my programming journey.
What Didn’t Work for Me
There’s no doubt that the Python 3 course is well-polished, but there were a few areas where I felt improvements could be made (though not many).
Start with an overview: In hindsight, it would have been really helpful to get a broader understanding of the key topics in Python 3 before diving into the syntax. Learning about concepts like object-oriented programming, the broader applications of Python, and how to organize your code on a macro level would have been incredibly beneficial.
A capstone project: I would have loved to see a capstone project that I could take with me after completing the course. While they do a good job of having you build off-platform projects along the way, there’s nothing you build entirely from scratch as your own.
It takes more time than you think: The estimated course time of 23 hours is pretty optimistic. To me, that number seems accurate only if you never get stuck on a lesson, don’t encounter any tricky bugs, and have a fantastic memory (and don’t need to revisit concepts, like I often did). Just keep in mind that it might take you a bit longer to complete the course.
My Suggestion
Take the course!
If you’re beginning your programming journey and have chosen Python as your first language, I believe this course will be immensely valuable. For seasoned programmers, Codecademy also offers an advanced course that might be a better fit.
Here’s my key suggestion: build something along the way. Whether it’s a game, a small application, or an automation script in Python, integrate the lessons from each module into your project. By the time you finish the course, you’ll have a tangible project to show for your efforts.
Thanks for tuning in, and remember: it’s perfectly okay to start from zero.
Cheers,
Morgan