Sequoia / clijs

Nodeschool lesson-set for learning to build shell tools with javascript
GNU General Public License v3.0
5 stars 0 forks source link

Pipes #6

Closed Sequoia closed 9 years ago

Sequoia commented 9 years ago

How to accept an incoming stream, specifically output of another program piped into the user's program. Goal is to have >1 incoming chunk while keeping it as simple as possible.

also

recommend/link to stream-adventure in the docs for people who want to learn more about streams.

ghost commented 9 years ago

@Sequoia follow up on this? Are we done with this one?

Sequoia commented 9 years ago

Yeah sry didn't have time to try it this weekend! Will do presently :)

ghost commented 9 years ago

Do you think that we should mix this with arguments to support something like this?

cat macbeth.txt | solution.js --word=thou

Multiple tests could assert that the program displays the correct lines for a variety of --word arguments

Sequoia commented 9 years ago

hmmmmmm..... my knee jerk reaction is KISS & leave that out, as I outline here, but in that case the proposal was introducing hapi whereas in this it's building on/reinforcing an existing concept.

Yeah I say "do it" :+1: :ok_hand: :smiley_cat:

ghost commented 9 years ago
Sequoia commented 9 years ago

all done?!

Sequoia commented 9 years ago

I'll review when I get a chance sry for delay!

Sequoia commented 9 years ago

wrt boilerplate.js I think it might be better to move some of that into the Example section of the Readme: learners should have to type at least some of that in themselves for the purposes of rote. Also I'm trying to keep English strings out of the boilerplate/solution as much as possible to ease eventual i18n. :pray:

Sequoia commented 9 years ago

Notes

My Impression

I'd probably say that this lesson is "too hard" as it currently stands. It took me a minute to figure it out and I'm reasonably good at this stuff. I want to carefully avoid (as much as possible) learners getting "stuck", and I think this lesson would get people a lot of people stuck.

Proposal

  1. Focus-group it some on IRC
  2. Add hints
  3. Find ways to make this one "easier"
Sequoia commented 9 years ago

Will create new ticket for revisions. Initial version is :+1: done.