
How it feels to learn JavaScript in 2016 - vermilingua
https://hackernoon.com/how-it-feels-to-learn-javascript-in-2016-d3a717dd577f
======
oh_teh_meows
I had come from a Compilers/computer vision and distributed systems
background, and just recently I decided I'd quit my job and bootstrap my own
little SaaS business. My web development knowledge had basically been stuck in
the era of PHP and XmlHttpRequest, so I was in for a huge surprise when I
decided to dive into modern day web development. For 3 months I couldn't do
anything useful; it's just straight up a lot of fumbling in the dark with lots
of alternatives and opinions on how to do something. The most aggravating
things I found were the proliferation of tutorials written by beginners, and
libraries/frameworks with lots of new terminologies which are just rebranding
of existing CS concepts. It's aggravating to me because I made a distinction
between knowledge from sciences and knowledge of made up words that won't be
relevant in a few years (e.g action reducers, action creators, state store,
etc), but in the end I decided to just suck it up and internalize all these
words so I can move on with my project. They were useful to someone's project,
so surely I could humble myself and learn something from them.

This piece may seem like a satire on the current state of javascript's
ecosystem, but as far as I'm concerned it's an accurate portrayal of the pains
that one goes through when picking up front-end development from scratch. I
can't reproduce my initial development environment from memory even if I
wanted to (too many npm dependencies and command line incantations). I've
resorted to freezing them in a git repo and forking from it when I want to
start a new project. I hope in time I will figure out the bare basics for what
I plan to do.

Reflecting on my learning experiences, I think perhaps I would have progressed
faster if I had an opinionated mentor who could hide from me the diversity of
the ecosystem, or a guide if you will, until I'm ready. Entering web front-end
development is just like entering a bazaar with thousands of sellers calling
out to you. You wanted to buy a simple woodwork table so you could get on with
your home improvement project, but you left the place 8 hours later with a
bunch of tools that would be used to build said table instead, and you're
nowhere close to getting started on your actual project.

This maybe the beauty of the ecosystem, but getting into it wasn't a pleasant
experience for me. Now that I've gone through that phase and can get started
on the real work, I hope to spare others the pain with what I've learned.

------
jasonhansel
> Yeah, but apparently in the web we love making things complicated and then
> going back to the basics. We do that every year or so, just wait for it, we
> are going to do assembly in the web in a year or two.

Genius. Took me a while to realize this wasn't satire, and was actually about
WebAssembly.

Also: imagine how much worse it is if you _don 't_ yet know HTML/CSS.

