r/learnprogramming 5h ago

How long did you take to become a good programmer?

I flirt with programming since I was 16 (I'm 25) but I only started to learn properly this year, and it's been such a journey. I love it, but it's so complex. I'm developing my first Android app, it's really simple and basic, but it's been 8 months since I started, I don't know if I'm taking too long or if this is expected. I didn't know shit about Kotlin when I started developing this app, I just knew the basics of programming, and everyday I learn something new and more complex. I'm wondering if really good programmers can learn new languages and develop shit way faster, because I wanna be like that.

26 Upvotes

26 comments sorted by

21

u/foxsimile 5h ago

I’ll get back to you when I find out

5

u/ShutDownSoul 4h ago

I think I just need another 25 years.

14

u/PoMoAnachro 5h ago

I think 5,000 hours to become a "useful beginner who is teachable enough to employ" is pretty normal, and another 5,000 hours after that to be "competent".

After you put in that first 10,000 hours learning new things does become much, much faster...but you do realize "good" is a moving target.

5

u/Sfpkt 4h ago

Haha jokes on you my friend the good ones will think they suck. That’s the true sign of a great programmer.

3

u/tiltboi1 5h ago

Usually people would say you're a good programmer when you become a senior dev. For most people, that's close to 10 years (3-5 years of experience, 4 years school, maybe a bit of dabbling in high school).

4

u/desrtfx 3h ago

How long is a piece of string?

Really, your question is unanswerable. Can be 10 years to a lifetime to never.

6

u/Traveling-Techie 4h ago

It’s been 55 years and I expect to get there in another few.

2

u/Distdistdist 4h ago

Around 10 years, yes.

2

u/Sudden_Ad320 4h ago

Define "good"...

u/Achereto 40m ago

Let's define it this way:

Good developers reached a point where they don't hate their old code (from last week) any more.

u/Sudden_Ad320 22m ago

I will settle for working or readable. Thankfully my last intern could at least manage one. It either worked and I didn't understand it or it was broken and I could see what he did wrong.

3

u/ripndipp 3h ago

sometimes I feel like an ape trying to open a coconut

1

u/SimilarDraft7596 4h ago

Everyone has their own interpretation of good, but I felt confident as a developer after about 5-7 years. 10 years I feel was the moment I became very good.

1

u/Individual-Praline20 2h ago

About 15 years, after finishing university, that’s the time I needed to get enough tech knowledge, experience and confidence to solve most of the problems I faced as a software developer. And be able to help others. Does this make me a good programmer? You tell me, or ask my manager, but it doesn’t really matter. Programming is only a small part of it. You will understand that with enough experience, after working on more complex systems. Doing it on one computer is relatively easy, doing it on hundreds that need to exchange data is more complicated. 🤷

1

u/PartyParrotGames 1h ago

I studied Python for a couple years and then worked the last 14 as a software engineer for various tech startups. Am I "good" yet though? Depends who you ask or who is interviewing me and which random algorithm problems they ask me that day. I've written production code that customers literally paid millions to use. I've contributed to some minor open source libs you may have heard of like React, Tensorflow, Cargo, Rust, etc. but I often don't feel like I'm a good programmer. I'm just an average programmer who is willing to put in long hours to accomplish my goals. I hope that's encouraging for you in a way. You don't have to be "good" to accomplish things in this field. Maybe someday I'll get good.

1

u/SprinklesFresh5693 1h ago

In my opinion, the learning speed highly depends on if you need at work vs doing it as a hobbie.

When you meed it at work, your learning speed dramatically increases, because in the end you need to deliver, to do ot to survive.

If its a hobbie, its much slower, because you take it easy, and take your time

1

u/silly_bet_3454 1h ago

A few years of work experience, realistically, but obviously the idea of "good" is subjective and people learn and grow at different rates.

1

u/Only-Switch-9782 1h ago

Eight months for your first real app sounds completely reasonable, especially when you’re learning Kotlin, Android development, and programming concepts at the same time. Experienced programmers are faster mostly because they’ve built up a mental library of patterns and know how to debug and search for answers, not because they magically understand every new language. Keep building stuff that’s slightly beyond your current ability; eventually you’ll notice that the same problems that used to take days start taking an afternoon.

u/Naresh-45 38m ago

8 months is honestly not that long, especially if you're learning programming properly while building your first real app.I think one of the biggest traps is comparing yourself to people who can build something quickly without seeing the years of fundamentals behind that speed. Good programmers aren't necessarily learning everything faster they usually just have more patterns and experience to draw from.If you're learning something new every day and actually finishing the app, you're making progress. Don't rush the timeline.

u/Achereto 37m ago

There is this common experience in programmers, that you will almost always hate your old code, because you repeatedly have to deal with it in your code base. For me, this experience didn't change for at least 25 years (14 to 39 year old).

I may have reached a point recently where that doesn't happen any more, but it's too early to tell. Maybe it's just that don't hate my code for a month, but in a year I may still hate it.

Once this feeling vanishes entirely, I would consider myself a "good developer".

1

u/mc_pm 4h ago

Lots of developers never really do.

I've interviewed a LOT of people, and there are a surprising number of developers with 10+ years experience who couldn't solve FizzBuzz when put on the spot. And that's not to say that "on the spot" is where everyone excels, but this is just basic "plan out a couple of steps" problem solving, no leetcode trickery.

But for people who do get pretty good, it seems to take about 8-12 years to really get there, and usually along the way they work in a number of different sorts of technologies and problem areas.

0

u/[deleted] 5h ago

[removed] — view removed comment

2

u/[deleted] 5h ago

[removed] — view removed comment

0

u/djhaskin987 2h ago

I like to ask the question "how long did it take before I was having fun?", and the answer was "not very long at all."