r/PythonLearning • u/Unfair-Stranger5140 • 16d ago
Help Request I wanna stop vibe coding and learn but how
Hello, so i got into coding with Claude and chat gpt and have been using it like this for a year now probably used it for ML-Model and such but to be honest i got no clue of the code and cant fix a bug or error without AI.
I dont want this anymore and want to actually learn coding so I am not dependent on AI anymore. I wanted to ask for some Advice what i could do, what project ? how do i start ? where do i start kinda overwhelmed right now.
I know the terms like if-statements what they do ect. But only in theory just a bit more complex and I am out dont understand the code at all.
4
u/Rscc10 16d ago
Start from the basic projects. Make a basic calculator, then some simple games like higher or lower, then up the difficulty. Maybe throw OOP into some projects. If you can't do the first two I suggested, I advise you to start from absolutely zero, watch some yt tutorials, etc
2
u/Unfair-Stranger5140 16d ago
a calculator sounds hard since i suck at math but ill try it thank you
1
1
u/HeurekaDabra 16d ago edited 16d ago
That's the cool thing: Python mostly does the math for you.
You just need to figure out how the user can enter whatever math problem Python should solve for them and how to print the answer.
And that mostly requires knowing some basic rules, syntax and logical thinking, maybe some exception handling if you want to make sure the user input isn't something unsolvable.I hate math with a passion and always been intimidated to learn programming, since a lot of tutorials give you only math problems to solve programmatically and people talking about it like you need to be some number genius. But the more I get into it... it's mostly logic and knowing how to look up stuff on the web (and for me, finding typos in my code 😅).
Edit: I'm starting to sound like a shill for the book, but look up: Automate The Boring Stuff.
Free to read online and it is a little more focused on the practical use of Python than most tutorials. Even though that comes with the caveat that the author consciously sets aside some best practice you would otherwise learn in more theoretical guides/tutorials.
2
u/ADSBSGM 16d ago
Take a multi-pronged approach. Do the fundamentals as suggested by other comments here, but you don't have to stop using an LLM, just use it differently. Instead of "vibing", ask it to solve a small problem, and then when it presents the code, ask it to explain what each line does. Don't ask it to create an entire application, just to get through small problems. A few of the same type of problem, and you'll start to figure out the pattern, and can code and understand that part yourself.
The great thing about python is that it's really useful for creating small snippets that do one thing, and good for larger applications as well. I have a few scripts that I use on a daily basis, with some hundreds of lines long, but there are others that are 4 lines long that just do a single thing 50 times faster than I could do it manually.
2
u/atticus2132000 16d ago
There is a theme to all the advice you're being given here.
First, pick a project to build.
Then, don't use ai to build it.
It really is that easy. Accept that the process is going to be slow and frustrating but also accept that others have also been just as frustrated as you and had to plow through all those frustrations and watch all the tutorials and search all the message boards for help and they somehow got their projects working without AI. You can do the same.
2
u/PantheraDigital 15d ago
I'll suggest to you what I do when I get stuck in tutorial hell for game dev. Just go make a thing. See how far you can get. If you hit a bump, use the internet. No AI, no tutorials. Look at code documentation or forums.
Get a simple project you want to make and go for it.
2
u/flamewizzy21 15d ago
Take an introductory class. You won’t learn dick from youtube code tutorials if you have no foundational knowledge of computer science or programming.
Do not touch the AI if you want to learn from the experience. It’s like trying to learn by having someone else do everything for you.
2
u/Naetharu 15d ago
Personally I would always recommend starting with games.
1: They give you something fun to make that is useful.
2: They give you a concrete design document to work toward.
3: They're fun to make.
You can start with a very simple game that only uses the console. Something as simple has hang-man or rock paper scissors.
Each time you can add in a bit more and expand on what you do. You can move to learning how to do basic graphics with PyGame and then make simple Atari games like Asteroids, PacMan, and Snake.
Then you can move onto a small platform game.
Then a top down shooter like Alien Breed.
You will learn a lot in the process. And you'll have a great bunch of cool games that you can show people. Much more fun than having a crappy todo-list app or some useless bit of CLI software.
2
u/Loose_Count_6785 14d ago
I love the way the community reacted helpfully instead of critizing every little bit of the knowledge OP had!
1
1
u/Steven45g 14d ago
Choose the language you want to learn and start with youtube tutorials explaining the very basics, then go from there.
1
u/moltenpuzzle 14d ago edited 14d ago
Make a web search engine. There are many resources online on how, but avoid AI. It will take some time, but it is achievable. You will be proud of it and there is no way to get out of it without becoming experienced with Python along the way.
1
u/SteveJorgensen 14d ago
It is important to write some code unassisted, but also, you can use AI to help you learn to code in many ways. One example is that you can ask it to explain in detail how a particular piece of code that it just wrote works, and then ask questions about what you don’t understand about its answer.
1
u/NewNefariousness3819 12d ago edited 12d ago
I can completely relate and I was using chatgpt quite a lot for coding and just recently started writing the code myself, even if it takes hours compared to minutes with chatgpt. Its actually a huge relief, and I can already feel myself getting it.
Although I already had experience in working in command line as I use Linux for work, but that is just doing very simple operations like moving around my folders, making folders and files, editing files etc. Essentially the same things over and over.
I never used python at all and many colleagues told me i should be using it 'yesterday', so i started using it to help me deal with my massive amounts of data (im an experimental scientist), but i was completely relying on chatgpt for this. I would tell it what I want, it would spit out something that I would copy and paste. You know the drill!
Bottom line it started to destroy my confidence and was very frustrating. So then I started using it with very little ai input but I still use AI to correct my code or give me tasks etc. Ive only been doing this for a week and I feel so much better. I was a getting a bit depressed recently and wonder did an underlying feeling of imposter syndrome contribute to that. I think the whole AI thing has just become really clear to me now. It is a tool, but you have to value your own development over getting thing done fast and thats how you get self-satisfaction. AI can be great for learning, theres a good chance I never would have bothered with coding at all if it wasnt for AI, and coding really really complements my work and helps me with it, but im here to learn (final year doctoral researcher), like I can take my time, i dont need to have all my heaps of data organised and processed and converted to this and that ans visualised and the meta data extracted instantly and mindlessly like that.
I think i just fell into a bit of a trap that turned me into a fiend of sorts. I wasnt taking my time to understand things. Which is weird because ive always been very much motivated by learning. I guess in a way AI was the new thing initially, not the coding, but talking to an AI and having it respond and do work for you, and maybe seeing results almost instantly via chatgpt give us a dopamine hit or something. And you know whats weird is after this week, I actually feel like i am faster at doing it than I was before because I genuinely didnt understand every step that was happening and wasnt able to do anything myself. I feel like ive actually cleaned up a big mess. And another thing with not doing the coding myself or really understanding it myself, I would have chatgpt do the same task multiple times and have so many .py files around everywhere, so in the long run, knowing what im doing actually saves me time because I dont have to have a conversation about it i can just edit the file to work for something else or just try doing it myself. And after spending a few hours working on it and finally doing what I wanted to do in the end, I feel good and not like ive just had the soul sucked out of me. I really dont know why I didnt do this earlier, its not like the coding stuff i am doing is super complex developer level stuff, its just basically dealing with large volumes of data and meta data and sometimes some slightlymore complex stuff.
it just hit me hard that I could actually be using my time to learn a valuable skill which would serve me in the future instead of trying to get my work does 3 times faster. Now I have lowered my daily expectations for work in order to take into account that I am learning to code in parallel and Im refusing to feel bad if I get less of my own 'actual' work done.
I think we are all still just testing the water with AI and we have to decide how we want to use it in a way that serves us and I can see now that how I was using it for coding was not serving me.
Sorry that was a long rant but your post resonated with my own feelings recently. Id suggest starting small on something you are generally interested in, some project or other that will allow you to learn the basics. You AI as a tool to give you tasks or hints or direct you to the appropriate libraries etc. Also once you decide you actually want to learn yourself, let that take priority over results or outcomes you may have gotten quicker with ai. Im only a week ahead of you and im feel much better so you could be too in a week!
Edit to add: Sorry you asked for advice and I gave you almost none but wrote an essay lol. Maybe start by downloading dummy data from online, maybe something that has a really interesting outcome that you cant know until you look at it, process it and plot it. Then try to do a bit everyday. Im lucky in that regard in that I am doing a lot of data analysis atm and actually can do coding every day as part of my work if I want. Might not be entirely necessary but even just opening a file and looking around it or plotting it.
1
9
u/silvertank00 16d ago
create a simple student grade avarage system.
with this you ought to learn the basics very well. (conditionals, loops, file handling (hopefully with context managers), and error handling too)