
How to Write JavaScript When You Don’t Know Where to Begin - sensored
https://carlanderson.xyz/how-to-write-javascript-when-you-dont-know-where-to-begin/
======
tropicalia
If you (really) don't know where to begin -- that is, you don't have enough
"monkey grease" under your belt to just pick up some examples and
documentation and propel yourself along -- then you should probably start with
a different programming language.

That's not to get into an overall advocacy debate in regard to JS, btw. But
even its staunchest advocates will acknowledge that it can be quite slippery
to work with, in certain parts.

~~~
sensored
Do you think the programming language you start with makes that much of a
difference?

Like, does everybody who chooses python have an easy time while everyone who
chooses ruby is doomed to failure, etc?

~~~
tropicalia
_Do you think the programming language you start with makes that much of a
difference?_

Yes (and you'll find a lot of advice from experienced hackers emphasizing this
point).

If not exactly the first language you start using -- at some point one should
definitely start making a serious investment in a language with what we might
call "solid bones" (that is, strong CS fundamentals). Or at least wit a high
"fundamentals-to-fluff" ratio (and most especially a high "fundamentals-to-
cruft" ratio).

Which isn't to say that "fluffy" languages (like Python or Ruby) are always
bad. Or that crufty languages (like JS) cannot in some contexts be "good
enough" (and certainly good enough to pay the bills).

But the point is, one should at least _know_ (and know through grit and
experience; not through second-hand opinion) when one is in a fluffy or crufty
environment (and how it is that one got there -- hopefully by being
consciously aware of the tradeoffs involved).

A key trait of inexperienced programmers is not that the use or don't use
certain languages (or databases, or other tools). It's that they don't
_recognize_ situations when they're using an (inordinately) crufty one. For
the simple reason that they have... insufficient basis for comparison.

