GOPHERSPACE.DE - P H O X Y
gophering on hngopher.com
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!