Navigating Time Estimation with Precision
Want to learn how long the days are and what it means to actually commit to something for a year? Try to become a developer.
If you’re the type of person that thinks that most things can be achieved in a month or two, get ready to have your world flipped upside down. Setting realistic timelines is something that most people should try to get better at. It helps with alleviating stress when you don’t achieve your goals in that insanely optimistic timeframe.
I’m going to lose 50 pounds. I’ll give myself 3 months.
I’m going to paint the house. Shouldn’t take me more than a week.
I’m going to learn programming. I’ll give myself 30 days.
Guess what? You’ll fail each time. And it’s going to be epic. Everyone tends to underestimate time. Even seasoned developers will underestimate how much work is required to complete a task. I used to pad their hours by 25% since they always seemed to say less than how long it actually took. But they were still close nonetheless.
Ask a developer how long it’ll take for them to learn to play an instrument, and they’ll say something like, “probably 2–5 years with consistent training.” Ask a non-developer and you’ll hear “3–6 months.”
How is it that developers can estimate time so much better than non-developers? I think it started by trying to learn to code. Each of us gave ourselves an unachievable timeframe of 1–3 months to learn to code, and each one of us failed. Your mind adjusts quickly and you see that this will take substantially longer to accomplish than you originally thought.
Once you spend a couple of years learning, you’ll have struggled so much that estimating time becomes engraved in your brain.
When you see someone shred on a guitar and your fingers can’t even create the basic shapes, you automatically think, “this person must have started playing guitar when they were 5 years old” instead of “I can do this in a few months. Let me get a guitar and learn this Domination solo by New Year.”
https://www.youtube.com/watch?v=aDACorIaxNw
You may be asking right now why not learn the guitar and go through the struggle that way?
You’ll spend a significantly shorter amount of time playing the guitar if you learn to program first. You’ll know how to break everything apart. Learning to code rewires your brain. If you think you’re a logical person now, wait until you complete your software development journey.
There’s also something else about completing your software development learning journey: you gain a new skill that you can capitalize on. I understand that you can make money by playing the guitar as well, but it’ll be much more difficult.
It’ll take time and you will underestimate how much time you have to put in to be successful. With software development, you’ll get a junior level job and you’ll start making some good money significantly sooner than you would playing in a band.
Hope to see you on this journey. If you do become serious in wanting to learn software development, and need some help, reach out to me and we’ll chat.