Schedule overview ----------------- The bootcamp runs June 17–21, 2024, with no meeting on June 19 in honor of the Juneteenth holiday, in Chen 130. ---- Daily schedule -------------- - **Pre-bootcamp** + :ref:`Lesson 0: Configuring your computer` - **Day 1: Monday, June 17** + **8:00** - :ref:`Lesson 1: Welcome and Introduction to JupyterLab` + **8:45** - :ref:`Lesson 2: Basic command line skills` + **9:35** - :ref:`Lesson 3: Variables, operators, and types` + **10:20** - :ref:`Lesson 4: More operators and conditionals` + **11:10** - :ref:`Exercise 1` + **noon** - Lunch break + **1:00** - :ref:`Lesson 5: Lists and tuples` + **1:45** - :ref:`Lesson 6: Iteration` + **2:35** - :ref:`Lesson 7: Introduction to functions` + **3:20** - :ref:`Lesson 8: String methods` + **4:10** - :ref:`Exercise 1` - **Day 2: Tuesday, June 18** + **8:00** - :ref:`Review of Exercise 1` + **8:45** - :ref:`Lesson 9: Dictionaries` + **9:35** - :ref:`Lesson 10: Packages and modules` + **10:20** - :ref:`Lesson 11: File I/O` + **11:05** - :ref:`Exercise 2` + **noon** - Lunch break + **1:00** - :ref:`Lesson 12: Version control with Git` + **1:45** - :ref:`Lesson 13: Errors and exception handling` + **2:35** - :ref:`Exercise 2` + **4:20** - :ref:`Lesson 14: Style` - **Day 3: Thursday, June 20** + **8:00** - :ref:`Review of Exercise 2` + **8:45** - :ref:`Lesson 15: Comprehensions` + **9:35** - :ref:`Lesson 16: Introduction to Pandas` + **10:20** - :ref:`Lesson 17: Tidy data and split-apply-combine` + **11:20** - :ref:`Exercise 3` + **noon** - Lunch break + **1:00** - :ref:`Lesson 18: Making plots` + **2:00** - :ref:`Exercise 3` + **4:10** - :ref:`Lesson 19: High level plotting with iqplot` - **Day 4: Friday, June 21** + **8:00** - :ref:`Review of Exercise 3` + **8:45** - :ref:`Lesson 20: Styling Bokeh plots` + **9:40** - :ref:`Lesson 21: Introduction to Numpy and Scipy` + **10:30** - :ref:`Lesson 22: Plotting time series and generated data` + **11:15** - :ref:`Exercise 4` + **noon** - Lunch break + **1:00** - :ref:`Exercise 4` + **4:15** - :ref:`Lesson 23: Survey of other packages and languages` + **4:45** - :ref:`Lesson 24: Bootcamp recap` - **Auxiliary lessons** + :ref:`Lesson 25: Random number generation` + :ref:`Lesson 26: Hacker stats I` + :ref:`Lesson 27: Hacker stats II` + :ref:`Lesson 28: Dashboards` + :ref:`Lesson 29: JavaScript for stand-alone Bokeh apps` + :ref:`Lesson 30: Control of external devices` + :ref:`Lesson 31. Apps for controlling external devices` + :ref:`Lesson 32: Control panels` + :ref:`Lesson 33: More about the command line` + :ref:`Lesson 34: Regular expressions` + :ref:`Lesson 35: Introduction to scripting` + :ref:`Lesson 36: Introduction to object-oriented programming` + :ref:`Lesson 37: Algorithmic complexity` + :ref:`Lesson 38: Testing and test-driven development` + :ref:`Lesson 39: Examples of TDD` + :ref:`Lesson 40: High level plotting with HoloViews` + :ref:`Lesson 41: High level plotting with Vega-Altair` + :ref:`Lesson 42: More plotting with Vega-Altair` + :ref:`Lesson 43: Dealing with overplotting` + :ref:`Lesson 44: Introduction to image processing with scikit-image` + :ref:`Lesson 45: Basic image quantification` + :ref:`Lesson 46: Plotting with Matplotlib and Seaborn` - **Auxiliary exercise** + :ref:`Exercise 5`