Hello, I’m Samuel Moser and today I will be sharing my journey of learning to code while working a full time job. I am currently employed as a maintenance lead in a agriculture production plant in the southern part of Virginia. This is hard work, and a typical workday goes from 6am to 5pm. You must now be wondering where I manage to find the time and energy to code every day and be productive while doing it.
Typically I try to focus on learning for one hour each day about a certain coding topic (flexbox currently) and spend another two hours actually coding. I wake up every week day at 4:00am so I can read, learn and research coding techniques. Scientists say the brain works best at the early hours of the morning, and I certainly believe this to be true. Often times I find the solution to previous day’s coding problems in my morning study time.
Evenings after work is the time I actually get to do some actual coding. I usually code from 6–8pm every week night. This is my favorite time of the day because it gives me the opportunity to utilize the information I have learned and studied that morning.
Do I code on the weekends? Of Course I do! On Saturday morning I usually have the time to work on a project for myself and also for fun. I have learned very quickly that if you have no joy or fun in coding you will become frustrated and lose interest very quickly. Sunday is a time for reflection and setting new goals for the upcoming week. I reflect on the previous week’s successes and failures, what I learned and also what stumped me. Next I layout a game plan for the upcoming week. I write down what I plan to accomplish each day and also one bigger project that will take the duration of the week.
All of this may sound easy, but it is far from it. It takes discipline and sacrifice to code and learn every day. I sacrifice my time every evening, many hours on the weekends and the extra hour of sleep I would normally be getting every day. It also requires me to get squeeze every ounce of productiveness out of every minute I spend coding to get the most out of my time.
To ensure I am making the most of my time coding and learning I laid out a few simple rules to hold myself accountable.
Put down all distractions while coding! This is the single most important thing I could tell you! I must be in a certain mental state to write clean code, and it takes my mind around 20 mins to fully lock in. Every time a phone buzzes or you get up from your workspace you have reset that internal timer, and it’s back to square one again.
Know when it is time to quit! Usually by the end of my two hours of coding I am pretty tired yet my project isn’t done. This is when you have to make a decision to stop what you are doing knowing you will come back to it the next day. It is very easy to get carried away chasing bugs and working on a certain feature and lose track of the time. It may seem productive to finish what you are doing, but that usually is not the case. You will end up throwing off your regular schedule and over time it will come back to hurt you when you have to sacrifice coding time to catch up your day to day tasks. It is much more productive just to stay on the schedule you have made.
At the end of the day learning to code while working full time is a very challenging task. It takes discipline, sacrifice, hard work and dedication. Whenever I feel like quitting I always go back and remember why I started in the first place. Put in the time, effort and hard work and it will ALWAYS pay off.