TheOdinProject / css-exercises

MIT License
1.62k stars 68.25k forks source link

All exercises: Restucture folders so they reflect the structure of the curriculum #593

Open Eduardo06sp opened 1 week ago

Eduardo06sp commented 1 week ago

Complete the following REQUIRED checkboxes:

The following checkbox is OPTIONAL:


1. Description of the Feature Request:

There are multiple users (from the Discord) that accidentally worked through more advanced exercises. I believe that structuring the css-exercises repo similar to the curriculum's structure would serve as a bit of a "fail-safe".

It will also make it easier for everyone else to navigate to the correct exercises.

i.e. Instead of the folders being laid out like they currently are:

animation  flex  foundations  grid  margin-and-padding

we can structure them just like they appear in the curriculum:

foundations  intermediate-html-and-css  advanced-html-and-css

and the nesting can go deeper if deemed necessary.

However, the drawback is that any potential, future updates to the curriculum's structure will require an update in the css-exercises repo as well. This will, in a way, "couple" this repo's layout to the curriculum's layout.

2. Acceptance Criteria:

N/A

3. Additional Information:

Relevant PR that helped address this concern: https://github.com/TheOdinProject/curriculum/pull/28754

I prefer that a first-time/new contributor takes this one. If no one volunteers after some time, I will likely ask to be assigned to this if the suggestion is accepted.

abhilash15500 commented 1 week ago

Hey @Eduardo06sp

This makes a lot of sense to have a folder structure this way: foundations, intermediate-html-and-css, advanced-html-and-css.

A little bit different perspective from my side👇🏼

The problem - From a Foundations student’s point of view, what was happening before the recent PR changes is that the student would complete exercises 1 to 6, then go back to the main directory and click the animations folder, as it was the first visible option after pressing back. Since they were unaware, they naturally clicked the animations folder and got stuck.

The update - Now, with the updated assignment, which is split into Step 1 and Step 2, we still leave the learner with the full directory (i.e., we show them all the folders). However, this time we ask them to read the README file.

My thoughts on @Eduardo06sp solution - What @Eduardo06sp said works and it twould give a lot of clarity but when we show them root folder directory I still know atleast 5/100 are going to still go to intermediate html css folder.

A solution - Of course, they can still click on the root directory if they want, but if they click on Step 1, they should be given a link to the README file like this: https://github.com/TheOdinProject/css-exercises/blob/main/README.md, and in Step 2, we have already properly linked them to the Foundations directory.

Why this solution - We can minimize the chances of them navigating to the root directory and accessing the flex or animations folders. They still have access, but it's less likely they'll end up there compared to the current setup, where Step 1 links to the directory containing the animations folder, which a new learner might instinctively click on.