This is the course material for the Software Carpentry workshop taking place in Würzburg September 4th and 5th, 2017. The course is an introduction for novices to the Unix Shell, Python and git.
- Introduction of the instructors and helpers
- Name tags
- Sticky notes
- Feedback
- Introduction of the participants
- Ice breaker - Sort people by the following values:
- Sort by time after graduation
- Group by research field
- Considering the course topic - how strong do you feel about knowing this already?
- Code of Conduct https://software-carpentry.org/conduct/ => Be excellent to each other!
- Photos
- Social media, Hash Tag #SWCWue
- Breaks
- Coffee/Tea
- Bathroom
- Circulate the sign-in sheet
- Material of the course
- Short references:
- The etherpad
- http://pad.software-carpentry.org/2017-09-04-Wuerzburg
- Short URL: http://bit.ly/2vzEnex
- Exercise - add your name to the list of participants
- Motivation / Aim
- Automation
- Reproducibility / Transparency
- Who has still issue with the installation?
- Files, folders, locations
- Manipulating files and folders
- Connecting tools with pipes
for
loops- Shell scripting
- nano:
- Save: Ctrl-o
- Exit: Ctrl-x
- nano:
- Print, literal constants
- Variables
- String format operators
- Data structures: str, int, float, list, dict
- File handling
- Conditionals
if
else
startement for
loop
- Function definition
- Writing Python scripts
- The Softare Carpentry Git lesson
- Setup
- Creating a Repository
- Tracking Changes
- Exploring History
- Ignoring things
- Remote repositories
- GitHub
This session offers space for further exercises, questions and related topics like open source / open content licenses, open science practices, reproducible research.
- Fill out the post- workshop survey of SWC
- Fill out the feedback form of the GSLS
-
Text Editors / IDEs (integrated development environment)
-
Main ways to work with Python
- Script
- interactive after calling "python" or "ipython" (REPL)
- Jupyter notebook
-
Markdown - A markup language
-
Python 2.7 (legacy!) vs Python 3 (currently 3.6)
-
Comparison of R to Python
-
Useful Python libraries
- pandas
- numpy
- scipy
- Biopython
- scikit-learn - Machine learning
- scikit-image - Image analysis
- matplotlib - 2D plotting library
- seaborn - statistical data visualization
- bokeh
- statsmodel
This work by Markus Ankenbrand and Konrad Förstner is licensed under a Creative Commons Attribution 4.0 International License.