Feedback on JS 4 (APIs part 1)
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
eventworks within the example code wheneis 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
showUserfunction this is not available. - Overall the responsibility of
showUseris weird because it takes an instance ofXMLHttpRequest, not a user. When we switched to async it was obvious to create a second callback ofshowError, 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
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from codebar/tutorials
-
Difficulty 1/5 Under an hour Newbie friendliness 75/100
-
Difficulty 3/5 1-2 days Newbie friendliness 62/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 25/100
-
Difficulty 3/5 1-2 days Newbie friendliness 25/100
-
Difficulty 1/5 Under an hour Newbie friendliness 45/100
All issues in codebar/tutorials
Similar issues
-
bug customer-eng Durable Agents Inngest status: needs triage
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
optimization optimization:agents-md-curator
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
githubnext/gh-aw-cao#13475 ·
-
[BUG]: "Clear All" in Settings doesn't clear the saved analysis, old data comes back after reload Openbug
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
AOSSIE-Org/OrgExplorer#253 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
oxc-project/oxc#26944 ·
-
ai-observability bug team/ai-observability
Difficulty 2/5 1-3 hours Newbie friendliness 78/100