curriculum icon indicating copy to clipboard operation
curriculum copied to clipboard

HashMap: change order of assignments

Open thereisnodeveloper opened this issue 1 year ago • 3 comments

Checks

Describe your suggestion

Assignments under HashMap has two assignments.

The assignment below is a very simplified introduction to the concept of Hash Maps. It should NOT come after the reader has already gone through the entire lesson content (Assumption: reader absorbs content linearly top-down). It would not make sense to have the learner get an ELI5 version only AFTER they've gone through the more difficult/verbose/nuanced explanation of the same thing.

Asssignment in question:

Watch this video from CS50 that explains the concept of hash maps using buckets.

There are multiple possible ways this can be resolved. These are listed in order of Benefit (which is inversely related to Disruptiveness). By Disruptiveness I mean how big of a change something is, or how much the change goes against the convention (which in this case is to have all Assignments at the bottom).

  1. Provide a link to the "CS50" assignment at the very top of the lesson (after Lesson Overview), to use it as a launching point BEFORE the in-house lesson. The language can be something along the lines of "watch this CS50 video for an introduction to the concept of Hash Maps"

    • This IS the most sensible (high Benefit), but Disruptive
    • The link CAN be an internal link TO Assignment section that contains the CS50 video, if we wish to preserve this video as an "Assignment." I do not see the utility in this.
  2. Switch the order of the assignments - make sure the CS50 video is the 1st thing under the Assignment section.

  3. Remove the CS50 video entirely, as it simply provides a redundant explanation that would have been far more useful to the learner at the beginning of this lesson.

Path

Node / JS

Lesson Url

https://www.theodinproject.com/lessons/javascript-hashmap-data-structure#assignment

(Optional) Discord Name

suplexinmyduplex

(Optional) Additional Comments

No response

thereisnodeveloper avatar Sep 22 '24 15:09 thereisnodeveloper

@JoshDevHub Do you have an opinion on this?

CouchofTomato avatar Sep 22 '24 20:09 CouchofTomato

@thereisnodeveloper Thank you for raising this issue!

I'm partial to solution 2 for a couple of reasons.

  1. We've generally come to resist placing resources outside of the Assignment section. This would of course conflict with the first idea.
  2. I don't necessarily think it's a "bad" thing for resources to simplify or reiterate the lesson's content.

Glad to assign you to work on this. Also glad to discuss further if you feel strongly about the merits of a different way forward.

Be sure to implement the same change in the Ruby course's version of this lesson. Don't worry, you don't have to know anything about Ruby to do this.

JoshDevHub avatar Sep 24 '24 16:09 JoshDevHub

Thank you for your comments and assignment @JoshDevHub !

I've done a lot of thinking on this topic, and have been leaning one way since the time when the issue was created. But first would like to understand the reasoning for: "We've generally come to resist placing resources outside of the Assignment section". Will you please clarify or point to past related discussions?

There must have been reoccurring issues or significant costs associated with this practice, so I believe understanding the downsides first would then help us think through the pros-cons.

Many thanks!

thereisnodeveloper avatar Sep 24 '24 20:09 thereisnodeveloper

This issue is stale because it has had no activity for the last 30 days.

github-actions[bot] avatar Nov 02 '24 02:11 github-actions[bot]

@thereisnodeveloper Generally speaking, important reading should be an assignment. Links mid-lesson are still acceptable but preferably, they'd be more like links to definitions or just adding a small amount of context to a specific sentence of paragraph, and less of a general larger-scope reading, as that would suit an assignment better. This keeps those kinds of readings in a single place, rather than being scattered around and potentially missed/confused as to what needs more or less attention.

There are still some lessons where assigned readings are mid-lesson, but they're things that would need addressing separately and potentially need a lot of work to rewrite accordingly (and so are lower priority for now). For new work, we'd favour the above approach.

Since you've been assigned to this issue and #28865, you can work on them and any further discussion can take place in the relevant PR(s) if needed.

mao-sz avatar Sep 04 '25 13:09 mao-sz

Closing due to inactivity

mao-sz avatar Nov 12 '25 05:11 mao-sz