Skip to content

lumbric/python_git_programming_course

Folders and files

NameName
Last commit message
Last commit date

Latest commit

fd68f3d · Jan 23, 2020

History

47 Commits
May 2, 2019
Apr 3, 2019
Jan 23, 2020
Apr 3, 2019
Apr 1, 2019
Apr 26, 2019
Jan 23, 2020
Mar 29, 2019

Repository files navigation

MIT License open in mybinder

Programming using Python, GIT and others in science

Slides and notes for a workshop about programming for scientists.

  • Session 1: Organizing code and data: Advanced Git, Github and more
  • Session 2: How to make code beautiful: Python beyond basics
  • Session 3: The Python Scientific Ecosystem

Overview of interesting content

If you want to run the Jupyter notebooks, you can either clone the repository and a local Jupyter server or click the mybinder link above or Google colab links below.

The most interesting files in this repository:

├── abstract_and_sessions.rst             more information about the workshop
├── README.rst                            this file
├── session1_git_and_workflow
│   ├── git_commands                      a list of interesting GIT commands, sorted by importance
│   ├── git-games                         GIT repository to try GIT commands while playing board games
│   ├── git.txt                           see https://m.xkcd.com/1597/
│   ├── links.rst                         helpful links about GIT
│   ├── notes.rst                         personal presenter notes, not sure if helpful for others, but this session was mostly presented on the white board, so this is the only available material
│   ├── slides.pdf                        slides as PDF
│   ├── slides-expanded.pdf               slides with interactive items as separate page
│   └── terminology.rst                   GIT terms covered in the workshop and those not covered
├── session2_python_and_programming
│   ├── slides_session2.html              slides exported to HTML, unfortunately SVG files broken, view HTML
│   ├── slides_session2.ipynb             slides as Jupyter Notebok, run it in Google colab
│   ├── slides_session2.slides.html       slides exported to HTML, unfortunately SVG files broken (slightly different format, same thing as slides_session2.html), view HTML
│   └── slides_session2.slides.pdf        slides as PDF
└── session3_scientific_ecosystem
    ├── code-samples
    │   └── slow_average.py               Exercise: Find out why this code is terribly slow!
    ├── example-notebook.ipynb            Example Jupyter notebook with some nice features, run it in Google colab
    ├── links.rst                         helpful links about scientific Python
    ├── slides_session3.html              slides exported to HTML, unfortunately SVG files broken, view HTML
    ├── slides_session3.ipynb             Slides for Session 3 as Jupyter Notebook, run it in Google colab
    └── slides_session3.slides.html       slides exported to HTML, unfortunately SVG files broken (slightly different format, same thing as slides_session3.html), view HTML

More interesting topics

Not covered in this workshop, but maybe worth looking into:

  • f-strings
  • decorators
  • context managers
  • iterators
  • generators
  • data scraping
  • packaging and package managers
  • virtualenv, conda env, pipenv, ...
  • from __future__ import braces

Prepared in notes and slides, bot not really coverd:

  • GIT
    • more advanced commands, see terminology.rst
    • workflow
    • large files
    • piplines and workflow for data science
    • GIT interals
  • testing
  • logging

About

Programming using Python, GIT and others in science

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3