Computational Literacies Lab

11. Strategy

Week 11 (November 2)

Due: 3.1 Dice lab

Assigned: 3.2 Tic tac toe lab

Modeling state, game strategy, and the study of algorithms, introducing the Tic Tac Toe lab.

Weekly update

Outline

  • 0:00 This week. An introduction to the Tic Tac Toe lab, a few logistics, and an introduction to MWC Chat.
  • 0:18 Tic Tac Toe. How did you get good at Tic Tac Toe? Can you always win if you go first, or at least never lose? How would you prove it, and how would you write a program that plays the game?
  • 1:01 Goal 1: state. State is everything you need to know about a game right now to put it back exactly as it was if somebody bumped the table. In Tic Tac Toe that's just the board and whose turn it is. In other games it includes hidden cards or how much money each player has.
    • State is what you'd write to a save file. It also lets you pass around a position in the space of all possible positions, so that strategy becomes a way of moving through that space toward good states. That question leads right into machine learning.
  • 2:29 Goal 2: more object-oriented programming. Building on the Dice lab, using classes, instances, and methods to model a problem (here, a game). A class is like a little organism: the whole world of variables and functions you're used to, wrapped up into a sub-world.
  • 3:31 Goal 3: programming as a tool for thinking. Making With Code 1 is an introduction to programming across three paradigms, experienced as an introductory student. In the next course, LAI 677, we shift from learning to program to using code to think about big, powerful ideas you can't really wrestle with except through code.
    • Strategy is one of those ideas: how do you write down "if they do this, I'll do that" in a clean, structured way?
    • 5:12 The AI unit at the end of the next course picks this up with reinforcement learning: instead of programming explicit rules, a program learns from its own successes and failures to get good at a game (Pac-Man, say) that nobody taught it to play.
  • 6:16 It's conceptually challenging, but there isn't much code to write. Don't let it be overwhelming. The labs are designed to be done in groups, not on your own: meet with your study group, post on Discord, and book office hours.
  • 6:56 Office hours. Office hours are filling up, and I'll keep posting more times on my page. If none of them work for you, let me know on Discord or by email. If you're feeling stuck, let's meet and get you unstuck.
  • 7:23 Assessment. My goal this week is to get completely caught up on assessment. If you didn't get full credit for something, finish it up and resubmit it, and I'll reassess it.
    • Run mwc status to see which assignments are not yet submitted, submitted but not yet assessed, and assessed (with your score). Each assessed lab or project has an assessment.md file with your score and feedback.
  • 8:07 MWC Chat. AI is already changing programming and CS education significantly, including students using tools teachers haven't authorized. Rather than pretending that's not happening, learn what it looks and feels like, and join other educators in figuring out how to respond to the world as it is.
    • The MWC Chat page has an introductory video, setup, and usage guides. We'll be updating how MWC Chat works, sometimes almost daily, through the rest of this semester and into the next, including its instructions and what we ask it not to do.
    • Mess around with it and send us your wish list: what you wish it did, what you wish it wouldn't do, and what it would need before you'd use it with your students.
  • 10:08 Schools as laboratories. Nobody knows yet the best way for schools to respond to AI; it's too early for best practices. In past waves of technology, technology companies set the agenda and schools were left to limit the harm. Schools should instead be laboratories for sustaining powerful teaching and learning communities, and a pluralistic democratic society, as AI arrives, with teachers and students involved in real decision-making. MWC Chat isn't a finished tool being foisted on you; it's an ongoing exploration. Join us if you're interested.

Tic Tac Toe lab walk-through