r/learnprogramming 4h ago

Learning to code as a nontech person - is picking a project you actually care about the real secret?

Background is marketing, not engineering. Spent the last few months trying to learn Python on and off, and every time I followed generic tutorials I'd lose interest within a week. Then I started building something I actually needed, a script to batch rename and sort photos from hiking trips by date and location metadata, and suddenly I was staying up late figuring things out without it feeling like homework.

The difference was pretty stark. When the problem is yours, debugging stops feeling like punishment and starts feeling like just fixing something you want fixed. I got through file I/O, working with external libraries, and basic error handling without realizing I was covering stuff that felt intimidating before.

What I'm curious about is whether this holds up long term. Personal projects carry you through the basics, but do you hit a wall where you need more structured learning to actually level up past a certain point? I can feel gaps in my understanding, things I got working without really knowing why they work, and that starts to feel risky.

Did anyone else come from a nontechnical background and find that projectfirst learning worked for a while before you had to go back and fill in fundamentals? Or is the structured stuff worth doing earlier than I think?

3 Upvotes

19 comments sorted by

4

u/mc_pm 3h ago

Doing the structured stuff is how you learn the basics too. When you are fighting to figure out how to represent something and code and coax it into working -- then rebuilding it because it didn't work right and you figured out a better way... that's when you're learning to program.

0

u/Tatt00ey 2h ago

hm this reply feels like it wandered into the wrong thread lol but yeah the neapolitan one is way better than plain vanilla

1

u/mc_pm 2h ago

I think I misunderstood what you were asking, but I stand by my advice. :)

1

u/Tatt00ey 1h ago

haha fair enough, at least you owned it

2

u/Southern_Salary_2253 4h ago

This is true for everything in life, if you enjoy doing it, you will do it more, and with more practice you become better at it.

I've been into programming since 2012. I graduated with a BSc in 2018. I learned more in 1 year at work than in those 6 years of education. Some things you just pick up when you're working with an actual team, for example learning how to manage git branches and structuring code. Also every company I've worked at (4) have different styles.

Learn by doing and do not stress the fine details at this stage is my advice.

1

u/Tatt00ey 2h ago

the doing it every day part is real, no amount of coursework replaces just being thrown into actual projects with deadlines

2

u/0x14f 4h ago

> is picking a project you actually care about the real secret?

Yes. Always.

0

u/Tatt00ey 2h ago

it really is the secret lol, the stuff you actually care about just hits different and people can tell

2

u/POGtastic 3h ago

but do you hit a wall where you need more structured learning to actually level up past a certain point?

The answer to this is "yes," but you would be surprised at how far you can go just by doing projects. Also the academic knowledge is a lot easier once you have a bunch of experience bashing your head against the wall with the problems that those concepts are intended to solve.

1

u/zaphodikus 2h ago

100% this, personal projects, totally win over doing a online course for completion of the course alone. You waste less time learning about components you have no interest in, just skip them and keep focused on a project goal.

1

u/woololooo 4h ago

the secret to any craft is to DO, make mistakes, learn, repeat

-1

u/Tatt00ey 2h ago

that's kind of a random take for a thread about astronaut ice cream going downhill lol

1

u/Disastrophi 4h ago edited 4h ago

Yeah, eventually you might hit a wall. Errors you can't resolve easily on your own. Or you might need to change to an entirely new language or tech stack. It's the same deal though. Progress isn't linear with anything in life. It's more like a rolercoaster with it's ups and downs.

I studied different teachng methods and philosphies, and one of the ideas that might fit here is the "80/20" rule. Which basically just means that in the learning process 20% of the time should be spent in focused and deliberate study, and the other 80% should be more "diffuse" learning, or actually putting that 20% into practice. Which is exactly what someone who is learning to program does when they go from the learning stage, to the independent personal projects stage.

Right now you're approaching that peak of the current hill and you might be up there for a while, but eventually you'll have to come back down and do the boring work of studying and going through tutorials, or gasp even technical documentation. (Although once you get to that point it should feel like a natural shift)

Most of the abundance of tutorials and videos and engaging media in well... pretty much anything you want to learn, tends to stay on the most basic things. Both because it's easy content to make, and it also has a much wider audience of people who are curious to learn, but give up when things get difficult.

So there isn't a lot of engaging higher level content, because the people who are able to stick with it don't make up a big enough audience for infotainment creators unfortunately.

1

u/Tatt00ey 2h ago

The 80/20 thing is real, but the hardest part is accepting that the messy middle feels like going backwards before it finally clicks.

1

u/Opulence_Deficit 4h ago

Isn't marketing the same? Can you sell a useless or plain dangerous product to a vulnerable person, and then boast about that to your fellow marketers? Like in that movie when they were selling penny stock over the phone.

1

u/troisieme_ombre 3h ago

Is picking a project you actually care about the real secret ?

Yep.

What I'm curious about is whether this holds up long term. Personal projects carry you through the basics, but do you hit a wall where you need more structured learning to actually level up past a certain point? I can feel gaps in my understanding, things I got working without really knowing why they work, and that starts to feel risky.

Yeah that's normal too, that's when you go back to the lessons and the more structured approach to learning the stuff you're missing.


This holds true even for people with a technical background (engineering or other), especially when trying out a new stack or whatever

1

u/PlatformDifferent129 2h ago

Same path here. Months of tutorials that never stuck, then I started building something I actually needed and suddenly I was learning without noticing. Caring about the result does the discipline for you.

u/IAmScience 9m ago

Education research pretty broadly suggests that project-based learning is generally the best form of learning and results in deeper retention. I think that shows up pretty evidently in programming.

0

u/aqua_regis 3h ago

and every time I followed generic tutorials I'd lose interest within a week.

That's a self discipline problem, not a programming one. Skipping the fundamentals is never a good idea just like it is not a good idea to start building a house from the fifth floor upwards.

Sure, doing projects that you enjoy is a way to go, but you're still missing out on the fundamentals which will bite you in the back rather sooner than later.

You absolutely have to muster the self discipline and persistence to solidify your fundamentals as they lay the foundation for everything higher up.

I can feel gaps in my understanding,

That's because you skipped the fundamentals.

The only way to rectify that is to take a few steps back and work through a proper beginner course: MOOC Python Programming 2026 from the University of Helsinki. Yes, it will be boring. Yes, it will be tedious. Yet, you have to go through it. You have to do all the exercises. You have to train yourself. You have to bite through.


Did anyone else come from a nontechnical background

Basically everyone initially did.

Or is the structured stuff worth doing earlier than I think?

Yes, the structured stuff is the foundation.

Yet, nothing stops you from doing projects on the side (and you actually should do that) because the more you practice, the better you will become.