workshopper / list

A central catalog of existing, planned and requested workshoppers
14 stars 7 forks source link

EventEmitter workshop #32

Open grabbou opened 9 years ago

grabbou commented 9 years ago

Repo: https://github.com/grabbou/nodeschool-eventemitter

Not sure if this part has been already covered somewhere, but was thinking that we might want to create additional workshop to cover this field.

What you think?

Some simple topics that might be worth explaining during such a workshop:

Languges to start with:

If anyone feels native in others, let me know and let's do it together!

martinheidegger commented 9 years ago

:+1:

grabbou commented 9 years ago

@martinheidegger would you mind leaving some feedback on my first lessons?

Trying to make it as easy and understandable as possible :)

The basic idea was to make study-events as easy as possible to show all basic methods available, like on, once, setMaxListeners or removeListener.

Not sure if 'story-telling' approach is a good one, but I personally think it might be more enjoyable to follow something meaningful than just 'create event emitter that will listen to data event' :)

martinheidegger commented 9 years ago

Need to sleep, will look at it tomorrow!

grabbou commented 9 years ago

Thanks! #timezone Have a good night then :+1:

martinheidegger commented 9 years ago

Okay, I read over this. I feel like it needs a lot of work. (sorry to say that but this might be a little harsh review, be sure that I like your effort a lot!):

  1. The task (what the user has to do) is not clear. It needs to be a lot more straight forward: i.e. "You have to write javascript file that exports a method with following signature: ... The method should do X"
  2. You should assume that the person that reads this didn't start learnyounode and probably not even javascripting. What is a "Class"? etc. should be explained.
  3. It is nice that you create a story arc but I think the arc should A) be mentioned as such "Entertaining Storyline" or so. and B) it should not be used to make the understanding of your tasks cloudy: i.e.: "your phone will call you every time " should be something like: "the phone EventEmitter will send a 'call' event every time"
  4. "message of your choice" will be hard to verify if done correct: i.e. "" is a message of my choice ...
  5. "... and print message ... " is a unclear term. Should the user write a message to stdout?
martinheidegger commented 9 years ago

Another thing: the workshop (imho) should cover event zalgo's :)

grabbou commented 9 years ago

Hey, thanks for your review. I appreciate your feedback as this is my first workshop ever! I do agree with your points, its kinda unclear sometimes what user should do. Would you think its worth sticking to the story as long as I fix those unclear parts and create some introduction or shall I just write plain JavaScript tasks? I am still a bit unsure whether that's the correct approach...

Maybe I just should leave short story like introduction to each problem and describe task more technically in the goal section? Like - ok, it's cool I need to order pizzas but in goal there's actually written that I need to listen / emit few events on phone event emitter.

I am going to put everything into introduction.md file and add some further explanations to each problem then. New version should be available by tomorrow :)

martinheidegger commented 9 years ago

My general suggestion is: "first make it work then make it fun" ... :) ... You can keep the story if you like. But only if the thing still works :)

grabbou commented 9 years ago

Cool, so I'll follow the general suggestion to make solutions first and then let's focus on proper problems descriptions. In terms of problems - do you think they cover enough of Event Emitter features?

Thanks again for taking a look at it! I'll focus on better problems now, try to finish all of them and then will bump this topic again.

grabbou commented 9 years ago

A quick update -> I am going to resubmit a new, improved version this week, so stay tuned.