Hindsight Is 20/20

Engineering Insights

April 29, 2025
Taylor Kearns
#
Min Read
Hindsight Is 20/20

Are you just starting to learn how to code? How exciting! And intimidating! No matter how long we've been in this business, we're always learning something new. The Gnar team discussed what basic advice we'd offer a developer at the beginning of the journey. Here's what we came up with.

  • It will probably take you two weeks to somewhat understand what you're being taught today. Don't freak out if you don't get it right away.
  • Read code every day. Just put your eyeballs on it, even if you don't understand it.
  • Error messages are your friend. They aren't shaming you, they are helping you target something to fix. Get comfortable reading error messages and don't be discouraged when you get them; be excited that there's a (hopefully helpful) starting point for your debugging.
  • Ask all of your questions, all of the time. If the answer doesn't make sense, it doesn't mean you were wrong for asking; it might mean that the question you had needs to be examined a little bit. Take the time to compare what you THINK you need to know, what the code is telling you, and what you're certain about. There may be information available to you that can lead you in a better direction. This is a skill that coders practice all the time, because we all feel lost on occasion. The trick is to find ways to feel confident that you do (or don't!) know something. That lets you learn it.
  • Use your tools. There are so many things that have been built to help you figure out what's going on in your code, and learning how to manipulate them will make it easier to learn new things and crack harder problems. Figure out how to use Inspector consoles, debugger statements, linters, editor features, terminal tricks, helper libraries, and (eventually) tests. Each language has a slightly different approach to these tools, but ultimately the goal's always the same: making the work you do easier and more enjoyable by creating ways around obstacles.
  • Try to build stuff on your own even if you think you're not very good yet. Exploring and practicing are the essence of being a dev. I've made so many different variations of to-do list apps just to keep me asking productive questions.
  • A large web framework essentially takes a string input and returns a different string output. Seeing a simplified example makes it easier to not be so overwhelmed by the entire framework.
  • When you get right down to it, code is simple. No magic, no elves, no wizards. Things are being compared, and the result of that comparison is either True or False. Learning to code is really about learning the basics of implementing these abstract flows in your mind, and then learning how to write and read them in code, in that order. This is why it is confusing - you have to conceptualize the solution in abstract logic, then work backwards to translate it into code. You may not be able to conceptualize how to build a pyramid, but at the end of the day it's a bunch of dried mud. I bet you can conceptualize dried mud.
  • YOU CAN UNDERSTAND THIS. Just give it time.

Contributors

Learn more about The Gnar and our team.

Related Insights

See All Articles
Engineering Insights
Repo Roundup April 21st

Repo Roundup April 21st

A weekly human curated roundup of interesting repos & projects. Some are brand new, others have recent activity and are new to me.
Learn more
Product Insights
The One Thing to Look At in a Software Development Estimate

The One Thing to Look At in a Software Development Estimate

When choosing a development partner, most companies compare hourly rates. But the real question isn’t how much per hour? It’s how much of your budget actually goes to development?
Learn more
Engineering Insights
Repo Roundup April 14th

Repo Roundup April 14th

A weekly human curated roundup of interesting repos & projects. Some are brand new, others have recent activity and are new to me.
Learn more
Previous
Next
See All Articles