Learning at Work

https://jvns.ca/blog/2017/08/06/learning-at-work/

I know some great programmers who don’t program outside of work at all! So I got to thinking – what if you want to become awesome, but don’t want to spend a lot of time basically doing extra work after hours?

Here are some things me & people on twitter came up with. Everything in here is stuff I can do during my workday.

Don’t learn programming languages/frameworks outside of work

... That is interesting and I’m happy to be doing it. But it is not so fun that I feel like spending a lot of my personal time on it. And I don’t really think it’s necessary, I learn languages by writing them, reading other people’s code to learn about conventions, and having my code reviewed. I can just do all of those things at work!

To be clear, I don’t think it’s bad to learn programming languages outside of work. I just don’t really do it.

Choose projects I think I’ll learn from

I think it’s silly when people are like “hey, we work with X technologies, you need to have experience with them to work here”. Right now I spend a lot of time with networking/puppet/kubernetes/docker/AWS and I had never worked with any of those things before this job.

Watch more senior people operate

When someone is doing work I really admire, I’ll watch how they do it and then try to emulate them / ask them for advice.

Read every pull request

I don’t actually read every single pull request on my team. But I do find it useful to pick a few areas I want to keep learning about, and keep track over time of the work people are doing in that area.

Read the source code

Reading source of what I use is a big one for me. Understand what it does internally but mainly why it does it a certain way.

I think this is a fantastic tip and super important!! A lot of systems aren’t really that well documented and you can’t learn how they work without reading their source code.

Follow up on bugs I couldn’t figure out

Use your commute

I don’t have a commute but a lot of people mentioned using their commute time to listen to podcasts / read papers / read interesting articles. I think this seems like an awesome way to keep up with things you’re interested in!

Take the time at work to learn

Someone on Twitter said “I wish I could take 1 hour a day to learn”. My view is that it’s my job to take time out of my workday to learn things.