CampJS III Workshoppers #323

Closed
timoxley opened this Issue Jun 7, 2014 · 7 comments

Projects

None yet

5 participants

@timoxley timoxley changed the title from CampJS Workshoppers to CampJS III Workshoppers Jun 7, 2014
@timoxley
timoxley commented Jun 7, 2014

Would be great if people could review/critique these (cc @brianloveswords) and then get them added to the site.

@rvagg
rvagg commented Jun 7, 2014

They should be done as pull requests to the NodeSchool site. They can be reviewed then.

@maxogden
Contributor
maxogden commented Jun 7, 2014

heres some feedback on Planet Proto by @sporto

  • teaching using proto has confusing drawbacks. e.g. y = {foo: 'bar'}, x.__proto__ = y;, console.log(x) results in '{}' instead of {"foo": "bar"}
  • the planetproto run solution.js command doesnt work for me, it errors with 'ReferenceError: claim is not defined'
  • claim(robot.smart, ___), I was first confused about the "____", and maybe thought it was a variable that I shouldn't edit
  • 'dont touch module.exports' and the whole pre-generated solution file strays from how the other nodeschool works, feels a bit too much 'paint by numbers'. for the last half I ended up not having to read the terminal output at all and just read the instructions in the generated file
  • "Unfortunately proto is not part of the standard interface of JavaScript, not at least until ES6. So you shouldn't use it in production code" this section could use more explaining since it is used in most of the workshopper... e.g. the complexities of knowing what ES6 is and when/how to use it may confuse people who are first learning JavaScript
  • for me it created 0101.js and 010.js (and 0201.js and 020.js etc). what are the 0101 and 0201 files for? seems like a bug
  • many of the challenges are very similar to setup, e.g. the user has to do var machine = {}, var robot = {}, var vehicle = {} in almost every challenge
  • in challenge 5 it states 'Set the prototype of both robot and vehicle to machine' twice
  • Add a 'core' part to robot by doingrobot.parts.push('core')` - having the user copy paste the answer doesn't seem ideal
  • The popularity of constructor functions comes from the fact that this was the only original way for constructing types initially. i'm unclear on what this sentense is trying to convey (what are the takeaways of this? seems kind of opinionated)
  • The use cases for constructor functions, Object.create and proto as they relate to each other are never discussed
  • I got a bit confused on the very last challenge and wasn't sure exactly what it was asking me to do. I was trying to figure out what it was trying to teach me, and felt that the problem itself would have been better if it had obvious practical value (e.g. not as abtract as robots with parts etc but something more concrete)
@sporto
sporto commented Jun 8, 2014

@maxogden thanks for the feedback.

For the moment I will put all these as issues in my repo and then a address them one by one. I will send a PR when done.

@martinheidegger
Contributor

@sporto Probably done, right?

@sporto
sporto commented Jan 20, 2015

@martinheidegger yes I added these are issues to my repo (and done most of them)

@martinheidegger
Contributor

@sporto thanks! closing this issue then.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment