Week 17: Sierpinski in 3D Building Toys

My Building partner and our Menger Sponge

This week break out your blocks (or whatever building toy you enjoy). We are building a Sierpinski cube (Menger Sponge) or Sierpinski tetrahedron. I would also encourage learners to create their own shape and expand on it to create a self-similar sculpture or fractal (think what each iteration would look like).

Here are a few options for building:

1.) Use this link for a paper model (good for a short class or quick project).

2.) Use toothpicks and gumdrops, cardboard, paper, aluminum foil or other handy building tools in the house.

3.) Use lego (I try not to show learners pictures of the tool they are going to use. I think it’s important to figure it out and discover.)

4.) Try Lux blox – this took us quite a while for the third iteration, but it was fun. We found that for the first three sides we needed to build inward to “figure it out.” My daughter built the last two sides while I build inward. It was a lot of fun.

3 iterations

5. Goobi toys are great and my kids and I have built many fractals with them as well. Below is the Sierpinski tetrahedron.

Week 9: Dragon Curve

The Dragon Curve is a fractal that is well explained in this numberphile video. This week learners can create a dragon curve with a strip of paper, Lux Blox, Python programing, Legos or toothpicks.


For paper, I would suggest using a strip of thin paper. Thicker paper doesn’t produce as many folds as thinner paper. You fold the paper in half, and just make sure you fold from left to right. You can tape, glue or pin your dragon curve down when you are down. One question I like to ask students is: “does the length of paper change how many folds you can get? If so, how?” It is a fun experiment to run.

Lux Blox:

I put together a pdf on this project here.


If you have never used Python, then I recommend going here. For kids there is a great DK book here.

With python, I would encourage learners to think about how the algorithm would look to create the Dragon Curve. There needs to be a loop for each iteration, but what does that look like? Here is my code (copy and paste it into a py file), but I encourage learners to try first. If you notice that I have an input for angle, it’s because I liked playing with the angles of the dragon curve to create different patterns and variations of the curve. You can hardcode it to 90 degrees if you wish. Play and you never know what you will find.