loading...

No, you don't need to learn the language before you learn a framework

tylerlwsmith profile image Tyler Smith Updated on ・2 min read

Imagine you just moved to a new country that speaks a different language. Now imagine you're out-and-about, and you really need to use the toilet. In a panic, you Google how to ask someone for directions to the bathroom in this country's language.

Inside of every page you view, you find people arguing you first need to learn the language's grammar, conjugation and master its alphabet before you should even attempt to ask a local how to find the restroom. Someone who has been speaking the language for over 10 years even says that people who try to string together sentences without mastering these principles first make the whole language worse for everyone else who uses it.

You just need to use the bathroom, and it can't wait.

Anyone who is new to programming can probably relate to this story. Too often, a vocal minority of programmers on Stack Overflow, Reddit and Twitter will preach that a novice coder must master the syntax, data structures and best practices of a language before they are even allowed to ask questions. They certainly must know all of this before they're allowed to a use a framework!

Programming languages are just tools to get things done. Can you imagine if people demanded the same level of mastery with screw drivers and hammers before you were allowed to assemble Ikea furniture? And heaven forbid you use a power drill before you've mastered the screw driver!

Babies aren't expected to learn grammar or verb tenses before they're allowed to speak. They start by learning the words that are most useful to them to get the things they want ("mommy", "daddy", "cookie"). Much like babies mimicking the words they hear around them before they start forming their own sentences, copying and pasting code you don't entirely understand is a part of the programming language learning process.

Where you start in your programming journey will depend on what problem you're trying to solve. Maybe you start with a high-level web UI framework like React. When you start building things, you'll pick up some JavaScript along the way. As you run into challenging problems, your Google searches will likely lead you to discover established best-practices that help you grow as a developer. And if you stick with it, eventually you'll become fluent.

If you're new to programming, welcome! Look for the tools that can help you build the things you're interested in, and start coding. It's okay to be imperfect. There is almost no beautiful code in the wild: just coders doing the best they can with what they have.

Posted on by:

tylerlwsmith profile

Tyler Smith

@tylerlwsmith

I build software. Follow me on Twitter if you want to hear my ramblings! https://twitter.com/tylerlwsmith

Discussion

markdown guide
 

Good point. Just take the countless Javascript developers, like me, that started out with jQuery just because it was much easier. Knowing vanilla Js or Css wil probably make you more proficient in React or Bootstrap, but if these frameworks click with you you can always dive deeper later!

Especially for new dev's. Just have fun. There is nothing greater, and stimulating, than to build something that works, and if React helped you do that it's great. Just learn how things work under the hood later! :)

 

I couldn't agree with you more, Stephan! I only learned vanilla JavaScript deeply after learning jQuery, Vue.js and React. I'm unashamed to say I still frequently reach for jQuery: it's a great little library.

All of these are just tools: it's what you build with them that matters.