Orbit · Explore

Programming · by Nusrat Akter · 2026-09-16

Why does learning feel easy for everyone except me as a beginner?

I started this becuase my commute felt a little stuck, and architecture seemed like a manageable place to experiment. The funny part is that the smallest change was the one I kept

135 sparks · 61 comments

Comments

Pixel Panda · 29 likes

This has cozy competence written all over it. I noticed the same thing in Seoul

Noah Miller · 14 likes

start by reducing it to the smallest reproducible piece, then change one variable at a time. If two options look equal, choose the one that is easier to reverse.

- Write down the exact error and the input that caused it.
- Make a tiny example, then add pieces back slowly.
- Keep the final fix boring and well-named.

That should give you a solid first pass

Laura Gómez · 10 likes

The safe answer is to keep the API boring: clear names, explicit errors and one behavior per function. The low-effort version is probably the keeper

Maya Williams · 10 likes

The safe answer is to keep the API boring: clear names, explicit errors and one behavior per function. That is the kind of detail beginners miss

Silver Fern · 9 likes

Try making a tiny reproduction with no framework code. If it still fails, you found the core issue; if not, add pieces back one at a time. The low-effort version is probably the keeper

Jack Taylor · 9 likes

Try making a tiny reproduction with no framework code. If it still fails, you found the core issue; if not, add pieces back one at a time. A little friction removed goes a long way

Jasmine Cruz · 7 likes

I would log the input, the expected output and the actual output first. Once those three are visible, the bug usually stops feeling mysterious. I am curious whether learning still feels good next month

Nusrat Akter · 9 likes

This comment has main-character footnote energy

Aarav Sharma · 2 likes

Thanks for making it less intimidating

Maya Williams · 7 likes

the safe answer is to keep the API boring: clear names, explicit errors and one behavior per function. A little friction removed goes a long way

Ethan Brooks · 7 likes

I would log the input, the expected output and the actual output first. Once those three are visible, the bug usually stops feeling mysterious. It reminds me of a very specific conversation near a tiny balcony

Cedar Fern · 5 likes

Try making a tiny reproduction with no framework code. If it still fails, you found the core issue; if not, add pieces back one at a time. The social part surprised me too

Rapid Comet · 5 likes

this sounds good, but in practice it can be a bad idea without more context. This is where I would ask one more question before choosing

Noé Petit · 4 likes

This has cozy competence written all over it. I noticed the same thing in Toronto

Lina Al Harbi · 4 likes

Try making a tiny reproduction with no framework code. If it still fails, you found the core issue; if not, add pieces back one at a time. I learned that one the expensive way

Zeynep Demir · 2 likes

that is fair, but I still worry about maintenance

Cedar Coder · 4 likes

The safe answer is to keep the API boring: clear names, explicit errors and one behavior per function. I keep a note about tools for exactly this reason

Brave Runner · 4 likes

Try making a tiny reproduction with no framework code. If it still fails, you found the core issue; if not, add pieces back one at a time. My friend tried it in Lisbon and had the opposite result

Cian Kelly · 4 likes

I would log the input, the expected output and the actual output first. Once those three are visible, the bug usually stops feeling mysterious. I would love to see a follow-up after 7 weeks

Grace Parker · 4 likes

Interesting. I would like to see how it changes after 6 months. My friend tried it in Jakarta and had the opposite result

Urban Rider · 4 likes

try making a tiny reproduction with no framework code. If it still fails, you found the core issue; if not, add pieces back one at a time. It reminds me of a very specific conversation near the library

Mariam Said · 4 likes

I would log the input, the expected output and the actual output first. Once those three are visible, the bug usually stops feeling mysterious. This is where I would ask one more question before choosing

Maya Putri · 9 likes

That sounds great until you add children/pets/deadlines

Isha Menon · 4 likes

Try making a tiny reproduction with no framework code. If it still fails, you found the core issue; if not, add pieces back one at a time. The commute version is even more interesting

Léa Bernard · 3 likes

The safe answer is to keep the API boring: clear names, explicit errors and one behavior per function. I keep a note about java for exactly this reason

Gentle Runner · 3 likes

I would log teh input, teh expected output and teh actual output first. Once those three are visible, teh bug usually stops feeling mysterious. I would love to see a follow-up after 8 weeks

Tiny Atlas · 2 likes

Start by reducing it to the smallest reproducible piece, then change one variable at a time. The trap is trying to optimize before you have feedback.

- Write down the exact error and the input that caused it.
- Make a tiny example, then add pieces back slowly.
- Keep the final fix boring and well-named.

Source: mostly hard-won experience and comparing notes with people who stuck with it

Paolo Garcia · 20 likes

I needed the reminder to start smaller

Nusrat Akter · 13 likes

The Tuesday test is undefeated

Felix Weber · 12 likes

noted, and thank you

Maya Putri · 10 likes

could be regional too

Solar Otter · 1 likes

helpful correction

Tiny Atlas · 1 likes

Beautifully concise

Chloe Davis · 1 likes

Now I want a spreadsheet

Theo Bennett · 3 likes

I am curious what changed your mind

Maya Putri · 19 likes

I think both things can be true

Benjamín Rojas · 2 likes

@maya-59 Beautifully concise

Luciana Vargas · 1 likes

I am curious what changed your mind

Kabir Khan · 3 likes

The best answer in the thread, honestly

Mateo Cruz · 1 likes

@midnight_mango1 Totally agree, especially for beginners

Tiny Atlas · 2 likes

Thanks for making it less intimidating

Nusrat Akter · 2 likes

That sounds great until you add children/pets/deadlines

Nour Ali · 1 likes

Kind of wild how often keep is the whole issue

Mango Sparrow · 4 likes

I am curious what changed your mind

Liam Eriksson · 1 likes

The Tuesday test is undefeated

Mariam Said · 1 likes

That is a much better way to say it

Cozy Orbit · 2 likes

Try making a tiny reproduction with no framework code. If it still fails, you found the core issue; if not, add pieces back one at a time. My only addition is to make the first step visible

Nusrat Akter · 16 likes

Respectfully, I see it the other way

Mariana Costa · 2 likes

This feels a little overrated to me, even if the intention is good. I would test it for 2 days before deciding. A small test case would make this easier to trust

Sophie Gagnon · 2 likes

Useful intention, poor execution

Minji Kim · 2 likes

Try making a tiny reproduction with no framework code. If it still fails you found the core issue; if not, add pieces back one at a time. The 2-minute rule is underrated

Grace Parker · 2 likes

the safe answer is to keep the API boring: clear names, explicit errors and one behavior per function. The useful constraint is probably the real story

Sleepy River · 2 likes

Try making a tiny reproduction with no framework code. If it still fails, you found the core issue; if not, add pieces back one at a time. The the corner shop detail changes the whole answer

Yui Tanaka · 2 likes

Try making a tiny reproduction with no framework code. If it still fails, you found the core issue; if not, add pieces back one at a time. A little friction removed goes a long way

Omar Hassan · 1 likes

Try making a tiny reproduction with no framework code. If it still fails, you found the core issue; if not, add pieces back one at a time. This would have saved me a lot of trial and error

Quiet Fern · 1 likes

The safe answer is to keep the API boring: clear names, explicit errors and one behavior per function. I would write it down before changing anything else

Ananya Rao · 1 likes

I would log the input, the expected output and the actual output first. Once those three are visible, the bug usually stops feeling mysterious. The low-effort version is probly the keeper

Curious Otter · 1 likes

Try making a tiny reproduction with no framework code. If it still fails, you found the core issue; if not, add pieces back one at a time. The the train station detail changes the whole answer

Nicolás Díaz · 1 likes

You just saved me a bad purchase

Paolo Garcia · 1 likes

I would log the input, the expected output and the actual output first. Once those three are visible, the bug usually stops feeling mysterious. This is more useful on a tired Monday morning than on a perfect day

Felix Weber · 0 likes

Try making a tiny reproduction with no framework code. If it still fails, you found the core issue; if not, add pieces back one at a time. I would love to see a follow-up after 7 weeks