Source: https://www.phdgamedev.com/2018/04/27/games-and-science-a-crash-course-on-basic-design-principles/