Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feedback on JS 4 (APIs part 1) #262

Open
samsworldofno opened this issue Feb 23, 2016 · 2 comments
Open

Feedback on JS 4 (APIs part 1) #262

samsworldofno opened this issue Feb 23, 2016 · 2 comments

Comments

@samsworldofno
Copy link
Contributor

I coached this last week and had the following notes:

  • It wasn't initially clear where the JavaScript had to be written. Earlier tutorials have it written straight into the console - it wasn't obvious to the student that the code needed to go into a script.js.
  • It's not clear why event works within the example code when e is the passed argument in $(document).on('keypress', '#username', function(e).
  • When skim reading the tutorial, as students often do, it's not clear how to wire the various functions together. That said, I believe that encouraging this thinking is useful at this point, so maybe that's ok. It just might be worth explaining in the text how the wiring between functions should work for those that do read/are not being coached
  • It confused the student when they had to replace an existing function with an expanded version
  • If the user is not found on GitHub, we ask to show an error with the username... but within the showUser function this is not available.
  • Overall the responsibility of showUser is weird because it takes an instance of XMLHttpRequest, not a user. When we switched to async it was obvious to create a second callback of showError, but again sending the username to that callback is non-trivial without using a closure which the student is likely not ready for.

Overall the tutorial is flowing better since the recent rewrite, and I think the decision to do the github request synchronously at first is sound. That said, I think it would be better to more explicitly "break" the code by switching it to async and letting the student understand the problems that follow with code that relies on blocking.

One last thing: you never, EVER get to the second exercise, even with an advanced student and 1:1 coaching. Perhaps it needs splitting? That said, this is an issue with several tutorials (eg intro to jQuery) and students are used to continuing the same module over several weeks. It just might give a better sense of achievement to "finish" a tutorial and then move on, as is possible in HTML and CSS.

@samsworldofno
Copy link
Contributor Author

Tagging @jkbits1 :)

@jkbits1
Copy link
Contributor

jkbits1 commented Feb 23, 2016

@samsworldofno thanks, I'll take a look and add some comments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants