Workshop Schedule


This program will run Monday through Friday, June 3, 2019, until June 14, 2019 (2 weeks of 5 days each). Each day will run from 1 pm until 4 pm, although the room will be available to students until 5 pm if they wish to continue working.


Summary Schedule


Week 1 (June 3-7, 1-5pm): Programming Basics and Applications

  • Scientific programming with Python, Git, and basic Unix commands.
  • Each day will consist of ~2 hours of lecture (with breaks and interactivity)
  • After lecture there will be open Coffee & Coding time
  • Friday features lunch and professional presentations

Week 2 (June 10-14, 1-5pm): Statistics for Professional Scientists

  • Professional statistics
  • Bayesian statistics and common algorithms
  • Error analysis
  • Friday student presentations

Detailed Schedule


WEEK 1 – Programming Basics and Applications

Day 1 – Monday

  • Introduction
  • Using a terminal on Linux/Mac/Windows10
  • Basic unix commands
  • An introduction to Python and Jupyter Notebooks
  • Python: Basic syntax, whitespace, data types
  • Coffee & Coding – With live coding
    • Unix and Python exercises

Day 2 – Tuesday

  • Regular expressions?
  • SSH/FTP/networking
  • The numpy, scipy, packages.
  • Visualizing data through the matplotlib python package
  • Coffee & Coding – With live coding
    • Python exercises

Day 3 – Wednesday

  • Basic Computer Science – Memory, time scaling, optimization
  • Debugging – fundamentals, tips and strategies
  • Good practices and styleguides
  • Code versioning, backing up code, and making code citable.
  • Coffee & Coding – With live coding

Day 4 – Thursday

  • Overview of Python packages for different fields
  • working with Arrays and matrices
  • Coffee & Coding – With live coding
    • Array exercises, linear algebra

Day 5 – Friday

  • Lunch
  • Presentation 1 (TBD)
  • Presentation 2 (TBD)

WEEK 2 – Statistics for Professional Scientists

Day 6 – Monday

  • An introduction to statistics
  • Bayes Theorem
  • Making models of systems
  • Building and testing a hypothesis
    • Coffee and Coding – With live coding

Day 7 – Tuesday

  • Model selection and curve fitting
  • The meaning of p-values; Type-I and Type-II errors.
  • Common techniques (KS-test, etc) and their strengths and weaknesses.
  • Examining models, histograms, and other data.
    • Coffee and Coding – With live coding

Day 8 – Wednesday

  • Machine Learning Basics
  • Gradient Descent and MCMC
  • Overview of more advanced techniques (genetic algorithms, asynchronous optimization, neural nets)
    • Coffee and Coding – With live coding

Day 9 – Thursday

  • Error propagation, analysis, and model error estimation.
  • Examples of specific applications.
    • Coffee and Coding – With live coding

Day 10 – Friday

  • Lunch
    • Student presentation – speed round
    • networking
    • Mingle time
    • GRADUATION certificates