https://betterprogramming.pub/the-three-body-problem-in-software-development-74adeda6807c