# 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" .