Saturday, September 14, 2019

Fractals, Algorithms, and Us: Building the syllabus

I will break this post into three parts!

Choosing the readings

Once I had the previously discussed teaching goals as a basis, the next step was to choose reading material to guide the journey. I knew that I wanted students to have at least one reading a week, with space in class for them to unpack. Having only six weeks at my disposal, I had time for only five selections—six if I allowed in-class reading in the first week and maybe a couple more by squeezing in some shorter stuff as one assignment or taking additional class time. As a man who craves structure—I'm an algebraic topologist, it's just who I am—I decided to go mostly chronologically.

Remember, what I needed to do was tell a six-week story of mathematics which created the environments necessary to accomplish my teaching goals along the way. The story arc I wanted to follow was roughly this:
  • Math is part of the human effort to solve problems and therefore it is found in every culture. Since math arises in this way, we should spend time understanding how it connects to the cultures, societies, and physical environments of the people who do a particular form of math. 
  • Now that the students have just spent time internalizing that math is deeply tied to the shared experiences of the people that develop and practice it, they are better prepared to understand the role of math in colonial violence. This includes the use of math as a tool to materially shape who had access to education and wealth, but also the use of math towards the eradication of indigenous knowledge in colonial societies and establishment of cultural hegemony.
  • Moving into the postcolonial era, we can continue to talk about the connections between math and institutional power. There are more well-known and clear examples—weapons development, code-breaking, interest rates, and gerrymandering, to name a few—but also more furtive ones, such as artificial intelligence or big data.
  • Students see by now that the act of doing math, science, and intellectual labor more broadly is hugely contextualized by the world around us. Therefore, as a sort of epilogue, I want them to see that STEM workers have a shared responsibility for how the knowledge we create is used. In other words, to build a more just society, a crucial element has to include scientists and engineers who understand power and share a notion of solidarity and justice in a way that protects and empowers the most marginalized among us.
I read a ton of books to get to a place where I felt like I could meet these tall requirements. So
my honorable mentions which didn't make the final list (though some students read excerpts on their own) were Decolonising the UniversityThe Imperial UniversityPower in Numbers: The Rebel Women of MathematicsA Mathematician's LamentThe Imagineers of WarHow to Bake Pi: An Edible Exploration of the Mathematics of Mathematics, and Rehumanizing Mathematics for Black, Indigenous, and Latinx Students. I also have to mention this great repository on decolonizing science, put together by Professor Prescod-Weinstein, which I am only partway through myself. Remember that you can also see the old syllabus for Fractals, Algorithms, and Us here.

The final readings
  • Week 1: Joy in the Struggle, by Bea Lumpkin. We read a section from the beginning of Chapter 22, in which she recounted uncovering evidence for the Egyptian notion of zero while attempting to meet the demands of students pushing for African American studies at Malcolm X College in 1968. 
  • Week 1-2: African Fractals: Modern Computing and Indigenous Design, by Ron Eglash. This book was used by many students for their final projects, but the section we discussed in class was the cross-cultural survey of indigenous mathematics which, among other things, highlights the remarkable ubiquity of a fractal aesthetic across the entire African continent (but nearly nowhere else). 
  • Week 1-2: Pedagogy of the Oppressed, by Paulo Freire. This whole book is great, but I asked the students to read the beginning of chapter 2 on the teacher-student relationship so that we could all think together about our roles with respect to one another. I wanted to create an environment where students could recognize and help each other to reject the so-called banking model of education, wherein "students are the depositories and the teacher is the depositor."
  • Week 2-3: "Western Mathematics: The Secret Weapon of Cultural Imperialism," by Alan Bishop. Not a book, but a great read about math in colonial societies which critiques the widely held belief that math is culturally neutral. We also used Chanda Prescod-Weinstein’s “Making Meaning of ‘Decolonising’” to frame our discussion, which I personally think is an incredible post to truly think about (1) decolonization, not as a feel-good metaphor but a serious endeavor to dismantle settler colonialism, and (2) decolonizing science in particular. Especially after the first two weeks of internalizing math as a living and breathing embodiment of cultural heritage and shared struggle, the way in which students immediately recognized the violent colonialism inherent in the eradication of indigenous mathematics by European ideas was very moving to me.
  • Week 3-4: "Geometry versus Gerrymandering," by Moon Duchin in the Scientific American. This is a really well-written article by an incredible mathematician about gerrymandering, which is the act of securing a political advantage for a particular party in power by manipulating district boundaries, and the use of math (Markov chain Monte Carlo methods) to fight it. This is a pretty overt use of mathematics for political gain, but still a good transition to the contemporary era—especially in a city as gerrymandered as Chicago.
  • Week 4-5: "Racist in the Machine: The Disturbing Implications of Algorithmic Bias," by Megan Garcia. This article does a great job of breaking down the unconscious and institutional biases that affect modern algorithms, as well as some of the racist, sexist, and xenophobic consequences.
  • Week 5-6: Scientists at War: The Ethics of Cold War Weapons Research, by Sarah Bridger. This book talks about, among other things, scientists who lobbied against the use of chemical defoliants, napalm, and the 1980s Star Wars program. It does a good job of looking at how individual science advisors, looking to wield influence from within the government, were ousted and how these advisory roles were diminished in the administrations of future presidents—this fits nicely into the importance of collective and organized power in the pursuit of justice, which I wanted to emphasize.
  • Week 6: "The Dual Nature of Science," by Conor Dempsey. This is a neat essay in Science for the People which links militarism, reproductive justice, eugenics, and organized scientists fighting for a better world. I thought it would be a good epilogue to the course, with even more space to think about power. 
Interweaving the "math"

I say "math" here because, of course, we're already doing math in some sense. Apologies to old English teachers who insist that quotations aren't for emphasis—it's not my first language.

Anyways, now that I was armed with these really cool readings, all I needed to do was populate the course with the more recognizable "math" content and we were ready to go. My goal here was to pick mathematical topics which would pair nicely with what we were covering as we read.

All told, this part was actually pretty easy. The subfield of math which I specialize in, called topology, lends itself really well to picture-drawing (or, if you're me, interpretive dance) and is deeply connected to the age-old problem of solving polynomials. In fact, I once gave a talk called "The topology of the quadratic formula." In another life, in the far-off mountains of Socorro, New Mexico, I was both a computer scientist and physicist—that just means I had a very eclectic background of example material to draw from. Here's what we did in class:
  • Week 1: We start by solving equations, as motivated by the Babylonians over 5,000 years ago, which naturally leads the students to manipulating complex numbers. This also led to our first example of an algorithm—the Babylonian square root-finding method—which the students played with for homework and we coded up together. To practice coming up with their own algorithms, but with the stated goal being to create fun art, students did a lot of in-class exercises with the Turtle module in Python. We also played around with sorting lists, where the students broke into groups and independently created the insertion and bubble methods—this was a really remarkable moment for me to witness, having offered no advice on the problem and thus being truly de-centered as the Source of Knowledge.
  • Week 2: After the Babylonian method, we moved on to the so-called Newton root-finding method for higher-degree polynomials. Some of the students hadn't taken calculus yet so, rather than go into detail rigorously defining a notion of derivative, we stuck to heuristics: they'd draw pictures and do calculations with various examples to see how the algorithm worked. Once you do that, the Newton fractal pops out (this was such an incredible a-ha moment for the students)! 
  • Week 3: We hopped back on the fractal train by exploring Mandelbrot/Julia sets and Buddhabrot renders. We also reviewed some of our old sorting problems and introduced the heap sort as an alternative to the bubble and insertion methods they had developed. Homework consisted of hypothesizing which numbers would escape the "Mandelbrot Mill," comparing how different sorting algorithms performed in different situations, and each student creating a portfolio of hand-drawn and computer-generated fractal art.  
  • Week 4: We started talking about more advanced algorithmic ideas, including page-rank algorithms and neural networks. Both required students have a basic understanding of linear algebra—I had been surprised to know they all had seen matrices already, though they also unanimously expressed understandable anxiety and disgust when I mentioned the word. We started talking about the problem of recognizing digits written by hand, tried to gerrymander and prevent gerrymandering in a simulated city, and rediscovered RSA encryption.
  • Week 5: With students preparing their final projects, we had to pull back before building a full-fledged neural network together from scratch. Instead, the students played with the idea of gradient descent and cost functions before we looked at a visual representation of a neural network I coded up to recognize handwriting. We had a blast trying to understand how different neurons fired when different shapes or patterns were present in the samples. 
  • Week 6: Final projects! We also listened to some computer-generated Shakespeare.
Phew. Okay, that's enough for tonight. Stay tuned for more!

Friday, September 13, 2019

Fractals, Algorithms, and Us: Teaching objectives

The content of the course was designed around the following broad goals, assembled from my own experiences as a queer New Mexican Chicano mathematician and labor organizer at the University of Chicago:
  • Establish mathematics as a living, breathing subject, part of the lived experiences of the student, their communities, and their ancestors. In particular, students should feel emotions throughout the course, reflect upon them, and then connect them to the practice of mathematics. Instead of the cold and sterile presentation of a typical math class, where knowledge is "about information only" (as said beautifully by bell hooks) and colored only by half-hearted attempts at connecting to reality through contrived word problems, we should immerse ourselves in the context of what problems people were actually trying to solve in their daily lives as they developed these mathematical ideas.
  • Explore math, and access to mathematical knowledge, as a dynamic political force that changes the world rather than existing separately from it. This goal is both contemporary and historic in its focus. I also intentionally wanted to challenge the usually individualistic and thus ironically disempowered saying that “knowledge is power.” Instead, I wanted students to reckon with how math as a social construct, together with its perceived neutrality, has contributed and continues to contribute to mass disenfranchisement, colonial violence, and the modern surveillance state.
  • Challenge the Eurocentric bias of mathematical history. Because math didn’t begin with the Ancient Greeks! Instead, the goal should be to center indigenous people throughout history to understand how their lives played into the mathematics they developed and used. Especially taken with the goal described in the first bullet point, wherein math is thought of as an inseparable part of the human experience rather than an abstract set of rules dreamt up by some boring and long-dead European men, I hoped that students would begin to see for themselves the colonialism inherent in modern mathematical practice.
  • De-center the Teacher as the Source of Knowledge. In most modern math classes the Teacher enters the space of waiting students, projects ignorance upon them, and then proclaims Knowledge upon the chalkboard. The students are measured by how dutifully they are able to act as empty vessels to be filled by said Knowledge, signaling whether they should be invested in or divested from by future Teachers and institutions of Knowledge. All told, there can be no learning without the Teacher and their Knowledge; the Teacher is the subject, rather than the students. Instead, I aimed to facilitate an environment where students enjoyed a high degree of agency over their education, especially through student-led projects and breakout groups. Check out Pedagogy of the Oppressed for more of what inspired me here.
  • Develop a working knowledge of programming and some basic algorithms. This goal is very personal to me, deeply connected to my own quest for agency and self-actualization. Despite growing up with a mother who taught me to love math before I could speak, I hated the subject for most of my childhood because of my experiences with math education in school. The thing which allowed me to fall back in love with the thing I have spent my professional life studying was a teacher, Mr. Maier, who gave me a book called Processing: A Programming Handbook for Visual Designers and Artists. Armed with this book, I'd steal away whenever I could to our high school's ancient computer lab and create. Programming allowed me to explore gravity, magnetism, fractals, art, predator-prey behavior, music, and so much more (some old code is here—please remember no one had taught me about commenting or style yet) in a completely new, self-driven way. So, with this class, I wanted to teach students to code with the aim of developing a heuristic approach to both mathematics and problem solving so that they could feel empowered to investigate things on their own.
  • Expose the students to mathematical topics and material resources they would ordinarily not encounter in high school. This goal was geared especially toward contemporary topics, like machine learning and chaotic systems, whose applications range from predicting the weather to scheduling employees' shifts. So the idea would be that we could black-box some computationally complicated prerequisites for the sake of giving students an intuitive understanding of deeply pervasive modern ideas. Also, the University of Chicago has 3D printers, laser etchers, and video games labs—I wanted students to have access to these amazing materials and resources.
These guiding principles led to the following learning objectives. Students will:
  • Explore math as a social and political concept through weekly readings and reflections. This objective includes both following a narrative throughout human history which expresses math as a collective endeavor to solve problems and also understanding the colonial context of math research and education.
  • Write algorithms to solve polynomials, sort lists, and render fractals. The first is a five-thousand-year-old problem, the second is both instructive and delightful, and the latter unlocks infinite creativity.
  • Be comfortable manipulating complex numbers. This particular set of numbers is not only necessary for understanding many concrete examples of chaotic dynamics and the emergent fractals, but also deeply related to the problem of equation solving. Since this was an endeavor necessary to the lives of countless humans (millennia before Greek societies came to be), the complex numbers feel like an appropriate avenue toward humanizing mathematics. 
  • Develop a working knowledge of basic programming concepts, including logic, loops, conditionals, and functions, via the Python language. Programming is an increasingly essential skill set in the modern world, but learning how to code also equips students to question on their own in the way that I once did in high school.
  • Collectively design and train a neural network to recognize handwritten numbers. Neural networks are an increasingly ubiquitous tool of modern data science and are a concrete example of a mathematical idea that is currently changing the world in a deeply politicized way.
In the next entry, we'll take these objectives and actually synthesize a reading list and collection of abstract mathematical topics into a real class. After that, we'll talk about the day-to-day structure of the classroom and how exactly it looked to facilitate student-led discussions and learning.

Thursday, September 12, 2019

Fractals, Algorithms, and Us: Preface

I've been thinking a lot about how to share my experiences from this summer. A handful of friends had suggested that I describe the process of developing my syllabus, framed around some of my teaching goals, then use the actual teaching of the class as a sort of data gathering to either support or refute my hypotheses. I took studious notes and kept a journal of the whole experience, in addition to keeping hold of all the students’ work, so this seemed right—the idea was to submit the final result for publication in a variety of pedagogy journals and it seemed like the right thing to do as I prepare for the job market.

As a good scientist, I tried to outline a report structured in the same format as the lab reports that my incredible AP Chemistry teacher (shout out to Ms. Varoz) taught us to write in high school—complete with an abstract, introduction, methods, results, discussion of theory, and conclusion. I even gave it a grand title:

"Fractals, algorithms, and us: a case in practicing critical pedagogy in math education."

This was me overcompensating for my general lack of formal pedagogical knowledge, a fear that everyone would immediately recognize that I'm just some math grad student who has spent his professional life working in national laboratories, has only taken a single non-STEM course since high school, and has no place occupying the same space as trained pedagogy experts. The resulting write-up, of course, was something that felt entirely cold and dehumanized, which is completely antithetical to what I set out to do with this class in the first place.

In my day-to-day life as a working mathematician, I have to use big words all the time: homotopy equivalence, ℚ-acylic, semi-locally simply connected, and quasifibration, to name a few. While of course these words have their uses in conveying very precise meaning with respect to one another in the contexts of research, they have the added bonus of acting as a sort of linguistic veneer which signals to the people around me that, despite ongoing imposter feelings, I'm qualified to exist as a graduate student in the UChicago math department.

But, when writing about my teaching experiences, suddenly I don't have big words to hide behind anymore!

Appropriately enough, it was by reflecting on an experience from this summer that I was able to move past these imposter feelings (or at least some of them—as anyone with imposter syndrome will tell you, it's an ongoing battle). While discussing the political opinions and activities of Albert Einstein and other scientists in the context of nuclear weapons research, one of my students said something very astute:

"I feel like if he said that stuff today, people would tell him to stay in his lane. Like, that he's just a physicist and it's not his place to talk about it."

The name Einstein is synonymous with genius. As we go through school and generally exist in society, we often hear his name in the context of physics—relativity, the photoelectric effect, E=mc², and so on. Occasionally other details enter the popular zeitgeist: we might hear pleasant anecdotes of an aged Einstein pausing on his daily walk to help fix a child's bicycle or sharing a can of beans with someone seeking help with her homework, or tales of an Einstein speaking out against American racism, or occasionally more scandalous rumors of an Einstein who might've stole work from his first wife Mileva Marić and might've failed out of math classes in his youth (he definitely didn't do the latter, at least). But we rarely, if ever, hear about the Einstein who vocally opposed war, the Einstein who proudly held union membership in AFT Local 552, the Einstein who was staunchly anti-capitalist, or even just the Einstein whose diary contained jarring examples of Orientalism.

This passing comment in my class inspired a wonderful student-led conversation about intellectual labor, shared responsibility, and exactly who wins in a society where workers are defined by their jobs and simultaneously told that what they toil to produce doesn't belong to them. But the students in my classroom also made an explicit point: a lack of formal education in a thing should not invalidate the feelings and wisdom you glean from directly experiencing said thing. These narratives of "stay in your lane," when used by those in power, cow people from exercising agency over their lives. To my students, this conclusion came from the tale of a physicist—not a statesman or political scientist or military general "qualified" to have an opinion on war. But, upon reflection, they realized these were the same sort of feelings that many of them have associated with math, science, and education for much of their lives—we are made to feel stupid and powerless by people who ostensibly know more than us. After all, to see evidence of the apparently universal trauma we all share around math, all it takes is telling a stranger in nearly any social gathering my field of study: almost without fail, the response is either “Oh I hate math” or maybe “I’m so bad at math!”

In the same way, the practices of critical pedagogy did not begin when the modern giants like Friere and McLaren started using big words to describe it. Instead, as noted by bell hooks in the introduction of Teaching to Transgress: Education as the Practice of Freedom: "We learned early that our devotion to learning, to a life of the mind, was a counter-hegemonic act, a fundamental way to resist every strategy of white racist colonization. Though they did not define or articulate these practices in theoretical terms, my teachers were enacting a revolutionary pedagogy of resistance that was profoundly anticolonial." Like everything else, these ideas were part of the lived experiences of everyday people doing work long before they were studied by the modern-day academy.

So before we begin, let me be forthright: I am a mere mathematician and teacher of mathematicians, completely untrained in the more abstract and jargon-heavy aspects of pedagogy but equipped with almost a decade of experience in actually teaching. I'm not pretending to be all-knowing, especially when it comes to the millennia of shared human experience in passing on knowledge which I am only just learning about. I simply love my work and I love my students: my life has been hugely shaped by my experiences with both. I am also not a lone pioneer of these ideas by any means and do my best to attribute ideas to those who have come before me whenever possible.

As such, I present the following of my 2019 summer teaching both humbly and excitedly. Check back regularly as I will be using this blog to tell the stories of creating and conducting this course. I hope this medium will facilitate a more genuine sharing of the journey, free from the fears of my journal editors, their scathing emails, and wildly inaccessible paywalls.

If you are a teacher, STEM or otherwise, I hope that some of these anecdotes might inspire you to try something new, share your own experiences too, or maybe both and more. If you once were or still are a student, I hope that these stories can help to give you a new perspective on math in which you are empowered to create, rather than being inundated by formulas and shared trauma.

I have only my experiences to share. Join me, won't you?

Fractals, Algorithms, and Us

This summer I taught a six-week class, which I had designed over the spring, called Fractals, Algorithms, and Us. The students are currently CPS high schoolers—most are black and Latinx, roughly 80% are low-income, and about 60% will be first-generation college students. The original syllabus is here. Things had to be flexible because of the short timeline and lack of experience with the students, so we deviated from it a bit, but the course description remains true:


This course is designed around developing mathematical skills, with a focus on programming, while also taking seriously the cultural and social implications of mathematical work. We will design algorithms to solve equations, create and explore a variety of different fractals, and use neural networks to recognize images and generate art; simultaneously, we will discuss how mathematics combined with various forms of power have shaped the world, consider the ethical implications of artificial intelligence on human lives, and embark on a cross-cultural survey to reckon with the richly varied lived experiences of people doing math. 

This course will have a considerable component of in-class discussion and writing, as well as homework mostly conducted in Python, and will include a substantial final project.

I've had a lot of friends and fellow educators ask me to share the experiences of creating and facilitating this course, which I will do via this blog here and possibly by formal write-up sometime in the future. The planned outline is as follows:
  • Preface: why the blog format?
  • Teaching objectives: agency, power, and shared trauma in learning math.
  • Building the syllabus: choosing readings and math that fit together.
  • Discussion and reflection: talking about our feelings in a math class!
  • Solving polynomials*: complex numbers, ancient algorithms, and wicked fractals.
  • Intro to coding*: tying shoes, fun with Turtles, and sorting lists.
  • Graphics and dynamics*: finding the beauty hiding in complex numbers with code.
  • Indigenous math and colonialism*: the deeply human origins of math contrasted with post-colonial Eurocentrism, imperialism, and the myth of cultural neutrality.
  • Neural networks*: cool math problems while peeling back the curtain on computers' assumed objectivity.
  • Contemporary STEM*: gerrymandering, nuclear weapons, and marching for science.
  • Final projects*: revisiting agency in math education.
  • Postface*: evaluations, next steps, and math according to the students.
* = coming soon!

Announcing: How Chance Changes the World

Hello everyone! It's been a long time and I have a lot to update you all on. Firstly, I graduated! It wasn't something I expected ...