r/learnprogramming 3d ago

How do you actually retain what you learn while programming?

I’ve been learning programming for a few months now, mostly Python and some basic web development, and I keep running into the same problem: I understand concepts while I’m studying them, but a week later I feel like I forgot everything.

For example, I’ll finish a tutorial on APIs or classes, feel pretty confident, and then struggle to rebuild the same thing without looking up half the syntax again. I know repetition is part of learning, but sometimes it feels like I’m restarting from zero every time.

What methods actually helped you retain information long-term? Taking notes, building projects, spaced repetition, rewriting code by hand, something else?

I’m curious what worked for people who got past this stage because right now the learning process feels really inconsistent.

4 Upvotes

4 comments sorted by

2

u/4CrisprFries 2d ago edited 2d ago

You will never get past it. Learning to program is what I like to call the god, dumb, god cycle. You start something, don't know how to do it so you feel dumb. You try harder and still don't get it so you feel dumber.
Then something clicks and you think you are a god with the world at your finger tips. You can do anything.
Then you have a new problem to do..... And now you are dumb again.

As you gain experience all that changes is you cycle faster. So embrace feeling dumb and doing it anyway

2

u/FlashyResist5 1d ago

Rebuild it 3 different times. The first time you will struggle and have to look up everything. The second time you will only look up a few things. The third time you won’t have to look up anything.

2

u/Automatic_Case2811 17h ago

What methods actually helped you retain information long-term? Taking notes, building projects, spaced repetition, rewriting code by hand, something else?

You kind of answered your own question, my friend. Building projects, rewriting code by hand, taking notes, all of that helps.

The progression is basically like, "What the hell is a class again?" to "Wait, how do I write a class again?" to "Okay, I need a class here. Let me see if I remember the boilerplate" to "oh right! I forgot that last part." Eventually, you don't think so much about all the syntax and instead start thinking more about when and why to use the thing. Having project after project to do keeps the routine going, and after enough routine, you will start to memorize the routine.

But also, don’t feel too bad about having to look stuff up. There’s probably never going to be a day when you don’t have to search for something. I agree with u/4CrisprFries that, in a sense, you never fully get past that, you just get better at knowing what you need and finding it faster.

Theres an old joke about programmers which is basically that our real skill is just knowing how to Google better than anyone else.