Skip to content

Commit

Permalink
Merge pull request #11 from manuGil/review
Browse files Browse the repository at this point in the history
Notes to Lesson 4
  • Loading branch information
manuGil authored Sep 6, 2024
2 parents 56e14f3 + 1830b09 commit 8bf50e8
Show file tree
Hide file tree
Showing 8 changed files with 110 additions and 63 deletions.
2 changes: 1 addition & 1 deletion gitcodev/_config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

title: Version Control and Collaborative Development for Research Software
author: Manuel G. Garcia Alvarez and Giordano Lipari
logo: ascii-gitcodev.png
logo: ../img/ascii-gitcodev.png

# Force re-execution of notebooks on each build.
# See https://jupyterbook.org/content/execute.html
Expand Down
34 changes: 33 additions & 1 deletion gitcodev/_toc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,42 @@ parts:
- file: curriculum
- file: teaching
- file: schedule
- caption: Lessons
- caption: Lecture Notes
chapters:
- file: lesson1
- file: lesson2
- file: lesson3
- file: lesson4
- caption: Exercises
chapters:
- file: exercises/L1-ex01
- file: exercises/L1-ex02
- file: exercises/L1-ex03
- file: exercises/L1-ex04
- file: exercises/L1-ex05
- file: exercises/L1-ex06
- file: exercises/L1-ex07
- file: exercises/L1-ex08
- file: exercises/L1-ex09
- file: exercises/L1-ex10
- file: exercises/L2-ex01
- file: exercises/L2-ex02
- file: exercises/L2-ex03
- file: exercises/L2-ex04
- file: exercises/L2-ex05
- file: exercises/L3-ex01
- file: exercises/L3-ex02
- file: exercises/L3-ex03
- file: exercises/L3-ex04
- file: exercises/L3-ex05
- file: exercises/L4-ex01










8 changes: 4 additions & 4 deletions gitcodev/curriculum.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,11 +131,11 @@ This course is organised into lessons, episodes and topics. The course consists
| --- | Code Reviews |
| --- | Contributing Guidelines |
| **4.2** | **Licensing and Citation** |
| --- | Open source Licenses |
| --- | Citation |
| --- | Open Source Licenses |
| --- | Software Citation |
| **4.3** | **Releasing Software** |
| --- | Semantic versioning |
| --- | Softare Releases |
| --- | Semantic Versioning |
| --- | Software Releases |
```
````
16 changes: 16 additions & 0 deletions gitcodev/exercises/L4-ex01.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@

# Lesson 4 Recapitulation --- Implement a Collaborative workflow
**Time: 15 min**

Working in teams, define and implement a workflow of your choice (branching/forking) to collaborate in a repository. Names between `[]` indicate who in the team should engage in each activity.

1. [**Administrator**] create a repository for the team using the template: https://github.com/the-magnificents/collab-review
2. [**Team**] discuss and agree on which workflow to implement for this exercise.
3. [**Team**] each member choses one task from the `faircode-checklist.md` and make changes.
4. [**Team**] each member opens a pull request to the `main` branch with the their changes **Important: do not merge.**
5. [**Team**] each member makes some other changes to the repository, commits and push.
6. [**Team**] go back to your pull request and see how the latest changes affected your pull request. **Do not merge.**

```{attention}
The collab-review repo is missing. This seems to be a fork of it. But the faircode-checklist.md is not there. https://github.com/xaurado/super_software
```
60 changes: 56 additions & 4 deletions gitcodev/lesson4.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,66 @@
# LESSON 4: Managing Collaboration and Best Practices

**Presentation:** *[Collaboration and best practices](https://docs.google.com/presentation/d/1TvWIrBsVNwmEyvZodd4V7gueATeECKMubUqSSYKMyuU/edit?usp=sharing)*
Lecture notes for the lesson on managing collaboration and best practices.
Most of the content in this lesson aims to present some best-practices for developing research software and lead an open discussion about when to apply them.

Lecture notes for the lesson on collaborative software development.
Most of the content in this lesson uses the presentation. We present best-practices and lead an open discussion.
These notes contains the following pointers for the instructor:

## Code Reviews
* Numbers between `[]` are indicative of how much time should be spend in each topic or exercise to keep in track with the lesson [schedule.](schedule.md)
* The text in **Instructor note** contain explanations or reminders for the instructor. For example:
`````{admonition} Instructor's Note
An SSH key must be set to push changes to a remote repository in GitHub.
`````
````{card}
Presentation
^^^
This contains general information about the lesson and illustrations for supporing the explanations of some of the concepts, and
*[Collaborative software development](https://docs.google.com/presentation/d/1TvWIrBsVNwmEyvZodd4V7gueATeECKMubUqSSYKMyuU/edit?usp=sharing)*
````
## i. Recapitulation: Collaborative Workflows
Participants complete a group exercise to recap the content of Lesson 3.
````{card}
Exercise --- Implement a Collaborative Workflow
^^^
```{include} exercises/L4-ex01.md
```
```{dropdown} Answers
No answer are provided for this exercise.
```
````
## Episode 1: Managing Collaboration
### 4.1.1. Code Reviews
> This lesson will be completed later.
### 4.1.2. Contributing Guidelines
## Episode 2: Licensing and Citation
### 4.2.1. Open Source Licenses
### 4.2.2. Software Citation
## Episode 3: Releasing Software
### 4.3.1. Semantic Versioning
### 4.3.1. Software Releases
#### 5. EXERCISE 6.
Expand Down
53 changes: 0 additions & 53 deletions gitcodev/markdown-notebooks.md

This file was deleted.

Empty file added gitcodev/references.bib
Empty file.
File renamed without changes

0 comments on commit 8bf50e8

Please sign in to comment.