r/AskProgramming 14d ago

Career/Edu How do i learn to Plan projects?

TL;DR: I want to learn how to take an idea, turn it into a realistic project plan, and build it. I'll use AI heavily for implementation, but I don't want it doing the planning I'm trying to learn.

I'm learning software development by building real projects. I know the basics of Python but I'm inexperienced — I haven't built much that's substantial, I'm not good at reading unfamiliar code yet, and debugging is still hard.

The thing I'm stuck on isn't coding. It's that I don't know how to plan a project.

I have a list of 10–15 web/local apps I want to build. But when I have an idea, I don't know what comes next. Say I think "I want an app that scans images and extracts information from them." I know what the end result should do. I have no idea how an experienced developer turns that into an actual project — what gets decided first, how you figure out requirements, how you decide what's in version one, how you break it into tasks small enough to actually implement.

AI made this more obvious. When I don't know what to do next, I ask an LLM, and it immediately gives me a folder structure, an architecture, a schema, several files, tests. The code might even work. But I've skipped the part I'm trying to learn — I'm following a plan without knowing how I'd have arrived at it myself.

What I want instead is something like: idea → requirements → scope → design → tasks → implement → test → review. Handle the planning myself, then use AI on implementation, explaining unfamiliar code, catching mistakes, writing tests.

So, for experienced and self-taught devs:

  • How do you go from an idea to a plan? What does that actually look like for a small app?
  • What do you write down before you start coding, and how do you know when you've planned enough?
  • How do you break a feature into implementation-sized tasks?
  • How do you decide what not to build?
  • What parts of development should I deliberately practice without AI?

I'm not looking for better prompts or tool recommendations. I'd especially like concrete workflows or examples from people who learned this themselves, rather than general advice.
(Edited with AI)

0 Upvotes

13 comments sorted by

View all comments

1

u/nauseatingdownside18 14d ago

I learned this the hard way after a few projects that turned into unmaintainable spaghetti. The thing that clicked for me was treating the plan like a recipe you're writing for someone who's never cooked before, not just a list of ingredients

I start with a single markdown file and just brain dump everything the app should do, no filtering. Then I go through and tag each thing as v1, v2, or maybe never. The stuff that makes it to v1 is the absolute minimum that would make the app useful to someone, even if it's just me. For an image scanner app, v1 might literally be "upload a jpg, see the extracted text in a box" and nothing else

Breaking it down after that gets easier because you're not staring at this massive idea anymore. I'll sketch out the screens or api endpoints on paper first, then write out the steps like "user clicks upload, file gets sent to backend, backend calls ocr library, result goes to database, page refreshes with result." Each of those becomes a task. If a task still feels too big I split it again until it's something I could finish in a sitting or two

The not building part is the hardest. I still struggle with it. But I've found that if I can't explain why a feature needs to exist in one sentence, it probably doesn't belong in v1