Here at Haught Codeworks, I’ve been lucky enough to be surrounded by a supportive team that wants me to learn and is willing to always reach out when I need it. While the mentorship is great, I’ve been learning that this process can’t just come from my fellow developers. I need to figure out strategies that can help me help myself get where I need to be.
Here are some of the most important lessons I’ve learned in the past few months that utilize mentors but also help me push myself to be a better programmer:
Try on your own first, reach out for help if you get stuck
I learned this one the hard way recently. I was working on a card for an Ember project and I had diligently researched what I was working on, traced the data and the actions through the code, figured out what methods I needed to write and then ran a simple console.log test to make sure it was passing through. It wasn’t. I went through the code time and time again to figure out where it went wrong. I spent hours. Finally, with no other options, I reached out to Jeneve Parish for help. Once I explained to her the problem she pointed out the problem and I had it fixed within 5 minutes. From there, I was able to easily move forward. Had I just reached out after being stuck for maybe half an hour, I could have finished the task in less than half the amount of time.
Keep detailed notes for reference
Marty suggested this to me and, thus far, I’ve come up with huge files on several types of technology and our projects. Yes, it would be good if I could remember every script to start a server or exactly how I wrote a method to solve a certain problem but sometimes other things have pushed those details out of my brain. If I ask once and write it down, and keep it in a place I know where to find, I never need to ask again. I have notes about rebasing on git, tips for checking what node version I have and detailed notes from tutorials on rails and ember. This is now the first place I check when I get stuck. I keep my notes in a directory with a different file for each technology. But there are lots of ways to get high tech about it. Codecondo has suggestions for some of the best note-taking apps.
Pair as often as possible
Now that I’m out of school, the most valuable resource I have are the great developers I am surrounded by here at Haught Codeworks. They may have already spent hours on a piece of code I may be trying to tackle and can explain their own mistakes or the benefits of approaching it in a certain way. By pairing, I get to see an expert in action and learn about the best practices for programming. Along with the immediate task at hand, they are great at helping me with other skills like formatting the code and learning debugging strategies. I’ve learned that it’s important to ask as many questions as you need while pairing. I don’t want to slow other developers down, but if I don’t understand what’s going on then the whole pairing process is pointless anyway.
Learn how you learn best
Figuring this out has been tough. I can’t tell you how many hours I have spent on tutorials that I got nothing out of. Over time, I’ve figured out that video tutorials frustrate and bore me and I get much less out of them than written tutorials that guide me through a project. I learn best by working on a project and having the code easily accessible. An instructor telling me what to do isn’t as good as for me as a code base and a roadmap to proceed. Everyone learns differently and the faster you learn what works for you the faster you will be able to learn.
I know I still have a lot to learn but with the help of the excellent mentors here and my own initiative to keep on learning, I know I can get where I need to be.