PythonSneks Field Guide

An instructionally-designed, open-source introductory Python curriculum for university settings

Module 2 - Strings and Calling Functions

More about strings, and information about string operations (e.g., indexing). Using built-in functions and methods.

Before the week begins

N/A

Major Topics

Materials

Due This Week:

Graded This Week

Student Difficulty

Module 2 - Staff Meeting

Agenda:

Your job as a TA is to manage student’s extraneous load and avoid letting them be distracted. A common source of distraction is stress, which can be contagious, so keep your own stress levels down.

* [Bloom's Taxonomy](https://cft.vanderbilt.edu/wp-content/uploads/sites/59/Blooms-Taxonomy-650x366.jpg): Knowledge can be categorized at different levels, which build on each other. Knowing where on the taxonomy a student is struggling (e.g., with remembering terminology, or applying a rule, or being creative) can help diagnose their misunderstanding.

* MUSIC Model of Academic motivation: The drive and energy to complete academic tasks can come from 5 sources:

    * eMpowerment: agency and freedom to explore and direct their learning. As a TA, you have minimal power here, but finding opportunities to empower students is good ("Did you know you can change the color of the turtle's line?").

    * Usefulness: the sense of long-term and short-term benefit of learning the material. Connecting a lesson or the class goals with students' individual goals will help support them.

    * Success: the self-efficacy, or belief by the students that they can complete tasks. Programming is often hard, so helping students manage their struggle is important. Express confidence in their ability (when appropriate) to help students understand they can accomplish things given time and practice.

    * Caring: the belief that classmates, instructors, and TAs want them to succeed. Simply letting students know you're available and want to help them is a good thing.

* [Gagne's Nine Events](http://s4.thingpic.com/images/j7/uS44Q1YxM1NADqN1c4tP6izj.png): An instructional model for designing a lesson. Making sure you hit all these elements can ensure learning in a more systematic way. In general, make sure that each lesson is a combination of Presentation of content, Participation by the student, and Feedback from the TA.

Lessons

Lesson 14- Error Messages

Summary: When Python encounters a problem in your program, it raises an error message. This error message can be read to better understand what went wrong with your program.

Learning Objectives:

Activities:

Misconceptions: None listed so far

Lesson 15- String Operations

Summary: You should now feel comfortable with representing a string in your computer, and then manipulating them.

Learning Objectives:

Activities:

Misconceptions:

Lesson 16- String Operations

Summary: Strings can be manipulated according to their own rules and operations, distinct from integers and booleans.

Learning Objectives:

Activities:

Misconceptions: None listed so far

Lesson 17- Calling Functions

Summary: Functions are a fundamental unit of programs, which we can use to break down tasks. Functions take in arguments and return data, just like programs. Functions are a powerful way for programmers to share code with each other, too. Some functions are known as methods, and are strongly associated with a value.

Learning Objectives:

Activities:

Misconceptions:

Lesson 18- Calling Functions 2

Summary: Python comes with a huge number of built-in functions and methods. Programmers learn how to use these by referring to documentation. In practice, functions are often called in combination with other functions, methods, and operations.

Learning Objectives:

Activities:

Misconceptions: None listed so far

Project 1: Turtle Art

Summary: Students create a work of art using the built-in Turtle graphics module. Turtle graphics are an easy way to draw images in Python by moving a virtual turtle around the screen (turtle.forward, turtle.right, turtle.left, etc.).

Learning Objectives:

Misconceptions: