This blog has a really interesting assortment of articles on mathematics and programming. You can use the tags to your right to find topics that interest you, or you may want to have a look at

- the problems I wrote to get your brain working;
- some twitter proofs of mathematical facts.

You can also subscribe to the blog newsletter.

A bunch of ants are left inside a very, very, tight tube, and they keep colliding with each other and turning around. How long will it take them to escape?

The third article of this short series concerns itself with the implementation of the backpropagation algorithm, the usual choice of algorithm used to enable a neural network to learn.

In the second article of this short series we will create a class for a generic neural network and we will also see how to assess the quality of the output of a network, essentially preparing ourselves to implement the backpropagation algorithm.

This is the first post in a series to implement a neural network from *scratch*.
We will set things up in terms of software to install, knowledge we need,
and some code to serve as backbone for the remainder of the series.

You are sunbathing when you decide to go and talk to some friends under a nearby sun umbrella, but first you want to get your feet wet in the water. What is the most efficient way to do this?

This problem is a step up from Problem #028 - hidden key. Can you tackle this one?

Nowadays stores come up with all sorts of funky promotions to catch your eye... But how much money do you actually save with each type of promotion?

There is a key hidden in one of three boxes and each box has a coin on top of it. Can you use the coins to let your friend know where the key is hiding?

Five sailors and their monkey were washed ashore on a desert island. They decide to go get coconuts that they pile up. During the night, each of the sailors, suspicious the others wouldn't behave fairly, went to the pile of coconuts take their fair share. How many coconuts were there in the beginning..?

I bet you have seen one of those Facebook publications where you have a grid and you have to count the number of squares the grid contains, and then you jump to the comment section and virtually no one agrees on what the correct answer should be... Let's settle this once and for all!

Some people are standing quiet in a line, each person with a hat that has one of two colours. How many people can guess their colour correctly?

Join me in this blog post for Pokéfans and mathematicians alike.
Together we'll find out how long it would take to fill
your *complete* Pokédex by only performing random trades.

In this problem you have to devise a strategy to beat the computer in a "guess the polynomial" game.

Let's prove that if \(k\) is an integer, then \(\gcd(k, k+1) = 1\). That is, any two consecutive integers are coprime.

Let's prove that if you want to maximise \(ab\) with \(a + b\) equal to a constant value \(k\), then you want \(a = b = \frac{k}{2}\).

This simple problem is an example of a very interesting phenomenon: if you have a large enough "universe" to consider, even randomly picked parts exhibit structured properties.

Let's prove that, if a set has size \(n\), then that same set has exactly \(2^n\) subsets.

The 24 Game is a well-known maths game that is played with kids in school to help them master the four basic arithmetic operations. In this blog post we will study the game in depth.

Today we are visiting a specific instance of a well-known *basic* mathematics game, the 24 Game. The "24 Game" is usually played with younger students because it helps them develop skills related to the basic arithmetic operations.

Take out a piece of paper and a pencil, I am going to ask you to write some letters in your sheet of paper and then I am going to challenge you to fold the sheet of paper... with a twist!