Math Projects
The videos below explain the solutions to selected problems from Project Euler—https://projecteuler.net
There are over 600 such problems on the site, and together they serve as an incredible pedagogical tool. Many of the first two hundred have to do with number theory, especially extrapolating patterns concerning prime numbers. The problems are arranged in an order that facilitates “inductive chain learning”, meaning that each subsequent problem provides you with the framework and concepts needed to tackle the next, slightly more complex, proposition. Project Euler has made me not only an ardent math and coding enthusiast but also a much better programmer. Specifically, solving the problems within a reasonable amount of time means you have to choose the correct data structure—such as a dictionary rather than a list for a set of data with many repetitions. It also demands that you refactor and streamline your code—the hierarchy of modules that constitute the algorithm. Project Euler now stands as one of my favorite hobbies. I love the challenge of breaking a larger problem into a series of smaller ordered problems. And there’s a real rush in that ‘aha!’ moment when the pieces click together and the efficient path to the solution comes into view. It doesn’t deter me that some brilliant coders might find this stuff trivial, because with every additional hour of edifying leisure I invest in Euler, I get one step closer to being one of them! More videos to come!
There are over 600 such problems on the site, and together they serve as an incredible pedagogical tool. Many of the first two hundred have to do with number theory, especially extrapolating patterns concerning prime numbers. The problems are arranged in an order that facilitates “inductive chain learning”, meaning that each subsequent problem provides you with the framework and concepts needed to tackle the next, slightly more complex, proposition. Project Euler has made me not only an ardent math and coding enthusiast but also a much better programmer. Specifically, solving the problems within a reasonable amount of time means you have to choose the correct data structure—such as a dictionary rather than a list for a set of data with many repetitions. It also demands that you refactor and streamline your code—the hierarchy of modules that constitute the algorithm. Project Euler now stands as one of my favorite hobbies. I love the challenge of breaking a larger problem into a series of smaller ordered problems. And there’s a real rush in that ‘aha!’ moment when the pieces click together and the efficient path to the solution comes into view. It doesn’t deter me that some brilliant coders might find this stuff trivial, because with every additional hour of edifying leisure I invest in Euler, I get one step closer to being one of them! More videos to come!