This blog is about Simon, a young gifted mathematician and programmer, who had to move from Amsterdam to Antwerp to be able to study at the level that fits his talent, i.e. homeschool. Visit https://simontiger.com
Simon had his first public performance in front of a large audience last Saturday (February 9, 2019): he spoke about his Times Tables Visualization project at the Processing Community Day in Amsterdam!
To solve the problem, Simon chooses not to look up what the derivative of a tangent is but work everything out from scratch. He generally doesn’t like rote learning but prefers to gain deep understanding of how and why.
This is a behind the scenes video (Simon wasn’t even aware of me filming at first, but he always talks to himself when working out a proof, so that helps). The video shows Simon looking for the number z if sin(z) = 2. He watched this problem explained on the Blackpenredpen channel once, then marched into another room (where he has his whiteboard) and started trying to construct the solution on his own. His solution was partially based on what he saw in the working out shown by Blackpenredpen and partially he worked out the proof himself (and it just happened to coincide with that of Blackpenredpen). He only briefly consulted the explanation video three times while working on the proof. “My proof expanded some steps out so it’s clearer where I’m coming from,” Simon says.
Here is a picture of the work done:
And some pics of the working out in progress:
Simon at first made a mistake in his definition of ln(i):
But later he corrected himself, and that’s the part you can see in the video.
Simon came up with a tool (a circle where you install a pencil) to draw curved lines. He explains how the curved line actually draws the absolute value of the Sine function sin(x). “Because an absolute value of x is square root of x squared, that means that all negative values cancel out”, says Simon, that’s why the wave looks spiky.
Simon’s tool should probably be improved by making it from thicker material like thick cardboard.
Simon partially programmed the interactive math functions editor, but it remained unfinished:
A set of awesome Codea tutorials that Simon recorded for those who are just starting to program in Codea. Simon ported examples from Processing (java) into Codea (Lua):
In the second tutorial (in two parts), Simon explains how to write a physics simulation program in Codea using forces like gravity, friction and spring force. Anyone watching will get to use some trigonometry and see what arc-tangent is for! The original code in Java comes from Keith Peters (Processing).
Here are some notes from when Simon was explaining the arc-tangent to me the other day:
Simon talks about his changes to Daniel Shiffman’s Spherical Geometry Coding Challenge: He has rewritten the code in an object oriented manner. Later he also turned the sphere into an ellipsoid using three radii.
Object oriented (Simon’s idea):
Adding colour (Daniel’s feature):
Turning the sphere into ellipsoid (Simon’s idea):
Simon would also like to try this with a cylinder:
Simon wanted to share his code in a readme in GitHub but he didn’t manage to create one within the specific (Sphere Geometry) project. Here is a screenshot of him sharing the code in Slack chat (for Coding Train fans):
Heard Simon give his Russian grandparents a lecture in the playroom, via FaceTime. When I came in, this is what I saw on the whiteboard. Simon proudly said he figured out how to calculate the arc-tangent. Why, what do you talk to your Grandmom about?