This is the course material for the Software Carpentry workshop taking place in Würzburg October 23rd, 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
- Introduction of the participants
- 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?
- Code of Conduct https://software-carpentry.org/conduct/ => Be excellent to each other!
- Breaks
- Coffee/Tea
- Bathroom
- Wifi
- Material of the course
- The etherpad
- http://pad.software-carpentry.org/p/2017-10-23-Wuerzburg.
- Short URL: http://bit.ly/2vzEnex
- Exercise - add your name to the list of participants
- Motivation
- Automation
- Reproducibility / Transparency
- Who has still issues with installation?
- Files, folders, locations
- Manipulating files and folders
- Connecting tools with pipes
for
loops- Shell scripting
- Print, literal constants
- Variables
- Data structures: str, int, float, list, dict
- String format operators
for
loop- Conditionals
if
else
startement - File handling
- Function definition
- Writing Python scripts
- The Softare Carpentry Git lesson
- Setup
- Creating a Repository
- Tracking Changes
- Exploring History
- Ignoring things
- Remote repositories
- GitHub
-
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.