Aug. 14. 2018
Why you should have practice hours as a developer
If you are a musician or know one, you know that there is “practice” and “rehearsal”. These two have very different meanings.
Often times musicians have “sacred” practice hours. They don’t do it for an artist, band or for anyone other than themselves. It’s their time to sit down and focus on a technique, song that they want to learn or whatever their heart desires.
Developers need this time too.
After a while of working in my company’s tools. I got to the point where I was hearing about cool new technologies. I also found myself wanting to learn about back-end technologies. I didn’t have any real justification for learning these other than, “just cuz”. I decided to put in place my own sort of practice hours.
I started by coding random apps and ran into an issue where I would forget what I was working on. Hello Github Graveyard! Without a project manager or a Trello board to keep me on task I am lost. I decided for this I wanted to go analog and bought a cheap spiral notebook for every practice session. You can do whatever feels best.
I start by reviewing what I worked on the session before and write a focus for the new session. It roughly follows the following formula.
Today I want to learn about ______. I will read/use ______ to help me learn.
I take some notes in the notebook or in a markdown editor while I’m working. Once I’m done and feel good about what I learned I finish up the session with the following.
Today I learned/built ______ and I felt ______.
Summarizing what I learned and how I felt about it are so important. When I’m researching something the first intention I set is never what I actually learn. I find that whatever topic I chose leads me to another concept I need to learn first.
Writing your feelings down every session is critical to growth. I can track topics that make me feel accomplished, overwhelmed or completely lost. Usually, the latter is when I know I need to seek someone out to help me understand a concept better. Online tutorials can only get you so far!
When deciding how much time you want to dedicate a week to practice hours, it’s best to start with small sessions. You should focus on keeping the appointment to begin with. Once you have developed the habit you can increase the time.
Once you are ready to increase your practice time I turn to Malcolm Gladwell’s idea of 10,000 hours. You can read more about it in his book, Outliers.
The idea is the key to achieving world-class expertise in any skill is a matter of practicing for a total of 10,000 hours. Let’s break that down. If you practiced for 3 hours a day every day it would be 3333 days or a little over 9 years. I’mnot recommending this. Having a life outside of coding is so much more important. You will be way more productive.
What I am recommending is to consider your goals, available time and tenacity. Add the idea of 10,000 hours and mix well. By all means if you want to be the youngest senior developer this world has ever seen, have infinite free-time and the will of Mulan taking down the Huns. Yeah, go for it.
If you are the rest of the population and want to lead a dynamic life you need to be realistic. Strive for progress and not perfection and I promise you will reach them.
Here’s a quiz to determine your ideal practice schedule.
1. I’m ready to reach my goals:
A) As humanly fast as possible. Let’s go already! (+1 if you read that in Bender’s voice)
B) At a moderate pace. I’m ambitious, but willing to wait for the payoff.
C) I’m not in a rush. Success takes time! It’s about the journey.
2. I understand that success means:
A) Working hard, putting in the hours and staying late.
B) Working efficiently, being timely and taking chances.
C) Working with others well, focusing on long-term gains and being present.
3. I want to be in the top:
A) 2 percent
B) 25 percent
C) 50 percent
4) My life is:
C) In the moment
5) I’m willing to sacrifice:
B) Weeknights/Weekdays on occasion
C) Sacrifice? No way!
If you answered mostly A’s
Congrats! You are hungry for success and won’t stop till you get there. I’d recommend a fast-paced study plan. 4–5 practice days a week with around 3–4 hours at a time. Let’s be honest though you will do more. Now get going!
If you answered mostly B’s
Congrats! You are driven and ready to get after your goals. I’d recommend a moderate study plan with 2–3 practice days a week at 1–2 hours at a time. Yasss henny!
If you answered mostly C’s
Congrats! You are along for the ride of success. Take pictures and breath in that air on your journey! When you get there it will be that much sweeter. I’d recommend a leisurely practice plan with 1–2 practice days a week at 30 minutes-1 hour.
If you fell somewhere in-between
Take a look at your work schedule, project cycles and free-time. Start with the smaller goal and strive for consistency in practice time. Increase as you become consistent.
In summary, practice hours i.e. working on whatever the heck you want outside of your job allows you to focuson your goals. Not just your company’s. I think this matters whether you are working as a developer now or want to change careers to become one.