DEV Community

Cover image for Learning Code While Working a Full Time Job

Learning Code While Working a Full Time Job

Bennett Dungan on August 10, 2018

Originally published here This is about my journey of learning how to code while also maintaining typical 8 to 5. Spoiler, its hard as hell and th...
Collapse
 
muygalan profile image
Joshua Galan 👨‍💻

Number 4 works for me one thousand percent.

I wake up at 5AM every weekday and devote a minimum of 1 hour to coding. I have my sweet iced coffee already prepared in my fridge the night before so I can jump right in and not waste time.

There's something beautiful about being awake while the world is asleep. It's nice and quiet, tranquil, and allows me to focus better. Post-work evening coding is strenuous when physical and mental energy levels are depleted.

Collapse
 
itsasine profile image
ItsASine (Kayla)

There's something beautiful about being awake while the world is asleep. It's nice and quiet, tranquil, and allows me to focus better.

That's part of what I don't get about advice to wake up early and code... I get that feeling at midnight. Or 2am. Because staying up to code works better than me dragging in the morning trying to pretend to be productive.

Collapse
 
beznet profile image
Bennett Dungan

Yeah mornings aren't meant for everyone. I've listened to quite a bit of Tim Ferris on his podcast and he's also a night owl who finds himself most productive between 2am and 4am. Although he has the luxury to work during those times, most of us do not.

Collapse
 
owlypixel profile image
Owlypixel

Great article!

Of course, everyone is swamped with work, but you still can find ways to learn to code on the job.

Here's my story.

I used to work as a support engineer at a small company and we had a problem - our clients kept calling and asking the same questions over and over again. They didn't like to read pdf documentation because you could easily lose hours of your time browsing countless pages of complex specialized technical text. So, I decided to deal with this in a way that will fix the problem and at the same time allow me to learn something new.

With the help of some tutorial online, I spent one hour a day building a little help-desk app using Vue and CSS Grid. It looked really simple but straightforward and provided clear step-by-step answers to common questions.

Being good friends with sysadmin we put my little creation online and sent an email for people to check it out. Then things got busy, and we kind of forgot about it for a while.

After some time, my boss called me and said that our clients really liked this new website that we have. They were able to easily find what they need in a matter of minutes right from their mobile phones. He asked me to work on this website full-time, adding new features and various other improvements.

Things like that show your initiative to make things better and also the ability for you to learn some new stuff. And also I got paid for the thing I was building. Isn’t it cool?

So, I'd say find a little side project at work and hone your skills there. You need to build something that is fun to build and solves a real problem that people have. It really doesn’t matter whether your boss knows about it or not.

What matters is the end result of your work. The amount of time that this is going to take is not super extreme but it will push you forward.

Collapse
 
beznet profile image
Bennett Dungan

This is such a great story, thanks so much for sharing! I've actually had some similar situations at my job where I created some simple Adwords scripts (written in vanilla JS) that made reporting a lot easier for me at the time.

Collapse
 
jrohatiner profile image
Judith

Awesome! Very motivating. IMO it’s a good idea to let your boss know what you’re doing - even if it’s for the purpose of accounting for the time.

Collapse
 
yechielk profile image
Yechiel Kalmenson

This is great!

I also learned to code while still keeping my previous 9-5 job, so a year of staying up to 2 am and coding through the weekends.

1 tip that helped me was to set aside one day a week to take a break from coding. For me it was Saturday, I would stay away from the computer and reserved the day for family/personal time.

I also tried to get to bed early at least one night a week (usually Tue-Wed). That broke the pattern of all-nighters and let me "catch my breath."

Can't stress enough your point about surrounding yourself with a community of others who code. I couldn't really get out to meetups as much as I would have liked, but I did find a few supportive online communities, such as dev.to, CodeNewbie on Twitter, and the Flatiron School's Slack channel (the bootcamp I took).

Collapse
 
beznet profile image
Bennett Dungan

Speaking of taking a break from coding, I actually did that this weekend. Its definitely necessary to take some time off from code altogether every so often

Collapse
 
jaredgeddy profile image
Jared • Edited

Great tips. I especially agree with your points of making small amounts of progress everyday and coding the first part of your day rather than the last part. Someone once described our brains like a flower vase. We can hold a large amount of knowledge (water) but can only allow so much in at one time, or over a period of time. (Like the narrow neck of a vase)

One other encouraging point I would make is that it's okay if you get burnt out, we all do. Missing a day or a week even is okay, but get back into it afterwards. Don't let missing a day be an excuse to give up. If you fell down a stair you wouldn't throw yourself down the rest of the stairs, you'd get back up and keep going.

To anyone struggling, hang in there. Remind yourself daily that the goal is progress not perfection, and progress is a marathon not a sprint.

Collapse
 
beznet profile image
Bennett Dungan

Yes you're totally correct, burn-out is inevitable in many people's cases. I think there are strategies on minimizing it by taking the long/slow approach though. Even with that, there will be times that you just need a breather from coding all together.

Collapse
 
shostarsson profile image
Rémi Lavedrine

Great story.
Keep up the good work.
And you can be assured that it is only the beginning. Because when you start coding, as new frameworks, languages, technologies comes out every month (ok, year is more appropriate ^^), you are going to train yourself everyday.
But it is so fun to learn new things.
And then (as I experienced recently) share it on dev.to even if you are an absolute beginner (as this beautiful post encouraged me to do)

Share your experiences with us

How many times you thought to yourself: "maybe I should write an article about that" and then didn't? I'm going to guess that it happened more than a few times. The short answer: just do it already!

Even if it improves the life of just one person, isn't it worth it?

And by the way, it doesn't matter what you write about or if there's a million articles on the subject already. Your experience is unique. Your perspective is unique. Your background is unique. So just please share it with us.

Collapse
 
beznet profile image
Bennett Dungan

Yeah learning code is something we as developers will do till the day we retire. I really enjoyed your article that you linked btw, dev.to is a great community.

Collapse
 
stacy profile image
Stacy Montemayor

I really like the coding log idea. I'm super fortunate because I only have to work a tiny bit while learning - so learning is my full-time job, but it's still hard to see where I've been, how I've progressed, and what exactly has brought me to my current place.

I have been maintaining a spreadsheet that high-level tracks what courses, projects, etc. I've done (with start and end dates). But, it's not really doing it for me. As an example, this week I went back to a little crash course on Ruby that I had tried to start about five weeks ago - I had stopped doing it because it was so challenging that I was getting really frustrated. But, the last two days working on it again - suddenly I am able to successfully write each part of the exercises usually on the first or second attempt. And each time I run the code I'm SO surprised that it works! And, for the life of me, I can't understand why it's suddenly so much less challenging. (I've mostly worked on front end learning over the last five weeks...) I think a daily log would help me to understand how my learning is progressing.

Collapse
 
beznet profile image
Bennett Dungan

I like your idea about the spreadsheet to record what courses you've taken. I've gone through quite a few tutorials and having a dedicated spreadsheet to kinda pair with my coding log might not be a bad idea.

Collapse
 
alejandra_quetzalli profile image
Alejandra Quetzalli 🐾

Tip #4 on "coding before you go to work" is SPOT ON!

I did that for a while a few months ago when I was interviewing for my current role, and I can honestly say that setting aside that morning time worked better. It was the only realistic time I wasn't mentally exhausted from work yet... haha

Go you! =]

Collapse
 
ben profile image
Ben Halpern

This is brilliant advice.

Collapse
 
craigbutcher profile image
Craig Butcher

Great post. I do try and sneak in some learning by firing up codepen to give myself a sense of purpose that I can still do front end dev. It’s freedom to enjoy rather than being boxed in to a project. I think I’ll try 4) soon.

Collapse
 
thabisoddx profile image
Thabiso Mohatlane

Awesome article and great tips. I try to sleep early so I can wake up between 3 - 4am everyday to study before I go to my 8 - 5 job. I also try jog in the morning, but I am thinking of using a bicycle to work.

Collapse
 
link2twenty profile image
Andrew Bone

This is great 🙂

Collapse
 
mmarinez20 profile image
Manuel Mariñez • Edited

This is just great Bennett, I just post about "your ideal coding hour", Im really struggling with this. Thanks a lot.

Collapse
 
mmarinez20 profile image
Manuel Mariñez

you also gain a follower mister.

Collapse
 
beznet profile image
Bennett Dungan

Yeah the mornings aren't for everyone but its just something that I've found most people seem to resonate with once they've stuck with it for awhile. Also thanks so much for the follow!

Collapse
 
rattanakchea profile image
Rattanak Chea • Edited

In addition, m tips are: build a strong foundation in CS, learn data structures and algorithms, practice coding challenges and interview skills.This will improve the chance of getting hired.

Collapse
 
robdwaller profile image
Rob Waller

This is excellent advice great post, I've spent years coding before work, only requires 30 - 60 mins a day.

Collapse
 
trae_z profile image
Trae Zeeofor

Number 4 is everything. Figured out I was doing everything yet constantly starting over again, until really discovering number 4 was the key. I know because I've been a gym rat for the past 16 months with results to show, mainly due to morning work outs. Figuring would be finally able to replicate that success by coding in the mornings instead. Then Gym (which I've now mastered and easy to get into) at night. 👍🏾

Collapse
 
goku132 profile image
Michael

Thanks for sharing Bennett great post.

Collapse
 
akshay1dhingra profile image
Akshay Dhingra

The struggle is real, my friend! I am on a very similar schedule as you - get into work an hour early and stay an hour late to code, and try to squeeze in another hour just before bed. Keep it up!

Collapse
 
phanngoc profile image
Phan Ngoc

very struggle

Collapse
 
elidvenega profile image
Elid

Thanks for the tips is 2023 now 5 years late but these tips will help.