https://medium.com/@margrig96/tech-for-non-tech-13-building-blocks-in-programming-arithmetics-and-boolean-99853e7400fd