Codelab 1: Python 101

Due Date

This codelab is due on Thursday, February 1st at 11:59:59PM.

Goal

In this codelab, you'll learn (or review!) the basics of Python. We will be using Python throughout this class to build projects with AWS. Starting with next week's codelab, we will also be using the boto3 library, which is the official AWS SDK for Python.

Getting Started

Environment Setup

To get started, you will need to set up your local development environment. Follow the instructions here: Environment Setup.

Download Starter Code

For codelabs in this class, you will want to clone the class repository from GitHub onto your computer:

$ git clone https://github.com/UMD-CS-STICs/389Lspring18.git

Each week, when new content is pushed into this repository, you'll need to pull in these changes. All you need to do is run:

$ git pull

This is a good time to remind you to not publicly share any of your solutions to these codelabs. However, you are more than welcome to collaborate with other students in this class.

Python

Learn Python in Y Minutes (Required)

Since you are already familiar with Ruby from CMSC330, then you mostly just need to learn the syntactical differences.

There's no faster way for that then the "Learn X in Y Minutes" tutorials. Go ahead and read through the Python 3 tutorial here:

Grading

For this codelab, you will get full credit if you complete all the required public tests.

If some codepath is not tested, such as the behavior of foobar_flip when a value is provided that is not "foo" or "bar", then you are free to handle it however you would like. Pick something reasonable, like raising a ValueError.

Submission

To submit this codelab, zip the codelab-01 folder and upload it to the submit server.