Free digital resources during shelter-in-place

During this strange time, many organizations have opened up their media to the world. I’ve collected the ones I learned about from my wonderful community of social media friends and colleagues. I’m just copy-pasting from them without credit, and in no particular order. This is not at all my hard work, it’s theirs. So thank you, friends!

Note: Some of these are free only for now. Some are free for a trial period with sign up. Some come with a small fee. Some are always free.


Virtual Tours

Books (read aloud)


  • Scholastic – Learn-at-Home resources
  • Khan Academy – Especially good for maths and computing for all ages but other subjects at Secondary level. Note this uses the U.S. grade system but it’s mostly common material.
  • BBC Learning – This site is old and no longer updated and yet there’s so much still available, from language learning to BBC Bitesize for revision. No TV licence required except for content on BBC iPlayer.
  • Futurelearn – Free to access 100s of courses, only pay to upgrade if you need a certificate in your name (own account from age 14+ but younger learners can use a parent account).
  • Seneca – For those revising at GCSE or A level. Tons of free revision content. Paid access to higher level material.
  • Openlearn – Free taster courses aimed at those considering Open University but everyone can access it. Adult level, but some e.g. nature and environment courses could well be of interest to young people.
  • Blockly – Learn computer programming skills – fun and free.
  • Scratch – Creative computer programming
  • Ted Ed – All sorts of engaging educational videos
  • National Geographic Kids – Activities and quizzes for younger kids.
  • Duolingo – Learn languages for free. Web or app.
  • Mystery Science – Free science lessons
  • The Kids Should See This – Wide range of cool educational videos
  • Crash Course – You Tube videos on many subjects
  • Crash Course Kids – As above for a younger audience
  • Crest Awards – Science awards you can complete from home.
  • iDEA Awards – Digital enterprise award scheme you can complete online.
  • Paw Print Badges – Free challenge packs and other downloads. Many activities can be completed indoors. Badges cost but are optional.
  • Tinkercad – All kinds of making.
  • Prodigy Maths – Is in U.S. grades, but good for UK Primary age.
  • Cbeebies Radio – Listening activities for the younger ones.
  • Nature Activities – A lot of these can be done in a garden, or if you can get to a remote forest location!
  • British Council – Resources for English language learning
  • Oxford Owl for Home – Lots of free resources for Primary age
  • Big History Project – Aimed at Secondary age. Multi disciplinary activities.
  • Geography Games – Geography gaming!
  • The Artful Parent – Good, free art activities linked to from this Facebook page
  • Red Ted Art – Easy arts and crafts for little ones
  • The Imagination Tree – Creative art and craft activities for the very youngest.
  • Toy Theater – Educational online games
  • DK Find Out – Activities and quizzes
  • Twinkl – This is more for printouts, and usually at a fee, but they are offering a month of free access to parents in the event of school closures.

Exercise videos for kids

Staying sane while teaching virtually

Almost every week for the last 2 years, I’ve been teaching in a live virtual classroom. Here are some things I’ve learned.

  • Test your equipment ahead of time

Obviously you’ve already tested the software and hardware to see if you can use it all and where the buttons are. That’s not what I mean. I’m saying that you should really know what it’s like to be on camera, to see yourself on camera while you’re speaking. It’s not at all like speaking in an in-person classroom.

You may feel self-conscious if you don’t often see yourself talk. It’s like when you see a video of yourself. (I don’t sound like that, do I?) It’ll feel awkward in the beginning, like you’re talking to yourself. You might notice yourself saying something or doing something repeatedly, which might make you to feel more stressed, which could cause you to do that thing even more, which’ll make you more stressed, and …. If you feel yourself going there, you have to take a breath and calm down. Slow your speech. Take a break.

You may not be able to see your students’ faces or their reaction to what you’re saying. Even when you ask them to react in the chat most of them likely will not. You don’t know if you’re talking to yourself or to students who are really paying attention but too shy to type anything in the chat. This is very different from an in-person classroom where non-verbal communication speaks volumes.

Try getting a reaction from students relatively frequently. “Give me a plus if that makes sense and you’re ready to move on. Give me a minus if you want me to explain it again.” Don’t give them the third option of abstention. It won’t be a substitute to seeing their eyes light up, but it might help a bit.

  • Have a “going to work” ritual

Even if you’re teaching from home, get showered and dressed as you would if you were going to campus. Go get a coffee, if that’s something you used to do every day. You need to psych yourself up before teaching. You may not think you need to do this, but it’ll make a difference in your level of concentration. You need to create some artificial signal so you can leave your “home stuff” at the door and get into prof mode before going on screen.

  • Take frequent breaks and move around

Ever see a student pass out while you’re teaching? It’s annoying because they fell asleep while you were looking right at them. Well, with nobody looking at them, it’s a lot easier for them to drift off to dreamland or get distracted. Virtual classes require more mental breaks than in-person classes. You’ll need to work that into your teaching.

And when you take those breaks, YOU (and the students too) should get up and stretch, walk around. Don’t just sit through the break even if you have some emails to check. They can wait. You’re used to teaching while standing at a podium or walking around. Your physical body exerts energy to be able to do that, blood is rushing and moving oxygen. It will make a difference in the way you speak and think.

  • Make time to chat with your colleagues

If you’re used to making small talk with the administrative staff or catching up with friends in the mail room, you’re more social that you may give yourself credit for. And it’s going to be important to continue to maintain some of that social life to keep yourself happy. You may not feel it in the first 2 or 3 weeks. But sooner than later, you may find your anxiety levels increase, your ability to focus decrease, or other mild symptoms of depression start to appear. Schedule online tea time with some of your colleagues at least once a week so you can meet your social quota for the week.

  • Don’t forget we’re ALL going through this

And finally, as difficult as it is for you to get through this transition, it’s no cake walk for your students either. They need to keep their sanity as well. READ THIS BLOG and remember that we’re all under a lot of stress right now.

Also, you may think that being extra flexible is showing kindness or understanding to your students. It may not work out that way for some students. In this confusing time, I suggest that you not give them more options, more uncertainty. Set well-defined boundaries so that at least this part of their life has stability. Any student who cannot fulfill any part of your requirements will come to you in private, as usual, and you may show mercy to them then on a case-by-case basis.

There are many sources being shared for how to deliver an online course. Read them, learn from them. Here, I want to emphasize that it’s important to take care of yourself, too, now. There are others who will surely benefit from your guidance.

Pi Day for 1st Graders

This year for Pi Day, I decided to go to my daughter’s 1st grade class to talk to the kids about math. After posting the above photo in my social media account, I got a few questions about what I taught. I figured I might as well write it down for preservation since I did spend some time thinking about it and felt it went quite well. Also, this way I can refer back to this blog later, when the younger one is in 1st grade 🙂

I need to begin with a few notes. My daughter attends a private school. Why does this matter? For one thing, the class size is small. This 1st grade class has 17 children, all of whom recognize and are comfortable around me.

Also, the school’s teaching style is not at all what I experienced in public school in Queens, NY (back in my day…). The teachers provide a unique learning program for each student matching the student’s individual learning style.

Putting those things together, we have a group of students who are not afraid to try new things, even with someone they’re not used to learning from. The following lesson plan happened to work in my daughter’s class, but I don’t know if it would work in a larger class, for example. Anyway, let’s get started.


I introduced myself as a mathematician. My daughter’s class is full of girls. Of the 17 students, only 5 are boys. So it was important to me to tell the girls that I am not just someone who likes math. I am Fr. Dr. Mimi. I spent more years in school after high school than before it. I spent 15 years studying mathematics! And now that I studied so much more math than most people in the world, it’s my responsibility to teach math to anybody who wants to learn about math from me.

And today, I want to talk to you all about math because today is a very special math day. Today is Pi Day! This letter on my T-shirt is a symbol that represents a very special number. You all spent a lot of time this year learning about counting numbers. This is a special number that isn’t a counting number.

This letter [latex]\pi[/latex] is actually a letter from the Greek alphabet. You all know what an alphabet is, right? A, B, C, D, … Some languages have different letters in their alphabet. In German there’s an ö and ü and ä. In Spanish there are letters that are different, like ñ. And in Greek there are also a bunch of letters like A.

What letter do you think “A” is? This is the letter alpha. This is the capital letter alpha. Here’s the lowercase letter alpha: [latex]\alpha[/latex]. Here’s capital and lowercase beta: B [latex]\beta[/latex]. And the next letter in the Greek alphabet is gamma: [latex]\Gamma \; \gamma[/latex]. And this is the letter pi: [latex]\pi[/latex].

The Greeks also have symbols for numbers. This is the symbol for one: I. And this is the symbol for two: II. Here’s the symbol for five: V. It actually doesn’t matter what symbol we use for numbers, as long as we all agree to use it. Numbers aren’t real. You can see or touch numbers the way you can see or touch a cat. Zero is a number that represents nothingness. And three is a number that represents how many things you have, but not the actual thing. Numbers are just ideas. Some numbers can be used for counting. But not all numbers are for counting. Pi is not a counting number. Pi is a very special number that has something to do with circles. And we’ll talk more about that later.

So far you might think that math is all about numbers. But that’s only because you just started learning math. When you start to read, you start with the alphabet, but eventually you start to form words using those letters. And then you combine words together using special rules to make sentences. And you combine sentences together to write stories.

Numbers are just like the alphabet. So 1 and 5 and 200 are all letters. Right now you’re learning about plus and minus. Well, 1+5=6 is a sentence in mathematics. And I’m going to show you today that you can tell stories in mathematics without using any numbers at all!


I am a very special kind of mathematician. I am a geometer. I study geometry. I don’t study numbers. I study shapes. So I’m going to talk to you all today about one of my favorite shapes. The circle.

Before we begin we have to start with a special word we use in mathematics: distance. Distance is used when talking about something far away. Distance is expressing exactly *how* far away that something far away is. Sometimes you might hear someone talk about short distances using a different word. Length. How long something is.

Now take a look at these two lines. Can someone tell me whether the length of these two lines are the same or different? What’s your guess?

A guess is also called a hypothesis. And that’s great place to start. Now I want you to show me that your guess is correct. How can you show me whether these two lines are the same or different?

I gave the kids a chance to play around drawing other lines on the board and drawing more lines with the giant triangle I used to draw the lines. Then someone suggested marking the giant triangle.

Great idea! You want to compare one line with the triangle and then compare the other line with the same triangle? I’ve actually brought some tools with me that you might be able to use to do exactly that.

I brought with me a bunch of rolls of colorful string. (Hemp string about 10+m each in 6 colors. Was on clearance at Target for $2.50. Cut them to be about 4m per student.) I used the string and measured out the length of one line, remembered it, and then brought it over to the other line to compare. I handed out a string to each student.

So these two lines are the same length! Is everybody here convinced? Does anybody still think that these two lines are different?


Next I pulled out some colored paper. (I bought 3 giant poster-sized paper, also at Target, at about $0.69 each. They were not soft like construction paper, but rather stiff. I cut them to be about 4″x18″.) I handed one out to each student.

Now do you think these two (pink) edges of this paper are the same or different. Show me!

Now tell me if these two edges are the same or different. Show me! And see if you can find a way to show me without using the string. (Solution: Just bend the paper over to put the two edges together.)

Now we’re going to do something much harder. I got the paper and got some tape and taped the two short edges of the paper together to form a cylinder. I showed the two circles that form on the boundary of the cylinder. And I asked are these two circles the same length or different? What does it mean to ask about the length of something that’s curved?

To measure the circumference of the circles on the cylinder, I showed them that we could just use more tape and go around the circle using the string again. Because the string bends just like the paper bends. Once we get back to where we started taping the string down, we could probably cut the string. Then reuse that string to compare the circumference of the other circle.

But actually, I told them, we already knew that the two circles are the same. How?? Just open up the cylinder again and we get back the original rectangle! We can prove that the circles are the same “length” by reusing an older proof about the length of two edges of a rectangle. We never changed how long the edges are, so the lengths should still be the same even if it’s curved!

At this point, I think it would have been a good idea to spend a bit of time letting the kids play with this idea of the “length” of a circle. I feel now that I didn’t give them enough time here. I think it would have been better to let kids come up with their own ideas. For example, a diameter would be a perfectly reasonable attempt to measure the length of a circle. It’s unfair to assume that a circumference is the only length of a circle. And it would have been a great way to segue back to the conversation about [latex]\pi[/latex].

But I got ahead of myself and way too excited about the next thing I wanted to show them: a Möbius strip.

Once the cylinder was back to rectangle again, I showed them that we can just introduce a half twist to obtain what is called a Möbius strip. (I had to do the actual construction myself for every student.) I then asked them whether the circles on the edges of the Möbius strip are the same or different.

A bunch of kids immediately said they must be the same for the same reason as before. I think they had had enough by this point and few had the patience or attention span to complete this final task. But about 2 or 3 kids were still intrigued. They tried the trick of using tape to go around the edge and realized there’s only one circle. This seemed to surprise them, but not amaze them, which is the reaction I was hoping for.


At the very end, I spent about two or three minutes demonstrating to them what [latex]\pi[/latex] is. I got a string and measured the diameter of a circle and cut it. Then I cut another string for the circumference of a circle. And then show them that I need to get a little bit more than 3 of the short strings to get the long string. I explained that it doesn’t matter how big or small the circle is. You’ll always need a little bit more than 3 of the short ones to get the long one. And that number keeps showing up so many times in nature that we decided to give that number a special symbol [latex]\pi[/latex].

I’m pretty sure nobody got the message about [latex]\pi[/latex]. But my goal to begin with was to show the students that math does not have to be about numbers. Hopefully that message got through.

This lesson ended up taking just over an hour. I planned only to spend about 40 mins because I felt that’s the absolute maximum that I would be able to keep their attention. I think that I lost a bunch of students way before 40 mins. About a third of the kids were wearing the cylinders on their heads at around 20 mins. But I was so encouraged by the handful of students who were coming back to me with proper proofs that I just kept going.

This was my first time teaching such a large group of such young kids. It was a very educational experience for me. I have ever more respect for my daughter’s teacher, Fr. Huhnke, who handles these kids expertly on a daily basis.

This lesson plan was just one and the first iteration of what one could try to do with a classroom full of first graders. I hope it will be useful to some of you. I welcome any feedback or suggestions you may have in the comments.

Surface Deformations: Visualizing Homotopies

A homotopy is a (smooth) map which continuously deforms a space nicely (without introducing any singularities).

I was part of illiMath2006: an NSF funded Research Experience for Undergraduates (REU) summer program at the University of Illinois at Urbana-Champaign. One of the objectives of the program was to deliver an academia-industry collaborative project centered around a student principal investigator (me). My mentors for the project were George Francis at UIUC, Stuart Levy at the National Center for Supercomputing Applications, and Ulises Cervantes-Pimentel at Wolfram Research.

Our project Sakubo was such a success that Wolfram Research decided to continue the project the following year when I worked there as a summer 2007 intern. We built szgMathematica (= Syzygy + Mathematica) which enables users to use Mathematica’s graphical functions, such as Plot3D or ParametricPlot3D, and view the resulting surfaces in the CUBE.

We even built a function that simulated a rollercoaster where a user could input any closed parametrized curve for the rollercoaster track. The parametrization controlled the speed of the motion. We tried many closed curves from Mathematica’s new (at the time) Knot library and found that crazier knots were not as fun to ride as the standard trefoil. Perhaps there was just too much going on.

The second iteration of the project involved many more people. I worked with George Francis at UIUC, Stuart Levy, Camille Goudeseune at the NCSA, Jim Crowell at ISL, and Ulises Cervantes-Pimentel, Joshua Martell at WRI.


Computing the topological type, or homology, of a given a simplicial complex is straight forward, but not always computationally feasible. The bottleneck is in computing the Smith Normal Form, which is a polynomial time algorithm [Kannan-Bachem], but still too slow on large examples (about cubic).

Discrete Morse theory [Whitehead, Forman] provides a tool set which can be used to find reasonable upper bounds.  A randomized search for small discrete Morse vectors was introduced by Benedetti and Lutz, which we implemented as a client for the topological software package polymake.

I gave a workshop on Random_Discrete_Morse at the Homology: Theoretical and Computational Aspects (HTCA 2015) conference in Genoa, Italy.

While experimenting with Random_Discrete_Morse, we discovered a whole family of contractible, yet non-collapsible simplicial 2-complexes. We call them the sawblade complexes. Read more about the sawblade complexes here.

This project was joint work with Frank Lutz and Michael Joswig, with help from Benjamin Lorenz, Bruno Benedetti, and Karim Adiprasito.


Bistellar simplification

In the late 80s Udo Pachner introduced the idea of a bistellar move which can modify the triangulation of an object (simplicial manifold) without changing its fundamental properties (topological type). About a decade later, Frank Lutz implemented bistellar_simplification as a tool to classify objects by their topological type using a simulated annealing strategy. Later, Niko Witte wrote a C++ implementation of Frank’s code for polymake, which considerably sped up the computation. I, then, spent several (loong) months trying to improve Niko’s code so that it can be used to recognize our spheres.

The 2-dimensional version of a bistellar move is well known in the graphics community, though it is usually called by a different name: edge flips. It can be used to find “nice” triangle meshes of some domain, which may, for example, be applied to finite element-type computations.

The idea of the bistellar move is simple. We’ll be using some terminology from here. Let’s start with a simplicial complex [latex]K[/latex] of dimension [latex]d[/latex] and a simplex [latex]\sigma \in K[/latex] of dimension [latex]0\le i \le d[/latex]. (Technically, [latex]K[/latex] should be a closed combinatorial manifold.)

A bistellar [latex]i[/latex]-move is [latex]\Phi_K(\sigma) = K – \text{star}(\sigma,K) + \tau \ast \partial \sigma[/latex], where [latex]\tau[/latex] is a [latex](d-i)[/latex]-simplex NOT in [latex]K[/latex] such that [latex]\partial \tau = \text{link}(\sigma,K)[/latex]. The move is only valid if a [latex]\tau[/latex] satisfying these properties exists.

The animated gif below shows some bistellar moves in action. You can see why the algorithm is called a bistellar simplification — we can change the triangle mesh to have fewer triangles.

Consider an abstract graph whose nodes are simplicial complexes which are connected by an edge if there exists a single bistellar move to get from one complex to the other. This graph is known as the bistellar flip graph or Pachner graph. The bistellar_simplification algorithm is equivalent to a random walk on this infinite graph which attempts to identify the topological type of the input complex [latex]K[/latex] by lowering the [latex]f[/latex]-vector of [latex]K[/latex].

Tracking the [latex]f[/latex]-vector is the cheapest way to track our progress of the simplification. In fact, for a 4-dimensional sphere, the number of vertices and edges alone is enough to learn about the entire [latex]f[/latex]-vector [Klee]. So we can actually track the progress of the simplification on a 2 dimensional graph.

Below is a video tracking the progress of our modified bistellar_simplification on our Akbulut-Kirby 4-sphere AK_I_3. Since following a single dot was difficult to see, I am displaying the [latex]f[/latex]-vector (or, more precisely, just the vertex and edge count) of 1000 consecutive complexes at a time. For each of those 1000 complexes, I counted the number of 0-,1-,2-,3-,4-dimensional bistellar moves were made (red = 4-move grows the [latex]f[/latex]-vector, green = 0-move makes [latex]f[/latex]-vector smaller; green = good). The box on the bottom right displays the vertex and edge count of the complex at the specified round.

Notice that the simulated annealing strategy brings the [latex]f[/latex]-vector down until it gets stuck for a while, then it grows the [latex]f[/latex]-vector in an attempt to jiggle the complex out of the local min. The current implementation uses a greedy random strategy, the modifications we made to the strategy only improved the algorithm enough to recognize AK_I_3, AK_II_3, AK_III_3. The other spheres to our knowledge have not been recognized by any heuristic software we know of.

We have also tried to implement a Markov chain Monte Carlo (Metropolis) method to improve the algorithm. We have tried several different parameters for the energy. Our tests so far indicate that an MCMC strategy results in a significant slow down of the algorithm. We are now looking into testing other deep learning techniques.

Triangulations of the Akbulut-Kirby Spheres

Our triangulations of the Akbulut-Kirby Spheres

Manifold recognition is known to be unsolvable for dimensions [latex]d \ge 4[/latex] [Markov]. The related sphere recognition problem is known to be undecidable for dimensions [latex]d > 4[/latex]. However, 3-sphere recognition is decidable [Rubinstein, Thompson], but was found to be NP [Schleimer] and co-NP [Hass-Kuperberg]. The decidability of the 4-sphere recognition problem is still unknown.

Fortunately, there are several heuristic methods which can effectively and quickly recognize spheres to be spheres for all triangulations (or, more accurately, simplicial complexes) that we know of. Except, that is, for the family of examples which we constructed: our triangulations of the Akbulut-Kirby spheres.

The Akbulut-Kirby spheres were originally introduced as candidate exotic spheres [Akbulut-Kirby]. Selman Akbulut and Rob Kirby described a smooth manifold which is homeomorphic to a 4-dimensional sphere, but could not find a diffeomorphism to the sphere. If they could prove that there are no diffeomorphisms to the sphere, then they would have found a counterexample to the smooth Poincare conjecture in dimension 4. It took over 2 decades, but Akbulut himself found that diffeomorphism [Akbulut]. And the smooth Poincare conjecture in dimension 4 is still an open problem today.

Akbulut and Kirby simplified the description enough that one can follow the general idea without being an expert in differential topology and Kirby calculus.

Start with a 4-dimensional ball to which we attach two handles (like the handle on a coffee mug). Formally these handles are called one-handles. So we have now attached two one-handles. We then label each handle so we can keep track of which is which. Let us call the purple one [latex]x[/latex] and the green one [latex]y[/latex]. Notice the image is a 3-dimensional depiction of our 4-manifold.We then want to glue two 4-balls onto this manifold to close up the two holes that we introduced when we attached the two one-handles in the beginning. But we will glue them on in a non-trivial way. We will follow along the two paths (red and blue) shown above. If you start from the blue dot and walk along, you’ll find the blue path goes along the [latex]x[/latex]-handle, then [latex]y[/latex], then [latex]x[/latex], then the [latex]y[/latex]-handle backwards, then [latex]x[/latex] backwards, then [latex]y[/latex] backwards, and return to the blue dot. We describe this blue path as [latex]xyxy^{-1}x^{-1}y^{-1}[/latex] and the red one is [latex]x^5y^{-4}[/latex].

We started with a 4-ball, introduced two holes, then closed off those holes. So we’re back to having just a ball. Make a copy of that ball. Then match up the boundaries of the two balls. And voila: we get a 4-dimensional sphere.

This sphere we constructed is described by the finitely presented group [latex]G = \langle x,y \mid xyx=yxy. x^5 = y^4 \rangle[/latex], which you can read all about in the beginning of Kirby’s Topology of 4-manifolds.

That’s essentially the entire construction.

We developed a few simplicial versions of this procedure. It was a bit involved (enough for me to get a PhD), but we produced some nice pictures. Here’s a taste. For more details, check out the dissertation or the preprint.

We know that the manifolds we constructed are proper 4-spheres by Akbulut’s proof and the fact that in dimension 4, PL=DIFF. Yet, none of the sphere recognition heuristic software we know of have been able to correctly recognize them to be spheres. To our knowledge, these are the only such examples.

For a more graphical summary of this project, check out this poster that was presented at the MSRI Modern Math Workshop at SACNAS 2015.


LaTeX hack: Adding a custom .cls to your search path

After a few hours of frustrated head bashing against my desk, I’ve finally figured out a way to add a directory containing a custom class file to my TeX search path. So before I forget the vital — yet simple — two steps, I will record them here. (Yep, that’s 4 whole hours for 2 lines of code.)

First let me give credit where credit is due. This page helped me immensely. Thank you, you wonderful LaTeX hackers.

Let’s assume you’ve created an amazingly useful class file that is useful to no one else but you. (This would also apply for a custom style file (.sty) as well.) And say you want to use that class for more than one LaTeX project. It would be easy to just have the .cls file in the same folder as your LaTeX project. But you want to have just the one .cls for multiple LaTeX projects.

For this example, I’m going to call that file syllabus.cls. Let’s put that into its own unusually named folder

Before we move ahead to the two lines of code, you’ll need to learn a bit about your LaTeX installation. This is the head-bashing part.

(In case you’re curious: I’m on a Mac OSX (Yosemite) with TeX-Live 2015. Also, I use TeX-lipse (with Skim) for my editor.)

Open your Terminal and type

kpsewhich --var-value TEXMFLOCAL

For me, this returns

From the many posts I read on tex.stackexchange, I expected that it would be enough to place my syllabus folder right here. But it turns out life is not so kind.

One needs to dig a bit deeper to:

I don’t know if this is true for everybody, but that was the case for me.

And now, the moment you’ve all been waiting for:

sudo mv ~/some/path/syllabus/ /usr/local/texlive/texmf-local/tex/latex/local
sudo texhash

And that’s all. Now back to writing up some syllabi.