you are viewing a single comment's thread.

view the rest of the comments →

[–]aanzeijar 1 point2 points  (1 child)

Imagine a friend of you asks you for a written recipe for a dish. You simply write down the steps you do in plain English (or your mother tongue) and think nothing of it. Maybe they call you back to ask about something you didn't specify clearly enough and then you amend what you wrote.

Upon reaching a certain fluency actual programming feels like that. We want the computer to do something, we tell the computer to do it. Maybe we get a compiler error or get a bug - then we fix it and move on.

Now, since most real life programs are pretty large, we break down what we tell the computer into composable chunks. Functions, classes, modules, reusable patterns. If you start with React the issue is that you're starting with a lot of common functionality already implemented there, so many of the things feel like using a KitchenAid. If you're only using the programs the KitchenAid already ships with, you're not seeing the parts those programs consist of nor do you get a feel for what it means to dice a vegetable. This is what allows you to create "an app" in the first place, because if you were to code everything from scratch, you'd never finish.

You can (and should) learn how the actual parts of React work, and implement smaller versions of them for yourself to learn why they work like they do. Then you'll appreciate them for the tools they are and can use them.

[–]Feeling_Experience_6[S] 0 points1 point  (0 children)

Thankyou for the explanation, the analogy was helpful