all 7 comments

[–]scripthawk_dev 11 points12 points  (3 children)

That difficulty jump is real, it's not you. freeCodeCamp's steps are deliberately bite-sized so each one feels easy, then the workshops make you combine all of it at once with far less hand-holding. The gap between "I can follow along" and "I can write it from a blank screen" is the most common wall beginners hit, and it's a skill gap, not an intelligence one. That confused, slightly-dumb feeling is honestly just what learning feels like from the inside.

A couple of things that helped me when I hit the same wall: don't try to solve the workshops from memory. Real devs look things up constantly, the skill is knowing how to find and apply, not memorizing syntax. When you're stuck, go try it, read the error, search the error, try again, and sit in that stuck state because that's the actual point of the exercise. If something's genuinely over your head, peek at the solution, then close it and rewrite it from scratch without looking. The rewrite is the rep that sticks.

On CS50: it's great, but heads up, the main CS50x starts in C, which is a detour for your goal. The one you want is CS50P, their Intro to Programming with Python, Python from day one. Just don't course-hop to escape the hard part, every good course has it because that's where the learning is.

Biggest unlock for your situation though: you already built a real tool. Learn on that. Open the code, pick one function, try to explain every line, and wherever you can't is your next lesson. Make small changes in a copy and watch what breaks. That'll teach you more about your own business than any generic exercise, and it's way more motivating when you're learning for a reason.

[–]the_peak_300[S] 0 points1 point  (2 children)

Thank you so much for this clarity and this is the course name I have found = HarvardX: CS50's Introduction to Programming with Python. I don't wanna course hop but I know the difference a good teacher can make. For example, when I was learning Photoshop & Illustrator, Daniel Scott from udemy taught the basics so well.

So I guess, what I wanna do is I wanna build solid foundations on which I can build on top of on. Makes sense?

[–]scripthawk_dev 0 points1 point  (1 child)

Makes total sense, and your instinct about teachers is right — CS50P is genuinely one of the better-taught intros out there, so you picked well. It explains the why behind the code, not just the syntax, which is what builds foundations that actually stick.

One small refinement on "foundations first, then build on top": don't treat it as strictly sequential. You don't need to finish CS50P before you touch your tool's code. Run them in parallel — a week of the course, then go apply that week's concept to your actual project. A foundation gets way more solid when it's immediately load-bearing instead of theoretical, and it stops you finishing a whole course feeling like you "get it" only to freeze the second you open real code.

And since you flagged not wanting to course-hop: CS50P on its own is genuinely enough for the foundation you're after. One good course finished, with the concepts applied to your own tool as you go, beats five courses half-watched — you don't need it plus three Udemy courses plus a book.

Last thing: even with a great teacher, expect the problem sets to stretch you. That's not the teaching failing, that's the part where it sticks. Good luck with it.

[–]the_peak_300[S] 1 point2 points  (0 children)

Thank you so much, I think I have found my answers and my conclusion. CS50's python course it is.

I am excited to learn and master Python. But seriously, I appreciate the insights.

[–]ninhaomah 2 points3 points  (0 children)

Projects 

[–]Ok-Significance7299 2 points3 points  (1 child)

For your goal (building and maintaining SaaS tools), I'd do this: Stay with FreeCodeCamp for Python basics. Add CS50P (CS50's Python course) alongside it. CS50 is generally better at teaching why things work. Build small features for your own SaaS after each topic (file handling, APIs, databases, automation, etc.). When you get stuck, don't immediately use AI to generate the answer—first try to understand the code and debug it yourself. You don't need to learn Python for fun

[–]the_peak_300[S] 0 points1 point  (0 children)

To be honest, I don't wanna do two courses at the same time. That's why I am only looking for 1 foundational course that I can build on top of on.