Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Feedback on JS 4 (APIs part 1)

Open
#262 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
30/100
Issue type
Documentation
Clarity
Needs clarification
Activity status
Stale
Tech stack
javascript
Domain
documentation

Research direction

Start by reviewing JS 4 (APIs part 1), especially the script.js examples and the showUser/showError callbacks. Compare the synchronous and async sections, then assess how the functions and exercises are introduced. Done means the tutorial explains code placement and wiring clearly, handles the reported callback issues, and has a manageable exercise flow.

Written by the indexing model from the issue text.

Description

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.

Dominant language
JavaScript
Stars
268
Forks
240
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from codebar/tutorials

All issues in codebar/tutorials

Similar issues

More JavaScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.