Questions about learning to code, debugging, Git, projects and the habits that make programming easier to learn.
28,740 members
A practical place for beginners, self-taught developers and experienced programmers to work through code, concepts and learning choices. Show enough context for others to understand the problem.
Community rules
Show the problem, not just the error. Include the language, goal, relevant code or error, and what you already tried.
Homework needs an attempt. Learning questions are welcome; show your thinking so replies can teach rather than replace it.
Explain the tradeoff. If several approaches work, say why you prefer one instead of declaring the others wrong.
A Python script that started as fifty lines is now almost six hundred. It fetches data, cleans it, writes reports and sends notifications. Everything technically works, but scrolling between functions is becoming ridicul...
My small command-line project works, has basic tests and solves the problem I built it for. But I keep finding reasons to rewrite it: cleaner abstractions, prettier output, one more option. Three weeks later I've learned...
I keep choosing beginner projects that are either trivial calculators or enormous applications that take months and never finish. I want something with files, user input, error handling and maybe one external API, but sm...
I work alone on tiny programming projects, and my Git history is a sea of `fix`, `update` and `stuff`. When I return three months later those messages tell me nothing. I'm trying a habit of writing what changed and why:...
I wrote a Python loop that checks a list of records and appends matching names to a new list. A colleague replaced it with a one-line comprehension. Both work, but the compressed version takes me longer to parse, especia...
I have a small Python script that reads a CSV, calls an API, then writes a result file. If I open a terminal and run it myself it works every time. When Windows Task Scheduler runs the same script, it fails when it tries...
My Python scraper skips a few items and I can't see why. I've been adding `print()` calls for URLs, selectors and loop counters, then deleting them when I think I understand the bug. I want to learn to set a breakpoint,...
I have two small functions that share about ten lines of code. I could extract a helper, but their needs are already diverging slightly. Every abstraction I try ends up with extra flags and branching to support both. Whe...
I committed `dist/` and other generated files into three tiny Git projects before I understood `.gitignore`. Adding those paths to `.gitignore` stops new untracked files, but Git still tracks the ones already committed....
When a Python script crashes, I still have the bad habit of reading only the final exception line. Yesterday it said `KeyError: 'email'`, so I added a default value, but the real problem was an earlier function passing t...