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.