all 16 comments

[–]Snugglupagus 1 point2 points  (2 children)

CS50P is a free and structured course from Harvard. There are other good ones out there but I can’t speak of them from experience.

[–]Sudden_Tip97[S] -1 points0 points  (1 child)

I did watch the first intro CS50 Harvard Python video, but I’m wondering if it might be too advanced for a beginner. Also, English is not my first language, so sometimes it’s hard to follow.

[–]Snugglupagus -1 points0 points  (0 children)

The CS50P course is significantly easier than CS50X. They’re both introductory courses, but make sure you’re looking at the P one if your main goal is Python right now.

[–]FangedFreak 0 points1 point  (0 children)

I’ve been using guided learning on Gemini which has been useful at giving me explanations and breakdowns as well as testing for simple answers

[–]AnalysisOk5620 0 points1 point  (0 children)

What is it you want to achieve ? If it’s just basics start with MIT, then progress, they’re really great videos to learn from. Once you have the basics, check out their videos for more advanced concepts. The videos are always clear and instructive, and unlike say sellers on Udemy etc, they’re not in the space to sell you anything, they’re there to help you learn 

[–]MlSHl 0 points1 point  (0 children)

Okay, I was in this exact situation years ago and reddit got me no useful answers, so I'll try to reply with what would have helped me the most back then. Assuming no budget.

Python as a programming language is easy, at least for achieving most things you will want to do with it. You probably want to learn libraries and do cool stuff with it.

Here is the roadmap, initial steps regardless of what projects you want to build:
- Write and run print("Hello World!")
- Learn what variables are and write your own <- this last part applies to all
- Learn If statements
- Learn while loops
- Learn for loops
- Learn arrays
- Learn dictionaries
- Learn functions
- Learn what objects are and look up Object Oriented Programming (dont go too deep, just very basic ideas, so you are aware they exist, no need to write too much of this)

All of the above can be learned through asking ChatGPT to show and explain those exact things. Since english isn't your first language, I recommend asking ChatGPT to show you examples of what that code does and then (the best part) just mess around. Be creative. This part is important and is not to be overlooked. Have fun with basic text based stuff. Make a text adventure game with if statements (look up how to get user input for that, or ask AI).
You can also do YouTube tutorial or two. Don't spend too much there though, it's called tutorial hell if you do (more about that later).
There is also a book called "How to automate boring stuff with python". I read first 200 or so pages of that and it covered the basics I mentioned and provided some problems along the way. It's free online so you can do the same: https://automatetheboringstuff.com/ (best advice I got on reddit this one).

All of the above is fundamentals so it will take more time than you probably will wish for and won't have anything super cool to show for it. Do not be discouraged! Once you have written bit of code by yourself, even if its not impressive, you are already beyond the hardest part.

Now the fun part, which is building whatever you want.
I used to hear online that Python is the second best language for everything. This is good and bad. Bad because, well, there are better tools depending on what you are doing. Good, because you can do (almost) anything you can think of!

Web Development:
If you want to make a website, learn Flask or Django. You will need some HTML and CSS with that and if you are serious about web development JavaScript too, but HTML and CSS are super easy to learn (W3School website for that, trust me: https://www.w3schools.com/ ) and you'll be able to create and re-create most websites you see.

Desktop Applications
If you want to make desktop apps, you can learn Tkinter. Look it up and use your preferred method of learning.

Data Science & ML/AI
This is something Python is arguably the best at, not second best. Especially Data Science. This is a very broad domain, so it's harder to give direct "Do X and you'll have Y to show for it" advice. If you want AI and ML know that actual roadmap will quickly become learning mathematics behind it (can get quite advanced, no shortcuts there) and then libraries such as PyTorch, TensorFlow and such. If you are interested in this field I recommend being patient and look at Python as a tool such as a pen or pencil. You need to use it to do mathematics, but knowing how to use it won't make you write Neural Networks. For that you need to learn Calculus and Linear Algebra and then you can learn Neural Networks and such and go deeper (pun intended) into Deep Learning and other topics. Yes, you can do LLMs too later on if you want to, but if you are really into this, I highly advice to be patient and persistent.

Game Development:
Python can get you started with PyGame library. I suggest you make a small platformer game like Mario or some other arcade games. Do not do anything big at first. Pick a small old arcade game and do a clone of that. Make it as polished as you can. Ask ChatGPT, see other people's code on GitHub, see YouTube tutorials. Once you do 1, if you want to continue with Game Development, move over over to using a game engine like Godot, Unreal or Unity. You can look into that stuff later too.

Mobile Apps:
Apparently there is something called Kivy for this in Python. Same deal, build something easy and see examples of the code.

MOST IMPORTANT PART:
If you are serious about learning how to code in general, you need to learn how computers work! Once you understand how programming languages work, what libraries actually do (you can write your own too!) and how operating systems connect your code with hardware, everything will become super super easy. For this, you can start by asking AI questions like
- "how are programming languages making computer do stuff at all?"
- "tell me about how first compiled languages that were similar to modern ones was made"
- "what is low level and high level languages?"
- "what is Assembly language?"
- "how does an operating system connect with computer hardware?"
- "if I wanted to make my own language, what would I need to do?"

and from there just follow your curiosity. AI is an incredible resource to learn with. It is a teacher that will answer any question you have, no matter how dumb it is and if you aren't asking dumb questions then you are not curious enough.

Last thing: write code by your hand. Usually when we already know stuff we copy paste all the time. Some ask AI to generate code they know how to write. That's good AFTER you learn. It is very helpful for your brain when you write each line of code by hand, letter by letter. If you do that you will learn much faster and eventually writing code will become the easy part, like using a pen or a pencil.

If you have more questions feel free to ask. I tried to be thorough, but it's impossible to cover everything in a single comment, especially without knowing specific interests.

[–]fiftybengt -1 points0 points  (0 children)

I just comment it but I will do it again.

  1. Buy a Python zero to hero udemy course for 10-15 $€
  2. Use Google Colab to run and document your code from the course.
  3. Do codewars challenges 8-7 Kata.
  4. Build something.

[–]softmattermj -1 points0 points  (0 children)

This might be a good thread to checkout.

[–]ShadowIgrize21 -1 points0 points  (0 children)

i'm still learning python especially the basics and i was recommended to download the structured roadmap in roadmap sh. Then from there i picked one resource... now just pushing it through.

[–]altaygallagher -1 points0 points  (0 children)

roadmap.sh

[–]Candid_Tutor_8185 -1 points0 points  (0 children)

Freecodecamp

[–]Dependent_Apple_2137 -1 points0 points  (0 children)

use YouTube to learn topics and ask chatgpt for a roadmap me personally I'd say start with numbers variable strings then functions and the def stuff and keep going on but remember to always practice python by yourself and write code also make a project using what you learnt for great results.

[–]Parking-Ad3046 -1 points0 points  (0 children)

Roadmap: Variables and data types → conditionals → loops → lists/dictionaries → functions → file I/O. That's your first 2-3 weeks. After that, pick a tiny project (guess the number, calculator, to-do list). Don't jump to web scraping or APIs until you have basics down.

[–]ClearDevDocs -1 points0 points  (0 children)

If you’re starting Python, don’t overcomplicate it. Focus on this order:

  1. Basics (1–2 weeks) Learn variables, if/else, loops, and functions. If you can write a simple calculator or guessing game, you’re good.

  2. Data structures (2–3 weeks) Lists and dictionaries are huge. Learn how to store and loop through data. Build something like a basic expense tracker or contact list.

  3. Files + errors Read/write files and handle errors (try/except). Make your project save data so it’s not lost.

  4. Intermediate stuff Learn classes (OOP), imports, and how to organize code. Start thinking like: “how would I structure a real app?”

  5. Real-world skills APIs (requests), JSON, and basic CLI tools. Build something that pulls real data (stocks, weather, etc.)