HN Gopher Feed (2017-07-27) - page 1 of 10 ___________________________________________________________________
Show HN: The JavaScript Way, a book for learning modern JavaScript
from scratch
110 points by bpesquet
https://github.com/bpesquet/thejsway/#___________________________________________________________________
[deleted]
ryanmarsh - 2 hours ago
I just got home from teaching JavaScript to a room full of people
who've never written a line of code in their life.This book is
missing something critical that most intros to JavaScript
overlook:How does the student set up the plumbing and run their
code?It's amazing how much of a hump this is for many trying to get
started. It also amazes me how oblivious most of us programmers are
to it."Just open Chrome Dev Tools" or "put this in a file and run
Node" are really strange computer tasks to someone who has never
typed and executed code.
0xCMP - 1 hours ago
Very true. Or things like "download and install git".Oh wait
you're on a mac you need Brew. But you're on windows? You're
gonna need X. You're using linux and still don't know? (e.g.
Parent installs linux on a computer for their child to learn
programming on (e.g. buys them a rpi) )Lots of "setup" stuff
needs to be explained or at least guided through for a from
scratch approach, but also needs to be easy to skim and skip if
the person learning already knows how to do it.
mstade - 48 minutes ago
I came here to write this exactly. This looks like a nice
resource, the tone is friendly and inviting and the topics are
introduced at a nice pace. Then I thought about my cousin who
I've been trying to teach to program a bit. She's interested and
she's smart, she understands how things work at a conceptual
level and she can design an algorithm. But if I just give her
some JS and ask her to run it she'll stare blankly right back at
me.The introduction needs to talk about prerequisites, setting up
for following along way before getting into the topics. Right now
it's just a (broken) link to the appendix, which I don't think is
good enough.I like this overall though, it's good stuff. I'm
going to try and find some time for a PR to change the
introduction into something I think would be better for a newbie,
and if translations are welcome I might just work on a Swedish
version.
cr0sh - 10 minutes ago
> "Just open Chrome Dev Tools" or "put this in a file and run
Node" are really strange computer tasks to someone who has never
typed and executed code.While not a perfect answer to the issue,
I often tend to wonder whether or not we lost something in the
transition from traditional microcomputers (Apple IIe, Commodore,
TRS-80, etc) to the PC era...?Actually, even in the early PC era,
the PC booted to ROM BASIC; this was how personal microcomputers
worked.That said, in the very early history of personal
computing, with machines like the Altair, IMSAI, and Sol - these
machines "out of the box" (so to speak) didn't drop immediately
into a ROM BASIC or "monitor"; they usually had to be "booted"
off of some paper tape or other storage media hosting the boot
process (I wasn't around during that period, but I wonder if that
was only a part - if you then had to "bootstrap" your way up the
stack to get to something useful? I know on the Altair, unless
you had it set up in ROM to boot from, you had to hand-toggle
some initial boot code in just to read the larger boot process
from paper tape). All of this process was virtually identical to
how commercial and larger systems were booted.But the Apple
changed this, and made the "personal microcomputer" accessible to
the general public. Now, they could power it on, and get to a
prompt of some sort. It still didn't do much, but it wasn't as
arcane. All you had to do was type some stuff...and...you got
something in return: A recipe filing system, a calendar, a poem,
a maze, a game of some sort (Hunt the Wumpus!), etc.This
continued to be the case for (about) a couple of decades - the
first real crack in this was the introduction of the Macintosh,
but most people stuck with the other systems, with the Mac
relegated to the desktop publishing realm mostly (at which it
really excelled). Things started to really change in the late
1980s and early 90s - mainly because of the introduction of more
usable versions of DOS and (later) Windows. Thus, the PC era was
born.People began to stop being creators (of software) and
started to become consumers instead. Not that this was
necessarily a bad thing - there were still creators of course,
but this marked a split; there were now two distinct camps being
formed.With this, though, began the difficulty in teaching
programming - if you didn't know how to get to the interpreter or
compiler, you would have a difficult time learning.So here we are
today. Fortunately, the answer seems to be coming from the web:
There are more than a few sites out there that let you examine,
edit, and run code all from your browser, for more languages than
you might have thought existed (and new ones are added
constantly). It isn't the same as it was (from when I was a kid),
but maybe in a way it is better: Help - whether from others or
from some other resource, is just a few clicks away (no longer do
you have to thumb thru magazines or books trying to formulate an
answer)...
blacksmith_tb - 1 hours ago
I see there's a section on Environment Setup[1] though personally
I might be tempted to just link to other tutorials instead (which
the author also does, I see).1:
https://github.com/bpesquet/thejsway/blob/master/manuscript/...
mgkimsal - 45 minutes ago
> though personally I might be tempted to just link to other
tutorials insteadshort term, perhaps, but longer term, keeping
it in one voice, and making sure those links don't
change/disappear is valuable.
hugs - 1 hours ago
Which method (Chrome Dev Tools, Node, etc.) did you teach to your
students? Any other online resources you recommend?
dotnetkow - 1 hours ago
Saw this on Reddit last night, poked around on a few pages. It's
great! Love the movie list example on this page:
https://github.com/bpesquet/thejsway/blob/master/manuscript/....
Going from "for" loops into map/filter/reduce concepts is an
excellent way to teach!
bpesquet - 9 hours ago
Hi all, author here.Backstory: I'm a CS engineer/teacher and this
book is a side project started in December 2016. You can read a bit
more about it here: https://medium.com/@bpesquet/walk-this-
javascript-way-e9c45a....The writing process is now completed and
I'm actively looking for feedback to make the book better. Any
opinion or advice about content, pricing, or that hastily created
Leanpub cover would be greatly appreciated. However, please keep in
mind that this is a self-published effort still far from being
polished and open to improvement.I'd also like this thread to stay
focused on the book itself, not on the merits/weaknesses of
JavaScript or the usefulness of choosing it as a first programming
language.Thanks in advance!
scarcitykillz - 2 hours ago
It's a great idea and I think the world does need a new book for
pure JS.There was a book released about 10 years ago by the guy
who wrote jQuery. It started with basic JS and went all the way
through to advanced features. It really helped me master JS.Where
I think that book is better then yours is that it focuses
entirely on JS where as you spend a lot of time talking about
http and the web works. Anyone reading your book to learn js will
already know that.An updated version for the modern day of the
book I mentioned earlier would do very well.I don't mean to sound
negative and I applaud your effort and the time you put in to do
it and wish you the best of luck!
mynd - 1 hours ago
I assume a book titled "X from scratch" requires no previous
knowledge for the intended audience. It's hard to talk about
writing apis without knowing the difference between POST and
GET
matthewvincent - 1 hours ago
I definitely wouldn't assume that a JS newbie knows the http
fundamentals. That definitely wasn't the case for me when I
started learning. You can get a lot done on the web without
really understanding what you're doing.
leeoniya - 32 minutes ago
i wrote this a few days ago: https://www.reddit.com/r/Fronten
d/comments/6pconk/a_simple_s...
feiss - 1 hours ago
I love it, very nice. Clean, modern, concise.Are there plans for
translating it in other languages? I'd love to have time to
translate it to spanish, but almost no free time..
axtscz - 1 hours ago
I'd be willing to help with a Spanish translation as well.
specialist - 34 minutes ago
Nice. Thanks for sharing.Bravo for burrito recipe. I'm convinced
I became a programmer in 4th grade. Our creative writing
assignment was instructions for making a peanut butter & jelly
sandwich. Then our teacher followed our instructions literally.
Hilarity ensued.---I think the Intro's link to the local env
setup in the appendix is broken.Anymore, I always check the
colophon first, then decide to proceed.I applaud the online
option.I'm dubious of the local option. "Install the latest XYZ"
will bite you (your students). Especially with JavaScript and
nodejs. Mayflies live longer.For future, should tutorials start
with Docker images, or scripts, or virtualbox images, or
something, to mitigate digital drift? Hoping other commenters
will share their ideas, experiences.
le-mark - 2 hours ago
Very, very nice. I briefly went over some chapters and I especially
admire the 'no framework' approach you've taken. I believe there's
a real need for a book like this, kudos to you for making it
happen! What inspired you to create this?
baalimago - 31 minutes ago
Didn't know "var" was outdated. Good stuff, thanks!