10/13/2020: Introduction to Py310: Programming in Python¶
In which you are introduced to this class, your instructors, your environment and your new best friend, Python.

The goal of this lesson is get us all familiar with each other, the class, and all teh tools and systems we’ll need to conduct the class. That is, at the end of this lesson we can start the actual learning about Python :-)
Who are we?¶
Introduction to your instructors:
Chris
Subhiksha
Who are you?¶
Despite the common myth of the lone programmer, most software development is a collaborative activity. As such, we encourage students in this program to work together whenever possible.
As you will be working with your fellow students for the rest of the program, we’ll take a couple minutes now to get to know each other.
This is a lot harder to do online, but we’ll try to make use of Zoom as best we can!
So we’ll go around the zoom and introduce ourselves:
Tell us a tiny bit about yourself:
Name
Programming background: what languages have you used?
Why do you want to learn Python?
What’s your favorite coffee shop or bar – or was, before the Pandemic.
What is your gitHub handle – if you already have one. If not, send it to us when you get it:
pythonCHB@gmail.com
Introduction to This Class¶
The overall class is managed by a learning management system – Canvas.
You should have gotten a link to the instance for the class sent to you.
Is everyone “hooked up” to Canvas?
NOTE: I’m not a big Canvas fan: it’s where to go to find assignemnts and get on teh Zoom, etc, but much of our interaction will be via programming tools, like gitHub, rather than Canvas.
Class Structure¶
We will be using a variation of a “flipped classroom” for this class.
This means that the “homework” will be reading, watching videos, coding, etc.
And class time will be spent primarily coding:
Still some lecture – as little as possible
Lots of demos
Working on Coding Exercises: - On your own, with us to help - In small groups (breakout groups on Zoom) - Instructor led.
This means that you are expected to complete the reading (and video watching) BEFORE each class. That way, we don’t have to take class time introducing the basic material and can focus on questions and applying what you’ve read about.
Interrupt us with questions – please!
Subhiksha will be monitoring Zoom chat
(Some of the best learning prompted by questions)
Homework:¶
Homework will be reading, a handful of videos, and links to optional external materials – videos, blog posts, etc.
Exercises will be started in class – but you can finish them at home (and you will need time to do that!)
You are adults – it’s up to you to do the homework. But if you don’t code, you won’t learn to code. And we can’t give you a certificate if you haven’t demonstrated that you’ve done the work.
To submit your work, we will use gitHub Classroom:
https://uwpce-pythoncert.github.io/ProgrammingInPython/topics/01-setting_up/github_classroom.html
We’ll play around with this in this session so we can get the hang of it.
It’s new to me, too!
Communication¶
MS Teams:
We have set up an MS Team for this class:
Most of you are already members (with your uw email), but if not, I think you can go to that link and request to join.
Anything Python related is fair game. Questions and discussion about the assignments are encouraged.
We highly encourage you to work together. You will learn at a much deeper level if you work together, and it gets you ready to collaborate with colleagues.
I will also send occasional email out to the whole class – make sure I have the email address you want me to use. (I’ve got your uw email addresses now).
Office Hours¶
We will generally will hold “office hours” on Zoom for a couple hours each weekend. We will try to have one session on Saturday, and one on Sunday.
Please feel free to attend even if you do not have a specific question. It is an opportunity to work with the instructors and fellow students, and learn from each other.
What are good times for you?
Lightning Talks¶
“Lightning Talks” are a tradition in open-source technical conferences (and maybe others?). The idea is that people can do a quick talk about a topic of their choice – much lower pressure than a “real” talk – but gives folks a chance to show off something they have worked on.
For this class, it’s a chance to us to learn a bit about each-other and maybe something new about Python.
Each of you will be required to give one lightning talk at some point during the course.
Lightning Talks Requirements
5 minutes each (including setup) - no kidding!
Every student will give one
Purposes: introduce yourself, share interests, show Python applications
Any topic you like that is related to Python – according to you!
Schedule the lightning talks:¶
We need to schedule your lightning talks.
** Let’s use Python for that !**
There is a class list in the class repo here:
examples/session01/students.txt
Let’s write a script to generate a random talk schedule…
gitHub Classroom¶
Let’s get you set up with gitHub classroom so you can submit your work: