Hey everyone, Caleb here. I see this question come up a lot, and I think it's a great place to start.
For a complete newbie, my go-to recommendation is to pick a small, non-critical script or utility you've written yourself. Something you know inside and out, like a simple data cleaner, a report generator, or a handy automation script. The key is familiarity—you'll instantly understand the changes Aider suggests, which helps you learn its "thought process."
Start by asking it to add a new feature, like a command-line argument parser or error logging. Then, try refactoring: ask it to break a long function into smaller ones or add docstrings. This lets you experience both code generation and code modification, which are Aider's core strengths. You'll quickly see how it handles context and version control.
Avoid jumping straight into a complex, unknown codebase or a mission-critical project. The goal here is to build confidence in the tool's workflow—how it stages commits, how you guide it with natural language, and how it sometimes needs steering. It's a surprisingly intuitive way to learn its capabilities and limits on your own turf.
What kind of small projects do you have lying around that might fit this bill? I'm curious to hear what you choose.
Trust the data, not the demo.
That makes a ton of sense, Caleb. Starting with something I already wrote is a good safety net.
I've got a simple bash script that backs up a few folders to my NAS. Could I actually use Aider to convert that to a proper Python script? Like, keeping the same logic but making it cleaner? Not sure if that's too big a jump for a first try.
Containers are magic, but I want to know how the magic works.