# Software Carpentry 2020-03-30/2020-03-31 @ ZB MED
- [ ] Link tho this pad: https://hackmd.io/nRNxbzsHSvieZoSkAq8KFA
- [ ] Short link to pad: https://bit.ly/2tTMRRJ
- [ ] Introduction of the instructors and helpers
- [ ] Introduction of the participants
- [ ] Who are the Carpentries
- [ ] Motivation for the Carpentry workshops
- Automation
- Reproducibility / Transparency
- Empowerment
- [ ] Life Long Learning
- [ ] Ice breaker - Sort people by the following values:
- Sort by time time in research
- Group by research field
- Considering the course topic - how strong do you feel about knowing this already?
- [ ] Sticky notes
- [ ] If anything is not clear - please ask. There are no stupid questions
- [ ] Code of Conduct https://software-carpentry.org/conduct/ => Be excellent to each other!
- [ ] Photos and twitter
- [ ] Explain pad
- [ ] Wifi for external, options: eduroam and HOTSPOT.KOELN or the sitzgunraum wifi
- [ ] Breaks
- [ ] Coffee/Tea
- [ ] Bathroom
- [ ] Cheat sheet if provided
- [ ] Installation and Github account
- [ ] Exercise - add your name to the list of participants
- [ ] Material of the course
- [ ] Overview:
- Git: Software for tracking changes (versioning) of files/projects
- GitHub/GitLab: Online plattform for storing files/projects with Git
- Python: A programming language
- Shell/Bash: command line based user interface (for "talking" to the machine/computer)
## Participants
- write here your name
## Shell
- [Data](https://raw.githubusercontent.com/librarycarpentry/lc-shell/gh-pages/data/shell-lesson.zip)
- [Cheat Sheet](https://gist.github.com/LeCoupa/122b12050f5fb267e75f)
## Git
- [join_git](https://github.com/join)
## Python
- [pandas_cheat_sheet](https://github.com/pandas-dev/pandas/blob/master/doc/cheatsheet/Pandas_Cheat_Sheet.pdf)
- [python_cheat_sheet](https://github.com/ehmatthes/pcc/releases/download/v1.0.0/beginners_python_cheat_sheet_pcc_all.pdf)
- [PEP-0008](https://www.python.org/dev/peps/pep-0008/)
- [The 35 Words You Need to Python](https://yawpitchroll.com/posts/the-35-words-you-need-to-python/)
- [Python built-ins worth learning](https://treyhunner.com/2019/05/python-builtins-worth-learning/)
* html: https://github.com/OpenAPC/openapc-de/blob/master/data/fuberlin/APC_FU_Berlin_2015.csv
* Raw: https://raw.githubusercontent.com/OpenAPC/openapc-de/master/data/fuberlin/APC_FU_Berlin_2015.csv
**Exampes DOIs**:
- 10.1371/journal.pcbi.1004668
dois = ["10.1371/journal.pcbi.1004668", "10.21105/joss.01035", "10.1038/35057062", "10.21105/joss.01006"]
## Lessons
- [shell](https://librarycarpentry.org/lc-shell/)
- [git](https://librarycarpentry.org/lc-git/)
- [python](https://librarycarpentry.org/lc-python-intro/)
### Our Lessons:
- [pandas_with_OpenAPC](https://github.com/konrad/Bits_and_pieces_for_the_carpentries_workshops/blob/master/python/Intro_to_pandas_with_OpenAPC_data.ipynb)
- [doi_from_crossref](https://github.com/konrad/Bits_and_pieces_for_the_carpentries_workshops/blob/master/python/doi_from_crossref.ipynb)
### How to run python
In Git Bash
```
$ winpty <path-to-python-installation-dir>/python.exe
```
## Useful informations
- [automate_boring_stuff](https://automatetheboringstuff.com/)
- [real_python](https://realpython.com/)
## What to do after the LC-workshop
- Install Git Bash and Anaconda or you machine (ask the IT-department)
- Find a good text editor (the next hacky-hour on the 20th at 14:00 will be based on that)
1) [emacs](https://www.gnu.org/software/emacs/)
2) [vim](https://www.vim.org/)
3) [spider](https://www.spyder-ide.org/)
4) [atom](https://atom.io/)
5) [pycharm community edition](https://www.jetbrains.com/pycharm/)
- Go through the lessons and try to reproduce them alone
- Find small tasks you solve on a daily bases and try to solve them using the computation skills you have learned
- [Participate to the hacky-hour](https://hackyhour.github.io/Cologne/)
## Installation of Anaconda and GitBash:
- XXXXXXXXX
## Codesnippets:
- open apc: "https://raw.githubusercontent.com/OpenAPC/openapc-de/master/data/fuberlin/APC_FU_Berlin_2015.csv"
- base_url = "https://api.crossref.org/works/"
- doi = "10.1371/journal.pcbi.1004668"
dois = ["10.1371/journal.pcbi.1004668",
"10.21105/joss.01035",
"10.1038/35057062",
"10.21105/joss.01006"]
## Workaround if Anaconda doesn't work
Go to https://mybinder.org/ . Put the URL https://github.com/foerstner-lab/Bits_and_pieces_for_the_carpentries_workshops after "GitHub repository name or URL" and write "empty_jupyter_notebook_for_binder.ipynb" after "Path to a notebook file"
Click on "launch" .