The September 26th session is full. Follow our newsletter for updates about future sessions.
How would you like to use the powerful tools of the Python programming language to explore math ideas like algebra, geometry, fractals and 3D Graphics?
Hacking Math is an informal computer programming course where you’ll learn to explore math and science topics deeply by using Python programming. It’s not about avoiding math using calculators or computers! It’s about automating the boring stuff so you can get to the fun stuff, like fractals and 3D graphics. It’s important to be able to think mathematically. It’s equally important to be able to solve problems using appropriate technology. No previous programming experience is necessary; you’ll learn the major tools of programming in Python, one of the most widely used programming languages around.
Soon you’ll be able to use those tools to help you visualize and explore math topics like Algebra and Geometry. You’ll be challenged to solve problems by building new tools which will always be in your toolbox for future challenges!
The course is for teens ages 12 and up. It starts September 26th and runs for 6 weeks until October 31st, meeting at 4 PM Eastern US time. See FAQ at the end of this page for more details.
In addition to forum activities you can do any time during the week, there is one live online meeting per week, in a small group of up to 8 participants. Register now!
(This is a portrait of me, made out of emojis. Click it to see a closeup!)
My name is Peter Farrell and I was a math teacher for eight years and a math tutor for four more. My life changed when I read Seymour Papert’s Mindstorms, which made a good case that everything in math class can be done on computers. Then Guido van Rossum created the Python programming language, making it easier to use computers to do everything under the sun, including learning mathematics. In 2015 I published Hacking Math Class Using Python, the first book to use Python programming to explore math topics from Algebra to Calculus. Now you can learn math by making tools to solve a problem. First, you model it using Python, make it visual, then you solve it, and finally you extend those tools to solve other problems. I’m really looking forward to sharing all my ideas with you!
Week 1: Learning the Main Tools of Programming Through Turtle Geometry
The fundamentals of programming: making things happen on the screen, using loops to repeat commands, replacing numbers with variables. All using turtles!
Week 2: Powerful Tools: Conditionals and Lists
Making our computer smarter by interacting with humans and making choices. It’ll play a number guessing game and it might do some of your math homework, too!
Week 3: Teach Your Computer Arithmetic!
We’ll write programs to do somewhat harder math like factoring and the Pythagorean theorem. How can 25 degrees be “nice weather for a walk”? Our programs will convert from one unit of measurement to another instantly!
Week 4: Algebra: Find the Mystery Number
Our programs will help us solve algebraic equations, which are really number guessing games. The equations get harder, but we have tools to help. In fact, our turtles will help us to make the input and output very visual!
Week 5: Geometry: Where Does That Line Go?
Our tools so far (and a new one: lists) will help us solve geometric problems, like finding the equations of lines, coordinates of intersections, and the areas of triangles. Our turtles are back to make it visual!
Week 6: Trig – Up and Down, Round and Round
This week we’ll make 3D objects oscillate back and forth and round and round using sines and cosines. Vectors help us move things around like bouncing balls and planets!
My son wants to do this. However, we are in Australia will be on holidays for 8th July.
Can he do a catchup ?
Also how does the payment work? The transfer usually means US$250 amounts to AU$300 plus. Do you know the exact amount? It could be too much for us.
The meetings will be recorded, so if you miss one, the course should still work – you can watch the recording.
The payment system converts by the current official courses between US and AU. It should tell you the exact amount before you agree to pay. I can’t check on it myself, but let me know if you start the payment process and anything is unclear within it. Until you press the final payment button, nothing goes through.
I hope to see you in the course!
Yes, he may miss all of them due to the time difference.
Your 6pm lesson is 8am EST and he’s at college.
And Saturday, your 12.00 midday class is our 2am time
What is the target age for this course?
The age is 12 and up. We will run the course in the fall and I’ll add the age to the description. Thank you!
Is there a prerequisite math level for this course?
This course will teach about algebra level of mathematics, and you need to understand number operations, including fractions and negatives. You don’t have to be quick at arithmetic – that’s for computers!
thanks. Not sure if my 11 year olds are quite ready for it. will it be offered again next year?
We might offer it again, Rhonda, I am not sure when though. The topic is important and there is much interest.
Can you please confirm the classes are Saturdays at 4PM and please confirmt he timezone? I cannot seem to locate that information… Thanks!
Carolyn, classes are on Saturdays at 4 pm Eastern time. I updated that page, but you may have the old version in your browser’s cache. I hope to see you in class!
I’m a teacher and I would love to incorporate your book into my class. I won’t be able to take the course, but where can I order the book? Do you have any tips for teaching python for the first time.
Thanks for the message. So glad you’re interested in using the book! You can download the .pdf at http://www.farrellpolymath.com/.
I always start teaching Python by drawing with turtles, which I cover in chapter 1 of the book. People just need to learn a few commands and in no time they’re creating cool graphics and showing off their creations to everybody! My introduction to programming was Seymour Papert’s excellent book Mindstorms, which introduced Logo turtles to the world.
Using turtles, you can introduce all the important programming concepts from loops and variables to functions and recursion.
Please keep me posted on how it goes!
For some reason, this website won’t allow me to sign up for your newsletter. My son would deeply love this class. Please let me know when you offer it again.
I added you to the newsletter and will look into the glitch. Now you will hear about all our adventures!