diff --git a/02_activities/practice/git_advanced.md b/02_activities/practice/git_advanced.md new file mode 100644 index 0000000..c34eec2 --- /dev/null +++ b/02_activities/practice/git_advanced.md @@ -0,0 +1,37 @@ +# Git Advanced Practice Problem + +**Note**: Practice problems are not assessed and are provided for your own personal practice. Feel free to discuss these with your peers and learning support during work sessions! + +## Tasks +The `dtxe/DSI_git_assignment` repository contains a short Python script that +loads the TTC Bus Delay dataset, computes the average delay by route, then +plots the average delay as a histogram. +s +1. Clone this repository: https://github.com/dtxe/DSI_git_assignment + * `git clone` + +### Task 1 +Unfortunately, this code has a bug that would prevent it from working. +Fortunately, the bug has been fixed in the `bugfix1` branch. We will +get this code working by merging the fixes. + +1. Check the current status and commit history + * `git status` and `git log` +2. Merge the `bugfix1` branch into the main branch + +### Task 2 +We've also been working on an additional feature in a separate branch. +This allows us to aggregate the data by any arbitrary column in the DataFrame, not just the route. + +Let's merge this feature in. + +1. Merge the `feature1` branch into the main branch. + +### Task 3 +Uh oh! It looks like there's a merge conflict between the bugfix and the new feature! + +1. Resolve the merge conflict in your choice of editor + * We suggest using VSCode! +2. Complete the merge after fixing the conflict. + + diff --git a/02_activities/practice/git_basics.md b/02_activities/practice/git_basics.md new file mode 100644 index 0000000..1fd76e2 --- /dev/null +++ b/02_activities/practice/git_basics.md @@ -0,0 +1,5 @@ +# Git Basic Practice Problems + +Load the basic practice problems in your browser here: https://uoft-dsi.github.io/git/interactive_problems.html#git_basics + +**Note**: Practice problems are not assessed and are provided for your own personal practice. Feel free to discuss these with your peers and learning support during work sessions! diff --git a/02_activities/practice/git_moderate.md b/02_activities/practice/git_moderate.md new file mode 100644 index 0000000..405cb3a --- /dev/null +++ b/02_activities/practice/git_moderate.md @@ -0,0 +1,32 @@ +# Git Moderate Practice Problem + +**Note**: Practice problems are not assessed and are provided for your own personal practice. Feel free to discuss these with your peers and learning support during work sessions! + +## Tasks +### Task 1 +1. Create a new directory named `githomework1`. +2. Initialize an empty git repository with `git init`. +3. Using your choice of text editor, create a README.md file. +4. Using the git command line, add this file to staging, then commit the file to your repository with a suitable commit message. + * `git add ` then `git commit` +5. Write a suitable commit message and finalize your commit +8. Show the commit history + * `git log` + + +### Task 2 +1. Create a new public repository on GitHub +2. Add your GitHub repository as a remote for your local `githomework1` repository + * `git remote add origin ` +3. Push your local `githomework1` repository to GitHub + + +### Task 3 +1. Create a new branch called `playing-with-bash` +2. Create 5 text files with the names up to you, and with placeholder contents +4. Stage, commit and push your work on GitHub +5. Open up a pull request + +### Task 4 +1. Explore your repository on GitHub and check that all your files and commit messages are here. + * If not, did you push all your branches? diff --git a/03_instructional_team/githubpages/interactive_problems.html b/03_instructional_team/githubpages/interactive_problems.html index f225972..9844b47 100644 --- a/03_instructional_team/githubpages/interactive_problems.html +++ b/03_instructional_team/githubpages/interactive_problems.html @@ -23,7 +23,7 @@ pre { margin: 2.5rem 0; } - + .problem { margin-bottom: 100px; padding: 10px; @@ -40,7 +40,6 @@ padding: 15px; margin-bottom: 20px; } - .multiple-choice-option { display: inline-block; } @@ -54,7 +53,6 @@ .multiple-choice-option pre>code { padding: .2rem .5rem; } - .freeform-textbox { width: 100%; height: 200px; @@ -112,7 +110,6 @@ background-color: #d1ecf1; border-color: #4f8a93; } - .sol_incorrect { text-decoration: line-through; color: red; @@ -195,7 +192,7 @@

const label = document.createElement("label"); label.style.display = "flex"; label.style.alignItems = "center"; - + const radio = document.createElement("input"); radio.type = "radio"; radio.name = "problem_" + index; @@ -219,6 +216,7 @@

// Left column for draggable items const leftCol = document.createElement("div"); leftCol.className = "parsons-left"; + const leftColTitle = document.createElement("b"); leftColTitle.innerText = "Select from the list below by dragging"; leftCol.appendChild(leftColTitle); @@ -226,11 +224,11 @@

// Right column as drop zone const rightCol = document.createElement("div"); rightCol.className = "parsons-right"; + const rightColTitle = document.createElement("b"); rightColTitle.innerText = "Drop code here in the correct order"; rightCol.appendChild(rightColTitle); - if (problem.options && Array.isArray(problem.options)) { // Store the original index before shuffling problem.options = problem.options.map((option, idx) => ({ option, idx })); diff --git a/README.md b/README.md index 5b7e434..aadab35 100644 --- a/README.md +++ b/README.md @@ -29,17 +29,13 @@ By the end of the module, participants will be able to: ## Activities This module has two types of activities. 1. Assignments are mandatory, and form part of your evaluation. -1. Homework is not assessed, but are provided to you for extra practice. We encourage you to check each other's homework solutions during Work Periods or ask a Learning Support! +1. Practice problems are not assessed, but are provided to you for extra practice. We encourage you to check each other's solutions during Work Periods or ask a Learning Support! ### Assignments -Participants should review the [Assignment Submission Guide](https://github.com/UofT-DSI/onboarding/blob/main/onboarding_documents/submissions.md) for instructions on how to complete assignments in this module. +The assignment for the Git module is combined with the Shell module. Please find it at https://github.com/UofT-DSI/shell/tree/main/02_activities/assignments -Assignments are typically due on the Sunday following the module's live learning session. - -1. [Git Assignment](./02_activities/assignments/git_assignment.md) - -### Homework -1. [Git Homework](./02_activities/homework/git_homework_1.md) +### Practice problems +1. [Git Practice Problems](./02_activities/practice/) ## Contacts @@ -59,7 +55,7 @@ Assignments are typically due on the Sunday following the module's live learning   ## Delivery of the Learning Module -This module will include live learning sessions and optional, asynchronous work periods. During live learning sessions, the Technical Facilitator will introduce and explain key concepts and demonstrate core skills. Learning is facilitated during this time. Before and after each live learning session, the instructional team will be available for questions related to the core concepts of the module. Optional work periods are to be used to seek help from peers, the Learning Support team, and to work through the homework and assignments in the learning module, with access to live help. Content is not facilitated, but rather this time should be driven by participants. We encourage participants to come to these work periods with questions and problems to work through. +This module will include live learning sessions and optional, asynchronous work periods. During live learning sessions, the Technical Facilitator will introduce and explain key concepts and demonstrate core skills. Learning is facilitated during this time. Before and after each live learning session, the instructional team will be available for questions related to the core concepts of the module. Optional work periods are to be used to seek help from peers, the Learning Support team, and to work through the practice problems and assignments in the learning module, with access to live help. Content is not facilitated, but rather this time should be driven by participants. We encourage participants to come to these work periods with questions and problems to work through.   Participants are encouraged to engage actively during the learning module. They key to developing the core skills in each learning module is through practice. The more participants engage in coding along with the instructional team, and applying the skills in each module, the more likely it is that these skills will solidify. @@ -139,7 +135,7 @@ Feel free to use the following as resources: * **.github**: Contains issue templates and pull request templates for the repository. * **materials**: Module slides and interactive notebooks (.ipynb files) used during learning sessions. -* **activities**: Contains graded assignments, exercises, and homework to practice concepts covered in the learning module. +* **activities**: Contains graded assignments and ungraded practice problems * **instructional_team**: Resources for the instructional team. * **this_cohort**: Additional materials and resources for this cohort. * **.gitignore**: Files to exclude from this folder, specified by the Technical Facilitator