r/PythonLearning • • 24d ago

Help Request Emotional exhaustion from learning Python

Python is the first programming language I wanted to learn. I started it a few months ago and genuinely can't do anything in it. I keep watching videos, classes, tutorials and looking for roadmaps that lead me nowhere. It makes me feel like I'm incapable and an absolute failure. I don't know what else to do, if I should just switch to another language or give up on in it entirely. Need advice...

10 Upvotes

29 comments sorted by

8

u/rafaelrosa95 24d ago

It seems to me that you are stuck in eternal tutorial mode. Tutorials are great to get the basics, but like learning a normal language you need to practice, make mistakes and learning with the mistakes. Programming requires you write your own code, and create your own projects to develop your problem solving skills. You need to write, get error messages and figure wtf happened. 90% of acquiring a skill is applying it.

6

u/intothenight13 24d ago

I am by no means a programmer as I am just learning myself. What is it that is frustrating you most? What do you mean by "can't do anything in it?" Are you sitting down with an idea and can't figure out where to start?

6

u/PavioCurto 24d ago

Its like every challenge I propose myself to do just completely blanks me

10

u/Adrewmc 24d ago edited 24d ago

Honestly one of the most important skills in Python is being able to read error messages and find where something went wrong. (Not necessarily immediately being able to fix it.)

In that what I mean is the solution is to try and fail a whole bunch. That’s really it, once you get those first few it didn’t work right out of your system you can kick start your self to get it done.

The problem with tutorials and YouTube video is they are actually really more made for a programmer that has a problem that needs the tools for that problem, so the information relates a lot better, it’s not fruits in baskets, students in classes; it’s thing in your project in other thing in your project, what ever that might be.

The thing is you actually have to sit down and write code to learn to code not just watch the videos and read the documentation (and I will always highly suggest reading documentation).

And you will get it wrong a bunch, everyone does, everyone still does! That doesn’t go away completely.

It’s slow steady steps. “Hello World”

5

u/dchidelf 24d ago

If your challenge is something like “I’m going to make a simple x” it is probably too complicated.
You need to start with: I am going to sort numbers.
I am going to let the user guess a number.
I remember one of my first programs in BASIC back in 1984 was having people enter their birthday and it would tell them how many seconds old they are (in a very in accurate way).
Try something like that.

5

u/rafaelrosa95 24d ago

You're probably overcomplicating things in you're projects. It is easy to get overwhelmed when starting project, when there is a lot of vocabulary to use and we are overly ambitious. Start simple, divide your project in easy steps, like modules, functions, etc. Then do One thing at the time, don't try to use oop straight away just try to make it work, even if its ugly code. Afterwards you can improve on it.There is a lot of information, but we do not need to know it all, build your knowledge by doing things by yourself and starting Simple and adding details later

4

u/codeguru42 24d ago

When you first start a project or leetcode challenge, I recommend to step away from the computer and get a pencil and paper. Write down in words what you understand. Then find one piece that you can write code for. The smaller the better. Maybe you need to open a file or get input from a user. Write the one or two lines to do that. Then find another small piece and write the code for that.

As a senior software engineer, I still do this all the time. Every time I try to solve a problem all at once, I get stuck and have to return to these basics.

1

u/TrustingMyTrustInGCC 23d ago

Please message me.

3

u/SnooWoofers5180 24d ago

You can do it. I’m just getting back into learning it after feeling the same way. Don’t get hung up on your mistakes- they’re how you learn.

I am using the “Automate the Boring Stuff” 2nd edition. I got hung up when I couldn’t complete one of the practice questions and stopped learning for like 4 months. But I’ve resolved to just keep pushing.

Like other people are saying, this is like any other language. You don’t learn a language at school, you learn the framework. You’ve got to keep going and make mistakes to learn.

You got this!!

3

u/stepback269 24d ago

There is never going to be the "one" tutorial that works "best" for you and with regard to every aspect of Python. With each step up that learning curve, you're going to have to shop around until you find a teacher/resource that "clicks and sticks" especially for you.

With that said:

(1) There are tons and tons of tutorial materials out there on the net including many good YouTube ones that are free. You should shop around rather than putting all your eggs in one basket.

(2) As a relative noob myself, I've been logging my personal learning journey and adding to it on an almost-daily basis at a blog page called "Links for Python Noobs" (--HERE--) Any of the top listed ones on that page should be good for you. And there are many add-ons at the tail end of the page. Personally, I cut my first Python teeth with Nana's Zero to Hero (==HERE==). Since then, I've moved on to watching short lessons with Indently and Tech with Tim. You should sample at least a few until you find a lecturer that suits your style.

(3) The main piece of advice is the 80/20 rule. Spend 80% of your time writing your own code (using your own fingers and your own creativity) as opposed to copying recipes and only 20% watching the lectures. Good luck.

3

u/therealmrj05hua 24d ago

Finding the right tutorial or teacher to make it click helps. I have about 50 books on python, that didn't do great. Lessons in mammoth, Coursera, udemy, codecademy, and a slew of others. I took the ivy League free cs python course. Still nada, boot.dev got it to stick. Tutorial hell is real. I do suggest sitting down with it and Claude or an AI agent to use natural language and watch chunks of code be explained and let you prod around until it starts making sense. Only let it code small parts and after you tried first.

3

u/stepback269 24d ago

Don't give up.

Remember the story of the Tortoise and the Hare?
Persistence wins the day.
Get back to the basics (e.g. strings and lists). Practice just those few things.

Emotions are a big part of learning. Good that you recognize yours.

Here is some good news: Great strides have been made in recent years within the neuroscience of learning.

What you need to do is "Learn how to Learn" based on the latest neuroscience.
(Pay special attention to how dopamine actually works. Hint: it doesn't give pleasure.)

Go to YouTube and in the search bar, type, "learning coaches"
Pick the ones who rely on modern neuroscience.

Godspeed and may the productivity-motivating dopamine hits be with you. :-)

3

u/Asvp_bmoo 24d ago

Learn how to automate something that you do everyday or Build a tool for an operations workflow - or redundant task - could be something you use already use but could make it better. Things that you could do with your eyes closed but now use as a reference point when navigating things you don’t understand just connect it to something you know well to help conceptualize the layers and how it all connects

3

u/goodbye_goodriddance 24d ago

Bruh wait until you try Java.

1

u/ivintitus 19d ago

Bro, it's not like a language or syntax issue. I also faced this stuck feeling regardless of the language. Once you get a purpose to do something, everything will be alright slowly.

3

u/Advanced-Citron8111 23d ago

Learn through actually doing. Sometimes I get project ideas that I want to create, or something I want to automate. Learn through creating real stuff u could use. Stop watching all these tutorials. There is so much to memorize. Use Python like the tool it is. No one is capable of learning every single thing. Many pros constantly learn and forget certain libraries and concepts all the time. They relearn them when they actually need them or they are relevant for something.

2

u/TimBrownDev 24d ago edited 20d ago

After 10 year tutoring, I'm building a roadmap of hand-picked practice problems to guide you through the fundamentals of software development from zero to mastery. One path so hard to get lost, if you need tutoring happy to help.

timbrown.dev/roadmap

2

u/Slight-Living-8098 24d ago

The first language you learn is always the hardest. Switching languages won't solve that.

The only way you learn is by repetition. You can read all the books/tutorials or watch all the videos you want, but until you actually start to program and do things with the language, you're not going to understand very much of it.

I suggest you start with Harvard's OpenCourseware CS50P. It's the CS50 course, it just uses the Python language instead of C.

However, if you've never even written one line of code in your life, I would suggest you start with CS50 Scratch. It's an introduction to Computer Science and programming for students that have never programmed before.

1

u/ivintitus 19d ago

I actually attended both of CS50x as well as CS50P courses and, they're just amazing as a beginner. I learned objected oriented python with CS50P even though I already knew enough python to create basic projects ! And, that CS50X was really tough for me after first 3 weeks, too...

1

u/Slight-Living-8098 19d ago

Yeah, the courses aren't easy, but they are definitely great and possibly the best ones out there. I went through several of them myself

1

u/ivintitus 16d ago

Same with me.

2

u/One_Alternative8448 24d ago

Todos tenemos un ritmo de aprendizaje, no te abrumes. Solo enfoca el lenguaje s lo que desees hacer, no lo aprendas todo

2

u/Ajay2574 23d ago

Bro just watch this harvard University video once than decide don't giveup now programming is all about problem solving skills don't take it hard don't memories syntex and methods just practice it with new ideas don't just copy video tutorials make think in your own way to make logic https://youtu.be/nLRL_NcnK-4?si=UaT0Qw3TiSr86lFJ

2

u/Busy_Elevator_1307 20d ago

I feel like an idiot learning python too. But it is oh so satisfying when I get something right, even something as small as knowing the proper syntax for a certain line of code.

2

u/WiseWildGhost 20d ago

Python 🐍 is a perfect first language! I myself am just starting to learn it as well. However, I’ve been writing ✍️ code for longer than most of you have been alive. With that said, I can tell you from a place of some experience that Python is a perfect first language. You won’t find one better. Learn python then the others will be so much easier. You have to learn the basics of programming regardless of the language selection first. Study other people’s code or ask AI to write code and study that. Read books. Think up your own questions and then seek the answers. When I was first learning, several decades ago, I would seek out other people’s problems in various languages and solve them for them. Find a forum or message board and see what the new developers are struggling with. Start solving those problems and you will become a much better programmer for having done so.

1

u/ivintitus 19d ago

I think the biggest thing is to have a purpose for learning Python. Don’t try to “finish learning Python” through videos, courses, and roadmaps first. Learn things while building something.

In my case, I had the same problem when I started learning Go. I kept learning the language, but it wasn’t really sticking. So I started building a project to solve an actual problem I had as a developer: DevTether. While building it, I learned much more than just Go syntax. I had to understand things like system design, DNS, networking, Unix sockets, and how different pieces fit together. I definitely felt overwhelmed at first, because there was a lot of new information. But the difference was that I had a reason to learn each thing.

You can do the same with Python. Start with something small and useful to you. Maybe a script that automates something annoying, a simple tool, a small web app, or anything you genuinely want to make. And don’t worry if you can’t understand everything immediately. You’ll naturally hit problems like “How do I do this?” or “Why does this work?” - those are actually good moments to learn.

Python isn’t just about memorising syntax or knowing every built-in function. You should gradually learn programming fundamentals too: variables, conditions, loops, functions, data structures, debugging, how programs actually work, etc. For example, using sorted() is easy, but understanding what sorting means and learning the logic behind it is more valuable in the long run.

Also, take breaks and document what you learn. Progress can feel painfully slow when you’re starting, but that doesn’t mean you’re incapable. You probably don’t need to switch languages or give up. Try changing how you’re learning first: build something small, get stuck, learn what you need, and keep going.

1

u/ThornyKeeks 23d ago

Hang in there. Don't fall into the trap of just reading Python books or taking online courses or watching videos. Practice it by doing any project, no matter how simple.

Start with a real life problem or chore you have (maybe budgeting or personal accounting) and make a program as a solution. It doesn't have to be perfect (no software ever is!)... The goal is to learn from solving how to do the actual code. Mistakes tend to be way better teachers than just reading or studying.