Embracing your tools

I feel like the tools we use every day when writing code is an often overlooked part of development. We tend to spend a lot of time arguing and deciding which language to learn first, which framework to choose and which tech stack will best fit our projects - but I think there's a few fundamental tools that provide a much better return on investment, considering how easy it is to pick up the basics.

None of these tools will make you a better developer by itself, but learning them will boost your productivity and create a more enjoyable workflow. And since you're likely already using these tools anyway, a small time investment will just make you so much more efficient. That's why I highly recommend putting in some effort to learn them well, as you'll be using them for many years to come:

  1. Your IDE. The IDE is where we literally write our code. It's where you'll spend hours upon hours of your work life, so it makes sense to optimize your IDE workflow. I recommend choosing Visual Studio Code and selecting a theme you enjoy looking at. Then set aside a few hours to go through the basic hotkeys, and create your own for operations you find yourself often doing.
  2. Shell / Terminal. Knowing basic shell commands is another nice productivity booster. You'll use a terminal to install packages, navigate files and run processes, so basic familiarity with the various commands is always useful.
  3. Google. I know it's a meme that developers just Google everything all day, but it's honestly not far from the truth. Encounter an error? Google it. Curious which library fits your usecase? Google it. Can't figure out how to solve a given problem? You guessed it - Google it. Knowing how to phrase your searches to get the right results can save you hours of debugging time, so there's lots to gain in this area.
  4. Git. I put git in here because it's the closest we come to a universal technology in our industry. Seriously - I've yet to see any company or development team not use git. It might seem scary and overwhelming in the beginning, but remember that you don't need to know everything about (g)it. Focus on learning the basics like adding/committing files, branches, merging, pushing/pulling etc. Any other command you can just Google when you need it (assuming you read point #3). Learning git will save you so many headaches, even if you're working alone, so don't be one of those people who "never quite understood git".

I promise you: any minute you spend truly understanding these tools and how to use them will pay off tenfold throughout your career. More so than any new JavaScript framework or shiny library.