Source: https://www.lri.fr/~chapuis/ihm-polytech/doc/Huot-ApplicationsInteractives.pdf