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

Tyler Smith - Apr 19 '20 - - Dev Community

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.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Terabox Video Player