Syllabus
Basics
For 4-5 weeks, we will review the fundamentals of Python. Then we will focus on basic web development using the Flask framework.
Meetings are Wednesday, 7-9pm and Friday, 4-6pm in Clapp 327. You may come to one meeting or both. If you attend the Wednesday meeting, feel free to join the Friday meeting to review the concepts, ask questions, and work on coding activities. If you miss a week, please try to review the slides and try the activities to keep on track.
At each meeting, we will do a lecture (~1.5 hours) and then have time for coding activities (~30 minutes). The activities are designed to help you practice the concepts.
Membership
Everyone, regardless of CS experience, is welcome. If you've taken at least one computer science class, the first few weeks of the semester may be review, but you are absolutely welcome to join us!
Please note: This group is not a study group for any academic class, and help with class assignments/labs will not be provided.
Tools
For the first half of the semester, we will be coding in the CS50 IDE. This is a browser-based coding environment. To sign in, you need to create a free GitHub account. You do not need to download anything onto your computer.
Schedule
This is our first meeting! Here are the slides.
Key concepts:
- Defining "coding" and "computer"
- Abstract model of the computer as processor and memory
- Understanding variables as a linked storage address and symbolic name
- Syntax: Declaring and using variables in Python
Activities:
- Wk1Act1.py: Use variables to calculate area
- Wk1Act2.py: Use variables and string concatenation to print your full name
- Wk1Act3.py: Use variables, string concatenation, and a few unfamiliar tools to build a M.A.S.H. game!
In this meeting, we will set up our CS50 IDE and learn about the command line, user input, and basic conditionals. Here are the slides.
Key concepts:
- Using the command line
- Taking user input with Python's input() function
- Control flow with if/else statements
Activities:
- Wk2Act1.py: Concatenate user input to create your own MadLibs
- Wk2Act2.py: Use user input and conditionals to write a number-guessing game
- Wk2Act3.py: Use conditionals to provide a horoscope based on a user’s inputted sign
In this meeting, we will review conditionals and learn the elif keyword. Most of the time will be spent on coding practice. Here are the slides.
Key concepts:
- elif keyword
Activities:
- gamebook.py: Use conditionals and user input to create a choose-your-own-adventure style game.
This week is focused on learning about functions. Here are the slides.
Key concepts:
- Why do we use functions?
- Syntax: Defining and calling functions
- Return statements
Activities:
- functions.py: Use conditionals, user input, and custom functions to advise your user on what to wear based on the weather.
- gamebook.py: Use conditionals and user input to create a choose-your-own-adventure style game.