Back to archive

The most important skill for new frontend developers

by Jacob E. Dawson

If you're just getting started as a developer then one of the first things you'll want to know is which skills are the most important. I remember when I was dipping my toes into the coding pool, concerned that I might not have what it takes because my math skills were underdeveloped and extremely rusty. I remember googling how important math was for coding (answer: not very for frontend in general, but it doesn't hurt..), ready to give up if I came across a blog post that confirmed I was destined to be stuck writing SEO content for a living.

It doesn't stop there, of course. Some of the other things that consume the beginner's mind are questions of what language is the best one to learn (answer: if you're doing frontend, HTML, CSS & JS are your bread & butter, and um..jam?), what is the best course to take, which framework is the best, etc.

I'll let you in on a secret: after 8 years of coding I still do searches about what is the best X for Y. I've used Express to build servers on Node for years and every so often I'll search for Express vs Hapi, or Node vs Django, or MongoDB vs Postgres. Really I think that's fine - it's natural to want to know what the most important thing to learn is, because there's an opportunity cost to everything - every minute you spend learning Angular is a minute you don't spend learning React, or Vue, or Svelte..

I want to share something that I really, truly believe very strongly:

The most important skill to develop when learning to code is persistence. To put it another way, it's the skill to put up with massive amounts of hair-pulling frustration and the ability to keep going despite that. There is no way around it - when you're learning to code you're going to run into a million bugs, and they aren't going to make sense, and some of them will require hours of searching on google & Stack Overflow and Reddit and Github and docs & blogs. You're going to see red lines of text in the console that may as well be alien language, and after a day and a half you'll yell at your screen cursing whoever decided that was a helpful description of what was actually wrong with the code.

the most important skill you'll ever have as a developer is persistence.

It gets worse! I promise you it will get worse before it gets better. You'll make progress and actually start to think you understand how all of this works, and that will make the next brick wall all the more painful. You'll find that some errors are silent, or that you missed a symbol, or you mispelled something and that a single missing letter just vacuumed away 2 hours of your life and possibly contributed to the premature graying of your hair.

That's why the most important skill you'll ever have as a developer is persistence. While there's some kind of baseline of intelligence & capability, it's really not very high. You don't even need a university degree, provided you're willing to put in the time & the effort and bash away at the keys and feel very stupid indeed and keep coding despite all of that. If you keep doing that week in and week out, on the weekends sometimes and definitely on occasions where you'd much rather be surfing Hacker news or watching Netflix, one day you'll find that some of the errors and mistakes that kept you up at night start fading away. You'll find yourself at the end of a day of coding realizing that you didn't even have to search Stack Overflow (at least not that much..), and when you do come across an error you don't miss a beat - you search your mental repo of past errors and find the solution and just keep going.

The only way to get to this magical pseudo-Nirvana is to persist. To know that frustration and anger and confusion are an inextricable part of the process, and that if you really, honestly want to make coding a career (be it in a job or as a founder), the only way forward is through, to take a deep breath and push past the wall.

So yes - keep searching for the best javascript framework, or the best database. Keep looking for the one frontend course to rule them all, the best keyboard, the best code editor. Work on your maths, learn computer science, read the blogs, do all of that.

As long as you persist, you'll make it.

Good luck!