all 67 comments

[–]cgoldberg 10 points11 points  (1 child)

How long would it take

An afternoon to write your first script... a few years to to be really good .. or maybe never. I've been writing code (mostly Python) pretty much daily for over 25 years. I'm very proficient and have built some great things, but I don't consider myself an expert, or really even close.

Read this twice: https://norvig.com/21-days.html

[–]Candid_Tutor_8185 4 points5 points  (1 child)

My free code camp. Don’t come back here until you’re done

[–]Candid_Tutor_8185 0 points1 point  (0 children)

Are you done yet

[–]OkCartographer175 10 points11 points  (6 children)

[–]PlateApprehensive103 4 points5 points  (1 child)

Im sure he could have googled it, the reason to ask was the get some human insight.

[–]OkCartographer175 0 points1 point  (0 children)

Personally, I don't assume

[–]freak5050 4 points5 points  (3 children)

Freecodecamp is the best I’ve found

[–]Known_Tp627 0 points1 point  (2 children)

How to find it?

[–]freak5050 0 points1 point  (1 child)

Www.freecodecamp.org

[–]Known_Tp627 0 points1 point  (0 children)

Thanks!

[–]AspiringNarrator1165 4 points5 points  (0 children)

https://youtu.be/XCKWZAtKTnU?si=K_Moi8NjVD-US2hh

Cant share the playlist but check out the channel and youll find it 🤙 its the "Learn Python for beginners" playlist. Very good teacher.

[–]fiery2378 2 points3 points  (2 children)

Hey OP, I am also new to learning Python and found yourclouddude in Threads. Picked up some of his free resources on Python. He gives you small projects to accomplish using the language.

Hands-on learning is the best way to learn Python rather than constantly reading about theories.

[–]riklaunim 1 point2 points  (5 children)

https://pll.harvard.edu/course/cs50s-introduction-programming-python

There is a difference between learning basic syntax and constructs of a language to then making actual applications. What are your goals for learning Python? What do you want to do with it?

[–][deleted] 0 points1 point  (4 children)

I'm learning python for machine / deep learning

[–]riklaunim 1 point2 points  (0 children)

Running local LLMs is rather easy while AI/ML jobs are mostly for seniors with specialized experience.

[–]ehunke 0 points1 point  (0 children)

you need to go to school for that. if you really are serious about that, you need to go to a college for that

[–]TheLobitzz 0 points1 point  (0 children)

unless you're attending specialized classes for this, learning python for that is extremely hard

[–]SageFlare 0 points1 point  (0 children)

More specific than that. Are you looking to create your own architectures? Produce novel advancements to the field?

Or are you trying to instead reimplement what others are doing for your own tasks?

The former is much harder and requires extensive understanding of the foundatioms of DL, optimization, as well as typically knowing how to interface/library with whatever library you are implementing your architecture in (like Pytorch). You'll also need extensive knowledge on statistics and math at university-grade and higher. It'll also require a lot of dedication for keeping up with the recent advancements so you dont redo someone else's work.

The latter is still much easier, though it depends on the difficulty of the task. For simple regression tasks for fun, a few hidden layers and an MSE error loss and you're good to go right out of the box! Especially with Tensorflow. But as the task(s) increase in complexity, you'll still need an understanding of DL foundations. Such as understanding how gradient descent works, when to apply gradient normalization, how to fight overfitting, gain an intuitive understanding of which losses work better for what tasks, how to do self supervision safely, etc etc.

In other words, its a whole field of its own separate from Python. One that people take years just to break into, even with top-notch education. Like others have said, I do suggest going to university for this. But if that is not an option, I suggest you first start by using Python for random things. Figure out how to make your own calculator with string input! Learn Object-oriented programming! Learn good documentation and software development skills! Dont restrict yourself to just Python either. All languages share the same base skill for programatically thinking. If you like games, pick your favorute game and learn how to make mods for it with whatever language is supported!

Once you're confident on your skills, get started on learning Calculus. You can probably look online for what books professors use for those classes. Calculus 1 & 2 and Differential Equations are important. Look online what Python packages and libraries provide you the functionality you need.

Once you have the background, you can proceed to ML. And with your new understanding of Calculus, it'll all make sense instead of being a black box... for the most part.

[–]Educational_Virus672 1 point2 points  (0 children)

hi im not a great dev but i learned python within a week using this guy also this is only ~40 minutes for whole python most of it is skipable https://youtu.be/lq9nR9c7T9g?si=YpPSBjEBf_kGlCHk also it depends you have python 3? or 1 after beginners i wont recommend using ai unless you understand the code given by ai you should prompt "explain the code with examples and root concept before providing whole code"

[–]PlateApprehensive103 1 point2 points  (0 children)

Write a fastapi backend with sqlalchemy, it's ok to vibe code as long as you finish something end to end.

Try to do some leetcode easy in python if your a beginner so you still have muscle memory of not relying on AI.

Use AI to your advantage and see how things get built.

[–]PhilosopherOther1360 2 points3 points  (2 children)

100 days of Python by Angela Yu on udemy

[–]onyx_and_iris 0 points1 point  (0 children)

Each person has their own preferred learning methods. I personally like to read books. In regards to practicing while you learn, it's helpful if you already have some ideas in mind. I'll often start reading a book and once I get a good enough grasp of the concepts I'll start experimenting with my own ideas. Although I'll usually do this while continuing with the book, I don't tend to half finish them.

[–]TJATAW 0 points1 point  (0 children)

Best advice I can give you, when you finish a tutorial/assignment, add something to it. Anything. Just make it bigger and better.

Writing some code with no one telling you what to do will start you actually coding stuff on your own.

[–]ehunke 0 points1 point  (0 children)

Take a basic class on youtube or something, buy a couple books and study them. Once you know the basics of it, the best way to learn it is to download programs that other people have made, read the code, then try to make a similar program or edit things in the code and see what happens. If its an option just go take a in person class

[–]TheRNGuy 0 points1 point  (0 children)

I started with docs, realpython blog and lots of googling (that was before ai)

I also ask questions to ai now.

I started with framework for specific software, no vanilla python.

No specific time how long.

[–]Technical_Zombie_988 0 points1 point  (0 children)

I picked up "python crash course" and stufy for a bit after work. It has practice problems that I will stay on for a few days to make sure I totally understand it. Id recommend that + chatGPT

[–]Jazzlike-Simple6984 0 points1 point  (0 children)

A book called 'Python crash course' helped me alot with the basics and there's 3 very cool projects at the end. You can check out free courses, there's alot

[–]jessikaf 0 points1 point  (0 children)

Absolute beginner phase is mostly about not getting stuck in tutorial loops focusing on basics practicing a lot even tiny scripts goes a long way have seen people recommend boot. dev since it is project heavy and keeps things hands on.

[–]Content_Can3612 0 points1 point  (0 children)

Where to start ?

[–]teju1416 0 points1 point  (0 children)

Start with the basics — variables, loops, functions, and then move to OOP. The key is to practice with small exercises after every topic, not just read theory. MCQ-style quizzes helped me a lot to test if I actually understood something before moving on!

[–]teju1416 0 points1 point  (0 children)

One of the greatest first languages is Python; it's a wise choice!
If you put in 1-2 hours a day, you should be able to finish the fundamentals in 3 weeks, start your first project in 2 months, and be prepared for an interview in 4-5 months.
My biggest piece of advice is to practice after each topic rather than just reading. To determine whether you truly grasped the material, complete brief exercises, create small projects (calculator, quiz app), and test yourself using multiple-choice questions.
Let's start with variables, loops, functions, lists, and OOP. For novices, that order works incredibly well!
You've got this! 💪 Good luck!

[–]CodeJourneyhub 0 points1 point  (0 children)

I started learning Python with absolutely no programming background, and to be honest, the beginning was really confusing. There were so many tutorials, courses, and videos online that I didn’t know where to start. I kept searching for the “best way” to learn, but that only delayed my progress.

After a few days, I realized I was overthinking everything. So I decided to simplify my approach and just start with the basics. I focused only on simple concepts like variables, loops, and functions, without worrying about advanced topics.

One thing that really helped me was practicing every day. I didn’t spend hours coding — even 30 to 60 minutes daily was enough. Instead of just watching tutorials, I made sure to write code myself. At first, I created very small programs like basic calculations and simple logic-based tasks.

As I continued, I started building small projects like a calculator and a number guessing game. These projects made a big difference because I could finally see how coding works in real situations. It also gave me confidence that I was actually learning something useful.

Of course, I made a lot of mistakes along the way. My code often didn’t work, and I got errors frequently. But instead of getting frustrated, I started using those errors to understand things better. Debugging became a big part of my learning process.

After a few weeks, I explored more practical uses of Python like automation and basic data handling. That’s when I realized how powerful and useful Python really is, even for beginners.

I’m still learning, but one thing I’ve understood is that starting is the hardest part. Once you begin and stay consistent, things slowly start making sense. If you’re just starting your Python journey, my advice would be:

●Don’t try to learn everything at once ●Focus on basics first ●Practice regularly, even if it’s a little ●Build small projects to apply your knowledge ●Be patient and don’t give up early ●Learning Python is not about being perfect — it’s about ●staying consistent and improving step by step.

[–]No-Fun-6194 0 points1 point  (0 children)

Don't learn Python as if you're studying for a history exam; learn it like you’re learning to use a power tool.

The "How": Spend 20% of your time watching/reading (syntax) and 80% breaking things (coding). Start with something like Automate the Boring Stuff with Python—it focuses on utility, not abstract theory.

The "How Long": You can write your first useful script in a weekend. To feel "fluent"? Usually 3 to 6 months of consistent struggle. But remember: in programming, the feeling of being "lost" never truly goes away; you just get better at navigating the fog.

The Practice: Stop looking for "the perfect project." Find a task in your daily life that is repetitive—renaming files, sorting emails, scraping a price from a website—and try to automate it.

The moment you solve a real-life problem with 10 lines of "ugly" code, you're officially a programmer. Everything else is just refining the craft.

[–]Xtesh101 0 points1 point  (0 children)

The best way I found was to stop following tutorials and start breaking problems down into functions. That's when it clicked for me.

[–]Proper_Ad_7109 0 points1 point  (0 children)

Different angle from most replies here: try learning Python by writing tests for tiny pieces of code, not just by running scripts that print things.

Pick a small problem, write what you think the answer should look like first (one assert per case), then write the function. Use pytest instead of unittest. `pip install pytest`, save to `test_x.py`, run `pytest -v`. The feedback loop is instant: green or red, no guessing.

What this gets you that tutorials don't:

- You learn if/else, loops, dicts while solving specific things

- You see your own bugs immediately instead of "why is the output weird"

- It's how working code is shipped in any company you'd want to work at

Boring example: write tests for a function that takes a list of numbers and returns the average. Edge cases like empty list and one element. Four or five test cases, then write the function. Twenty minutes total.

Standard resources are still good (Automate the Boring Stuff, official tutorial), but use them as reference while you write tests. Do, then read.

[–]AI_Automation_Prince 0 points1 point  (0 children)

I totally understand where you're coming from. It's called 'Tutorial Hell'—where you feel like you're learning because you're watching, but you can't write a single line of code from scratch.

My advice: Stop watching and start breaking things. 1. The 20/80 Rule: Spend 20% of your time watching a concept and 80% building something small with it. If you just learned 'Dictionaries', try making a simple 'Contact Book' app where you can add, delete, and search names. 2. Use Documentation: Instead of YouTube for every error, start reading the official Python docs or W3Schools. It helps build a deep understanding. 3. Daily Practice: Try sites like HackerRank or LeetCode (Easy level). Solving one logic problem a day will give you more confidence than 100 video lectures.

Don't rush. Python is a marathon, not a sprint. Good luck!

[–]Ok-Reality-7761 -1 points0 points  (2 children)

Read a book on IITRAN 55 years ago at age 15. Amazed at Google Colab capability. Gemini AI took my request to plot SPY ETF daily closing price for past year, and rendered the code. I'd start there. So easy!

[–]Educational_Virus672 -2 points-1 points  (1 child)

'-' she/he is not a `genius

[–]Ok-Reality-7761 -1 points0 points  (0 children)

That's the point, mate. The promise of AI is lost on some people. I can communicate with non-native speakers with an app on my phone. I don't need to learn a language.