The CSU Math Council Colloquia (MC\(^2\)) series provides CSU faculty in mathematics, statistics, and mathematics education with the opportunity to network and share best practices in any topics related to university level mathematics and statistics education.
For the September 2020 MC\(^2\), faculty across the CSU share their insights and experiences with incorporating software and/or programming into courses for math and stats undergraduate majors.
Hosts:
Time | Name | Affiliation | Title | Abstract |
---|---|---|---|---|
3:00 PM | Mike Krebs mkrebs@calstatela.edu | Los Angeles | Project Euler: A Treasure Trove of Projects for a Mathematical Programming class | Project Euler provides “a series of challenging mathematical/computer programming problems that will require more than just mathematical insights to solve . . . the use of a computer and programming skills will be required to solve most problems.” A mathematical programming class or computer algebra systems class lends itself naturally to projects, and one can find hundreds of potential project ideas for such classes at Project Euler. In this talk, we explore a sample of these problems, discuss how the speaker and his colleagues have used them for projects in a Mathematica class, and try to make the case that students have derived immense value from the process of writing code to solve them. [Class website] |
3:30 PM | Jillian Cannons jlcannons@cpp.edu | Cal Poly Pomona | Reflections on an Introductory Computational Mathematics Course | In this talk we will discuss a new introductory course in computational mathematics introduced at Cal Poly Pomona in Fall 2018. We’ll begin with the motivation for the course, which is required for all mathematics and statistics majors. We’ll then discuss the course structure and logistics, including the presence of a laboratory portion of the course, classroom facilities, and grading tools. Next, we’ll describe some of the broad areas from which the mathematics and statistics content is drawn for course assignments. Finally, we’ll offer some reflections on challenges and successes experienced during the first two years of instruction of the course. [Slides] |
Time | Name | Affiliation | Title | Abstract |
---|---|---|---|---|
3:00 PM | Arlo Caine jacaine@cpp.edu | Cal Poly Pomona | Motivating Linear Algebra Theory with Higher Dimensional Examples via Matlab/Octave | How likely is it for an nxn real matrix to have all real eigenvalues? How does a change of basis for the domain or codomain affect the matrix representing a transformation? There always exists an orthonormal basis in which a linear operator on C^n can be represented by an upper triangular matrix, but how do you actually find the basis? In a first course in linear algebra, students often spend the bulk of their time studying relatively few low dimensional examples by hand. But users of linear algebra know that the power of the subject is to be able to “think big,” considering theory in dimension n and computing using software when n is large. In this talk, I’ll share examples of classroom demonstrations, scaffolded programming assignments, and small group activities I designed for our upper division Advanced Linear Algebra class to motivate linear algebra theory with a large volume of higher dimensional examples. |
3:30 PM | Brian Katz (BK) brian.katz@csulb.edu | Long Beach | Coding, inquiry, and proving supporting each other | In her plenary at the 2020 SIGMAA RUME conference, Elise Lockwood argued for education scholars including computational thinking (in the sense of thinking about coding and methods of computation) in their research questions. This talk made me realize how coding is a key tool and metaphor in my efforts to teach students to ask mathematical questions and justify their claims and that mathematical questions and justifications are a pathway into teaching coding that avoids centering syntax. I will discuss the connections between coding, inquiry, and proving from my recent introduction-to-proof course and share a few small coding examples. |
Time | Name | Affiliation | Title | Abstract |
---|---|---|---|---|
3:00 PM | Kevin Ross kjross@calpoly.edu | Cal Poly San Luis Obispo | A simulation-based approach to teaching probability | Simulation is an effective tool for analyzing probability models as well as for facilitating understanding of probability concepts. I will discuss tactile and technology-based simulation activities for use with a “simulate everything” approach to teaching probability. Unfortunately, implementing a simulation from scratch often requires users to think about programming issues that are not relevant to the simulation itself. I will discuss some issues to consider when determining the “right” amount of programming. I will also discuss how to integrate Google Colab notebooks into class activities. |
3:30 PM | Clark Fitzgerald fitzgerald@csus.edu | Sacramento | Goodbye Z Tables, Hello R – Using the R language as a scientific calculator for statistics classes | The ability to use a computer as a scientific calculator is a powerful asset for students at all levels, for many reasons. The content of this talk is as follows. First, I argue that in 2020, more than ever, it’s time to stop teaching statistical tables such as the Z table. Second, I describe how incorporating functionality from the R language into a lower division statistics course has shifted the focus from rote calculation to more conceptual understanding. Finally, I present some concrete strategies and examples for teaching R as a scientific calculator, which is much simpler than learning to program. You do not need to know R or programming to follow this approach. |
4:00 PM | Jeffrey S. Meyer jeffrey.meyer@csusb.edu | San Bernardino | Learning Number Theory and Cryptography Through Programming in Python | Cryptography is filled with authentic tasks which motivate students to learn concepts in numerous areas, including number theory, group theory, linear algebra, and complexity theory. From the initial exploration to the implementation of a final solution, these tasks inherently require the understanding and use of programming. Over the past few years, I have been teaching cryptography courses with the use of Python and Sage. In this talk, I will share some of my experiences and reflections. |
Time | Name | Affiliation | Title | Abstract |
---|---|---|---|---|
3:00 PM | Bori Mazzag borim@humboldt.edu | Humboldt | Teaching “Introductory Mathematical Modeling” to students with varied computing abilities | Computational explorations can provide a powerful tool in problem solving. Our course, “Introductory Mathematical Modeling”, is designed to help students develop and practice a variety of problem-solving techniques. I will describe how I scaffold student learning in the computer lab for the course by giving assignments of increasing computational complexity, and how I use open-ended lab assignments to keep more advanced students engaged |
3:30 PM | Laura Smith Chowdhury lausmith@fullerton.edu | Fullerton | A Freshman Level Computational Linear Algebra Course | In the 2017-2018 academic year, three new lower division mathematics courses were introduced at Cal State Fullerton to help students build problem solving and programming skills early on in the major. One of these courses, an Introduction to Computational Linear Algebra, is designed for students to take in their first year with only Calculus I as a prerequisite. For this four-unit course, two units are dedicated to learning basic programming constructs and skills, and two units are dedicated to linear algebra topics and applications. This talk will discuss the course’s structure and how the two topics are interwoven throughout the course. We will also highlight some of the real-world applications the students are able to explore during the course. [Slides] |
4:00 PM | Chris Curtis ccurtis@sdsu.edu | San Diego | Using Jupyter and Python for a First Course in Programming in Mathematics | In this talk, I will provide a brief introduction to Python, NumPy, and Jupyter Notebooks and show how they are used in our department’s “Introduction to Mathematical Programming” course, or MATH 340. I will also explain how the course is structured, how assignments are developed and collected, the role of group work, and also point towards some future directions I would like to see the course take. [Class materials] |