Python for Scientific Computing intro

What is this course?

Who are we?

Course contents

  • Day 1: Basic tools (jupyter, numpy, pandas)

  • Day 2: Still fairly basic (pandas continued, visualization, data formats)

  • Day 3: More specialized tools (scripting, libraries, parallel)

  • Day 4: Again more special tools (dependencies and environments, Binder, packaging)

  • If early days are too boring for you, don’t skip the later days!

  • We will adjust the schedule as needed.

How to attend?

  • The course is livestreamed, anyone can attend! (details later)

  • There are different pathways for you. Everyone will choose your own path:

    • Pay close attention, do all exercises.

    • Watch, type-along with the examples and solutions

    • Watch passively, see general concepts (and take the course again later when you are more comfortable?)?

  • All of these are valid. You may choose different options for different lessons.

Practicalities

In other words: livestreaming is different!

How the workshop works

When some people teach online, they can reach a few tens of people at once. We can reach hundreds.

We have an interesting strategy:

  • Livestream broadcast, like a TV production.

  • Anyone can watch.

  • There are pauses for exercises, you can work (alone or in groups).

  • Our university’s people can be in Zoom and switch there for exercise sessions (some years).

There are many parts of the workshop:

  • Talking and demos (livestream)

  • Type-along (livesteam)

  • Exercises (Zoom or alone or your own groups)

  • Breaks, at least 10 minutes/hour

Chat and communication

  • Please don’t use the chat for questions: who can keep track?

    • Instructors won’t see

    • But you can for practical questions

  • Use the Notes for chat: questions in bullet points:

    View and edit modes at top
  • From here you can also find important links and reference.

  • You can switch between view and edit modes:

    View and edit modes at top
    • You have to switch to edit mode once to get live updates (then you can go back to view)

    • Please leave in view mode if you aren’t actively using it

  • Someone watches these and will answer or raise relevant questions by voice.

  • Don’t get information overload! The point is you can read later.

  • Don’t include names or identifies in the Notes: it is public and will be permanently archived.

  • The Notes might get overloaded with the number of people we have. If so, we have backup plans and will adjust. (consider overload as a “isn’t it cool” situation). Pay attention to our instructions.

Exercise: Icebreaker: Please answer the icebreaker question in the Notes

Screen arrangement

Arranging your screen is surprisingly difficult!

  • We share a vertical window, so half of the screen is for us, and half is for demos.

  • The other half is for web browsers, your workspace, etc. Have the Notes easy to access!

https://coderefinery.github.io/manuals/_images/layout--learner-livestream-sidebyside-onebrowser.png

Screen layout with livestream on one side and learner workspace on other side. You might have two browsers open, Jupyter and the course material.

Where do you focus?

There is so much information! What should we look?

  • Screenshare and lecture

  • Your own type-along

  • Notes (all important links should be pasted here)

    • Only look at the bottom.

    • Come back and read detailed answers later, not during.

  • Zoom or your own exercise group (during the exercises, optional).

  • Lesson webpage (as needed, direct links in Notes)

When do you switch between the stream/exercise Zoom?

We don’t organize this year (but others might)

If you have registered and are from a participating institution, you have a Zoom link for exercise sessions. This is optional.

  • During main lectures, you look at the livestream + follow along.

  • During exercise sessions, you will be told to switch to Zoom if you have it (livestream is quiet)

  • After exercise sessions you will hear the livestream become active again, and know it is time to come back.

  • We will be explicit at every step of the way.

What can go wrong?

  • The lessons are too simple: the later lessons will become more interesting.

  • The lessons are too advanced: watch passively and learn, you will learn a different way.

  • Instructors make a mistake: this is by design! You learn by seeing things not work. We try to let some mistakes in so you can see them.

  • Notes stops responding: We have so many people that it might lag. Wait some and it hopefully will pass. We try to keep it short for this (move old text to an archive Notes, see link at top). Please stay in “view mode” when not editing. We have a backup planned.

  • The stream dies: something has happened to the broadcaster’s computer. Stick around, it will resume soon.

  • The internet dies: This happened in a previous course (Fastly CDN problems). Wait around, we see what happens. Remember, we have videos no matter what.

  • CATS disrupts the instructors: wait, this is the opposite of a problem an actually what we all want.

Videos

  • You miss a day or want to review? No problem.

  • Videos are available on Twitch for 7 days

  • … and YouTube after we process them (by midnight)

Be respectful and helpful

Being respectful is a condition of interaction.

It is actually hard to teach and mentor for tech like this. The course is much more than “only” instructors.

We leave you with four pieces of advice for now:

  • Everyone here is at different levels, and that’s expected. Everyone will be learning different things, and everyone will focus on different topics. Passive learning is OK.

  • Everyone is both a teacher and a learner. If not now, after the course when you are helping others.

  • Take time to check in. For example, ask “how’s it going? is everyone getting what they need?”, in breakout rooms.

  • When something isn’t going right, speak (or Notes) up quickly. We want to help, even if the answer is “let’s discuss later”.

Final notes

Credit points

  • See the course webpage for information.

Keep in touch if you want (and volunteer)

Other workshops

  • Consider attending a “real” CodeRefinery workshop, with more practical skills about the development side of things: https://coderefinery.org (next one in 2023 March)

  • Sign up for the CodeRefinery newsletter to get announcements.