Skip to content

Commit a6e9550

Browse files
authored
Merge branch 'main' into dimitrios-issues
2 parents 9df1f45 + 7dbc3e3 commit a6e9550

File tree

4 files changed

+107
-121
lines changed

4 files changed

+107
-121
lines changed

CODE_OF_CONDUCT.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,5 @@ Instances of abusive, harassing, or otherwise unacceptable behavior
99
may be reported by following our [reporting guidelines][coc-reporting].
1010

1111

12-
[coc-reporting]: https://docs.carpentries.org/topic_folders/policies/incident-reporting.html
13-
[coc]: https://docs.carpentries.org/topic_folders/policies/code-of-conduct.html
12+
[coc-reporting]: https://docs.carpentries.org/policies/coc/incident-reporting.html
13+
[coc]: https://docs.carpentries.org/policies/coc/

episodes/04-changes.md

+4-7
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,10 @@ You should be in the `recipes` directory.
2727
$ cd ~/Desktop/recipes
2828
```
2929

30-
Let's create a file called `guacamole.md` that contains the basic structure to
31-
have a recipe.
30+
Let's create a file called `guacamole.md` that contains the basic structure of a recipe.
3231
We'll use `nano` to edit the file;
3332
you can use whatever editor you like.
34-
In particular, this does not have to be the `core.editor` you set globally earlier. But remember, the steps to create create or edit a new file will depend on the editor you choose (it might not be nano). For a refresher on text editors, check out ["Which Editor?"](https://swcarpentry.github.io/shell-novice/03-create.html#which-editor) in [The Unix Shell](https://swcarpentry.github.io/shell-novice/) lesson.
33+
In particular, this does not have to be the `core.editor` you set globally earlier. But remember, the steps to create or edit a new file will depend on the editor you choose (it might not be nano). For a refresher on text editors, check out ["Which Editor?"](https://swcarpentry.github.io/shell-novice/03-create.html#which-editor) in [The Unix Shell](https://swcarpentry.github.io/shell-novice/) lesson.
3534

3635
```bash
3736
$ nano guacamole.md
@@ -577,9 +576,7 @@ Two important facts you should know about directories in Git.
577576
Note, our newly created empty directory `cakes` does not appear in
578577
the list of untracked files even if we explicitly add it (*via* `git add`) to our
579578
repository. This is the reason why you will sometimes see `.gitkeep` files
580-
in otherwise empty directories. Unlike `.gitignore`, these files are not special
581-
and their sole purpose is to populate a directory so that Git adds it to
582-
the repository. In fact, you can name such files anything you like.
579+
in otherwise empty directories. The sole purpose of `.gitkeep` files is to populate a directory so that Git adds it to the repository. The name `.gitkeep` is just a convention, and in fact, you can name these files anything you like.
583580

584581
2. If you create a directory in your Git repository and populate it with files,
585582
you can add all files in the directory at once by:
@@ -817,4 +814,4 @@ $ git diff me.txt
817814
- `git commit` saves the staged content as a new commit in the local repository.
818815
- Write a commit message that accurately describes your changes.
819816

820-
::::::::::::::::::::::::::::::::::::::::::::::::::
817+
::::::::::::::::::::::::::::::::::::::::::::::::::

episodes/05-history.md

+2-7
Original file line numberDiff line numberDiff line change
@@ -62,11 +62,7 @@ index b36abfd..0848c8d 100644
6262
+An ill-considered change
6363
```
6464

65-
which is the same as what you would get if you leave out `HEAD` (try it). The
66-
real goodness in all this is when you can refer to previous commits. We do
67-
that by adding `~1`
68-
(where "~" is "tilde", pronounced [**til**\-d*uh*])
69-
to refer to the commit one before `HEAD`.
65+
Note that `HEAD` is the default option for `git diff`, so omitting it will not change the command's output at all (give it a try). However, the real power of `git diff` lies in its ability to compare with previous commits. For example, by adding `~1` (where "~" is "tilde", pronounced [**til**\-d*uh*]), we can look at the commit before `HEAD`.
7066

7167
```bash
7268
$ git diff HEAD~1 guacamole.md
@@ -433,8 +429,7 @@ So, when `git commit -m "My opinions about the red sauce"` is executed,
433429
the version of `ketchup.md` committed to the repository is the one from the staging area and
434430
has only one line.
435431

436-
At this time, the working copy still has the second line (and
437-
`git status` will show that the file is modified). However, `git restore ketchup.md`
432+
At this time, the working copy still has the second line (and `git status` will show that the file is modified). However, `git restore ketchup.md`
438433
replaces the working copy with the most recently committed version of `ketchup.md`.
439434
So, `cat ketchup.md` will output
440435

episodes/11-licensing.md

+99-105
Original file line numberDiff line numberDiff line change
@@ -1,105 +1,99 @@
1-
---
2-
title: Licensing
3-
teaching: 5
4-
exercises: 0
5-
---
6-
7-
::::::::::::::::::::::::::::::::::::::: objectives
8-
9-
- Explain why adding licensing information to a repository is important.
10-
- Choose a proper license.
11-
- Explain differences in licensing and social expectations.
12-
13-
::::::::::::::::::::::::::::::::::::::::::::::::::
14-
15-
:::::::::::::::::::::::::::::::::::::::: questions
16-
17-
- What licensing information should I include with my work?
18-
19-
::::::::::::::::::::::::::::::::::::::::::::::::::
20-
21-
When a repository with source code, a manuscript or other creative
22-
works becomes public, it should include a file `LICENSE` or
23-
`LICENSE.txt` in the base directory of the repository that clearly
24-
states under which license the content is being made available. This
25-
is because creative works are automatically eligible for intellectual
26-
property (and thus copyright) protection. Reusing creative works
27-
without a license is dangerous, because the copyright holders could
28-
sue you for copyright infringement.
29-
30-
A license solves this problem by granting rights to others (the
31-
licensees) that they would otherwise not have. What rights are being
32-
granted under which conditions differs, often only slightly, from one
33-
license to another. In practice, a few licenses are by far the most
34-
popular, and [choosealicense.com](https://choosealicense.com/) will
35-
help you find a common license that suits your needs. Important
36-
considerations include:
37-
38-
- Whether you want to address patent rights.
39-
- Whether you require people distributing derivative works to also
40-
distribute their source code.
41-
- Whether the content you are licensing is source code.
42-
- Whether you want to license the code at all.
43-
44-
Choosing a license that is in common use makes life easier for
45-
contributors and users, because they are more likely to already be
46-
familiar with the license and don't have to wade through a bunch of
47-
jargon to decide if they're ok with it. The [Open Source
48-
Initiative](https://opensource.org/licenses) and [Free Software
49-
Foundation](https://www.gnu.org/licenses/license-list.html) both
50-
maintain lists of licenses which are good choices.
51-
52-
[This article][software-licensing] provides an excellent overview of
53-
licensing and licensing options from the perspective of scientists who
54-
also write code.
55-
56-
At the end of the day what matters is that there is a clear statement
57-
as to what the license is. Also, the license is best chosen from the
58-
get-go, even if for a repository that is not public. Pushing off the
59-
decision only makes it more complicated later, because each time a new
60-
collaborator starts contributing, they, too, hold copyright and will
61-
thus need to be asked for approval once a license is chosen.
62-
63-
::::::::::::::::::::::::::::::::::::::: challenge
64-
65-
## Can I Use Open License?
66-
67-
Find out whether you are allowed to apply an open license to your software.
68-
Can you do this unilaterally,
69-
or do you need permission from someone in your institution?
70-
If so, who?
71-
72-
73-
::::::::::::::::::::::::::::::::::::::::::::::::::
74-
75-
::::::::::::::::::::::::::::::::::::::: challenge
76-
77-
## What licenses have I already accepted?
78-
79-
Many of the software tools we use on a daily basis (including in this workshop) are
80-
released as open-source software. Pick a project on GitHub from the list below, or
81-
one of your own choosing. Find its license (usually in a file called `LICENSE` or
82-
`COPYING`) and talk about how it restricts your use of the software. Is it one of
83-
the licenses discussed in this session? How is it different?
84-
85-
- [Git](https://github.com/git/git), the source-code management tool
86-
- [CPython](https://github.com/python/cpython), the standard implementation of the Python language
87-
- [Jupyter](https://github.com/jupyter), the project behind the web-based Python notebooks we'll be using
88-
- [EtherPad](https://github.com/ether/etherpad-lite), a real-time collaborative editor
89-
90-
91-
::::::::::::::::::::::::::::::::::::::::::::::::::
92-
93-
[software-licensing]: https://doi.org/10.1371/journal.pcbi.1002598
94-
95-
96-
:::::::::::::::::::::::::::::::::::::::: keypoints
97-
98-
- The `LICENSE`, `LICENSE.md`, or `LICENSE.txt` file is often used in a repository to indicate how the contents of the repo may be used by others.
99-
- People who incorporate General Public License (GPL'd) software into their own software must make the derived software also open under the GPL license if they decide to share it; most other open licenses do not require this.
100-
- The Creative Commons family of licenses allow people to mix and match requirements and restrictions on attribution, creation of derivative works, further sharing, and commercialization.
101-
- People who are not lawyers should not try to write licenses from scratch.
102-
103-
::::::::::::::::::::::::::::::::::::::::::::::::::
104-
105-
1+
---
2+
title: Licensing
3+
teaching: 5
4+
exercises: 0
5+
---
6+
7+
::::::::::::::::::::::::::::::::::::::: objectives
8+
9+
- Explain why adding licensing information to a repository is important.
10+
- Choose a proper license.
11+
- Explain differences in licensing and social expectations.
12+
13+
::::::::::::::::::::::::::::::::::::::::::::::::::
14+
15+
:::::::::::::::::::::::::::::::::::::::: questions
16+
17+
- What licensing information should I include with my work?
18+
19+
::::::::::::::::::::::::::::::::::::::::::::::::::
20+
21+
As an open source project, Software Carpentry relies on volunteers to create our lessons and includes a file named `LICENSE` or `LICENSE.txt` file in all public lesson repositories. This file is used to specify that all materials are freely available under the Creative Commons Attribution license. Without a file that clearly states under which license any public source code, manuscript or other creative works is being made available, the default copyright laws apply. To learn more about licensing and open source, you can read more about [Github's description of licenses] and the [legal grounds for open source licensing].
22+
23+
A license solves this problem by granting rights to others (the
24+
licensees) that they would otherwise not have. What rights are being
25+
granted under which conditions differs, often only slightly, from one
26+
license to another. In practice, a few licenses are by far the most
27+
popular, and [choosealicense.com](https://choosealicense.com/) will
28+
help you find a common license that suits your needs. Important
29+
considerations include:
30+
31+
- Whether you want to address patent rights.
32+
- Whether you require people distributing derivative works to also
33+
distribute their source code.
34+
- Whether the content you are licensing is source code.
35+
- Whether you want to license the code at all.
36+
37+
Choosing a license that is in common use makes life easier for
38+
contributors and users, because they are more likely to already be
39+
familiar with the license and don't have to wade through a bunch of
40+
jargon to decide if they're ok with it. The [Open Source
41+
Initiative](https://opensource.org/licenses) and [Free Software
42+
Foundation](https://www.gnu.org/licenses/license-list.html) both
43+
maintain lists of licenses which are good choices.
44+
45+
[This article][software-licensing] provides an excellent overview of
46+
licensing and licensing options from the perspective of scientists who
47+
also write code.
48+
49+
At the end of the day what matters is that there is a clear statement
50+
as to what the license is. Also, the license is best chosen from the
51+
get-go, even if for a repository that is not public. Pushing off the
52+
decision only makes it more complicated later, because each time a new
53+
collaborator starts contributing, they, too, hold copyright and will
54+
thus need to be asked for approval once a license is chosen.
55+
56+
::::::::::::::::::::::::::::::::::::::: challenge
57+
58+
## Can I Use Open License?
59+
60+
Find out whether you are allowed to apply an open license to your software.
61+
Can you do this unilaterally,
62+
or do you need permission from someone in your institution?
63+
If so, who?
64+
65+
66+
::::::::::::::::::::::::::::::::::::::::::::::::::
67+
68+
::::::::::::::::::::::::::::::::::::::: challenge
69+
70+
## What licenses have I already accepted?
71+
72+
Many of the software tools we use on a daily basis (including in this workshop) are
73+
released as open-source software. Pick a project on GitHub from the list below, or
74+
one of your own choosing. Find its license (usually in a file called `LICENSE` or
75+
`COPYING`) and talk about how it restricts your use of the software. Is it one of
76+
the licenses discussed in this session? How is it different?
77+
78+
- [Git](https://github.com/git/git), the source-code management tool
79+
- [CPython](https://github.com/python/cpython), the standard implementation of the Python language
80+
- [Jupyter](https://github.com/jupyter), the project behind the web-based Python notebooks we'll be using
81+
- [EtherPad](https://github.com/ether/etherpad-lite), a real-time collaborative editor
82+
83+
84+
::::::::::::::::::::::::::::::::::::::::::::::::::
85+
86+
[software-licensing]: https://doi.org/10.1371/journal.pcbi.1002598
87+
[Github's description of licenses]: https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/licensing-a-repository
88+
[legal grounds for open source licensing]: https://opensource.guide/legal/#are-public-github-projects-open-source
89+
90+
:::::::::::::::::::::::::::::::::::::::: keypoints
91+
92+
- The `LICENSE`, `LICENSE.md`, or `LICENSE.txt` file is often used in a repository to indicate how the contents of the repo may be used by others.
93+
- People who incorporate General Public License (GPL'd) software into their own software must make the derived software also open under the GPL license if they decide to share it; most other open licenses do not require this.
94+
- The Creative Commons family of licenses allow people to mix and match requirements and restrictions on attribution, creation of derivative works, further sharing, and commercialization.
95+
- People who are not lawyers should not try to write licenses from scratch.
96+
97+
::::::::::::::::::::::::::::::::::::::::::::::::::
98+
99+

0 commit comments

Comments
 (0)