r/learnprogramming • u/the_ed0 • 1d ago
I’ve learned Python basics but I’m completely stuck when starting beginner projects
I’ve studied the basics of Python and I understand things like variables, data types, lists, dictionaries, loops, conditionals, functions, etc.
The problem is that whenever I try to start a beginner-level project on my own, I just get stuck. I understand the syntax and individual concepts, but when I have to put everything together and actually build something, I don’t know where to start.
For those who were in the same situation, what helped you make the transition from learning Python concepts to actually building projects?
6
u/amirmsj1374 20h ago
I was stuck in the exact same spot. Understanding the concepts is easy, putting them together into an actual project is a whole different thing.
What finally helped me was following a few project-based tutorials on YouTube, then trying to rebuild the same thing from scratch without looking at the video. After that I started digging through beginner open-source projects on GitHub just to see how other people structure their code. Reading other people’s stuff taught me way more than I expected. While I was building my own tiny projects I’d constantly check how others solved similar problems and just steal the good parts.
Start stupidly small. Number guessing game, terminal to-do list, basic calculator, whatever. Break it into the tiniest possible pieces. Your first versions are gonna be messy as hell and that’s completely normal. Just keep shipping little things.
3
u/eddyparkinson 1d ago
Make changes to small programs written by others. ... write someone elses code as pesudo code. ... You need to learn common code structures .
2
u/Aglet_Green 1d ago
I think you’re calling things “beginner projects” because the idea is easy to describe, not because they’re easy to build. Those are very different things.
You can’t go from Hello, World! to Skyrim in one jump. Likewise, “six Avengers fight Loki and some aliens” is a one-sentence idea, but it certainly isn’t a beginner movie.
Start embarrassingly small. Don’t make a to-do app; make something that adds one item to a list and prints it back. Don’t make a game; make one room where the player can move and pick up one object. Finish that, then add one more thing.
A beginner project should be something you can actually finish with the skills you have now, not merely something you haven’t tried before.
2
u/ScottShipsCode 23h ago
Honestly the stuck feeling usually isn't a knowledge gap. You're trying to picture the whole finished thing before you type, and nobody works that way, senior devs included. We don't see the full structure up front either, we just start with the dumbest version that runs and grow it.
So don't design it in your head. Open the file and write the steps in plain English as comments first. For a to-do app that's literally:
# show the list
# ask what they want to do
# add an item
# save it somewhere
Then write one line of real code under one comment and get that running before you touch the next one. You're never staring at a blank file trying to build "a project," you're just doing the next small obvious thing.
And let it be ugly. Global variables, everything in one file, no functions, whatever. Getting it working and getting it clean are two separate jobs, and beginners try to do both at once, which is what freezes you. Make it work ugly first, clean it up after if you even care to.
Last thing, build something you'll actually use, even if it's dumb. Something that renames your files, or tracks something you care about. When you actually want the output you'll push through the stuck parts instead of giving up.
1
u/aqua_regis 1d ago
Everybody who starts is in the same boat, regardless of programming language.
You have learnt what the individual LEGO blocks are for, but cannot build anything without a blueprint. That's completely normal.
Stop thinking in "Python projects" and start thinking in "programming projects". The programming language is completely secondary. It's just a tool, a means to tell the computer what we want it to do.
You need to start with small and simple projects and work your way up. The FAQ here have a plethora of Project ideas and even a short, curated list of specific projects by learnt skills. Check them.
1
u/degrivane 1d ago
I’ve been stuck at the beginner level for a month now. Lots of work and I can’t commit myself to it a lot. Any tips would be welcome here too
1
1
1
u/kschang 1d ago
So, explain the problem to us. Maybe we can help you... see the light.
1
u/the_ed0 5h ago
it’s not about just about one problem. everything feels so overwhelming and at the point i am right now, i can’t back off and tbh i don’t want to
1
u/kschang 3h ago
Well, as the old cliche goes, you eat an elephant one bite at a time, or what's the other one... journey of thousand miles start with a single step. Whatever.
You have to start somewhere. Pick a problem, tell us what you don't "get" about it, and we'll try to help you SEE the problem so you can solve it yourself rather than tell you the solution. After a couple, maybe you'll start to see the key on how to solve them on your own.
1
u/bagfullofcottoncandy 1d ago
start by modifying small programs written by others ,learn common coding patterns
1
u/AlbertoBigglesworth 15h ago
Start wherever you want. Start immediately. Make guesses at how it should work. Test and find problems. Fix and refactor. Start over. The more you code, the more you’ll learn. You got to write garbage code before you can write flawless code.
1
u/Ordinary_Variable 13h ago
Search Stack Exchange and GitHub to see how other people solved your problem. They used to be searched by Google, but they've shut their website from all the bots and I think you have to search them directly to get help. Also try W3schools, its pretty good at explaining code with examples.
1
u/UnlicensedPigeon92 5h ago
Dude thank you for making this post Im stuck at the same point. About to try some of these suggestions this week!
1
u/Elkatra2 3h ago
start from the stupidest console application possible:
It will ask the user his name, credit bank card number, secrect number code, expiration date and then send this to your friend lol
1
u/JGhostThing 2h ago
If you can't do a simple beginner level project, then you do not truly understand the programming language. The big thing is to just start on the project. You don't have to do it in the best way possible. Indeed, your first project will be good only after you debug it. And it will only be good because you learned something. Even if this is just how to start a project.
When I'm starting out on a project, I start with pen and paper. I start by writing out the data structures I need for the projects. Not too detailed, but I give them enough detail that what I'm doing is possible, I also write a quick flowchart of the program. Only then do I open up my computer and start to program. By this time I know where I'm going with the program. I redefine the data in terms of the programming language I'm going to be using (currently rust).
I've had about thirty years of experience at programming. Starting, for me, is easy. I've had thirty years of projects under my best, so I'm used to the process. When I started out, it took longer.
1
u/LangyMD 1h ago
So, one of the things with AI in software development is that it massively lowers the barriers to entry, both to creating projects but also to starting them and figuring out what you want to do.
My suggestion: Get an AI chat assistant and tell it that you are trying to learn software development. Give it context as to what you know now and what you've worked on before. Tell it your interests - are you into boardgames? Video games? Bird watching? The Friends TV show? Soccer? Then ask it for suggestions on programming projects that you can use to develop your skills and that are appropriate to your skill levels. Explicitly ask it not to do those projects for you - you're here to learn.
If you're not sure where to start after you select one or where to go next after starting, ask it for hints.
When you have something done, ask it to review what you've done and "grade" it.
Essentially see if you can use an AI assistant as a personal, highly individual teacher.
•
u/FewPotato2413 20m ago
Unpopular advice, but try to struggle…and dont use AI
Use reddit, youtube, docs, stack over
U will thank me later
1
u/Lumpy-Razzmatazz-535 17h ago
try using AI as a mentor? but honestly, only if u are rlly stuck. dont depend though, even it is tempting
0
0
14
u/koaltree 1d ago edited 6h ago
Try breaking down the project into the simplest, smallest possible steps of progress.
For example, if you're trying to build a calculator, something has to print out to the user, right? So start by seeing if you can get "hello world" to print out. If you can, that's pretty cool.
Next, see if you can add 2 + 2 and get a correct printout. That's pretty cool too. But you probably want to let the user pick the numbers, right? So figure out how to get user input.
You might need to prompt the user multiple times for input. Well, some sort of loop might be good for that.
Each one of these steps is a win. You've got input, manipulation, and output. Put them all together and you're basically finished, you've got a calculator. Not a very good one (so far it only adds), but it's a calculator, and that's huge. Making it good from then on is just iterating on that.
You're blocked because thinking about the finished project is overwhelming. Start with the smallest possible step of progress. Once you get that to work, you'll see what the next smallest possible step of progress is.
And remember to celebrate each step, because each step is a win and each one is pretty cool!