Coding, Coding Everywhere, Community Projects, Contributing, Crafty, Geometry Joys, Group, Java, Milestones, Murderous Maths, Notes on everyday life, Simon teaching, Simon's Own Code, Together with sis, Trips

Simon speaking at the Processing Community Day in Amsterdam

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!

Simon speaking at Processing Community Day Amsterdam

Simon writes: You can access the code of the poster and the animation (and the logo for my upcoming company!) and download the presentation in PowerPoint, on GitHub at https://github.com/simon-tiger/times_tables

If you’d like to buy a printed copy of the poster, please contact me and I’ll send you one. Status: 3 LEFT.

One of the tweets about Simon’s presentation
Simon next to his poster after the presentation
Working on his presentation the day before
Waiting to speak
Experimenting with other projects at the community day
At the entrance to the venue, with the poster still packed
There was a lot of interest in Simon’s project
Coding, Group, Milestones, Murderous Maths, Trips

Processing Community Day Amsterdam has published its program and Simon is in it!

It’s official! Simon is going to be speaking at this event, his presentation (about his Times Tables Visualization project in Processing) is planned for the 15-o’clock block!  

Times Tables with Simon Tiger
Simon is a 9 year old mathematician who loves to reveal the mysterious beauty of math. In his short presentation he will share a recent project he made: visualising times tables from 1 to 200 in Processing. Simon first created an animated version and later turned it into a ginormous poster with 200 static representations of the times tables, both mathematically accurate and artistic. Simon will bring several copies of the poster! 

Check simontiger.com for more information and here’s a link to the animated version. 

Website

The day is packed with other beautiful talkes and workshops!

DAY: Saturday 9 February 2019
TIME: 11.00 – 24.00
WHERE: FIBER Office | Open Coop 
Tolhuisweg 2, Amsterdam 
How to get there: Take the ferry from Amsterdam CS to the Buiksloterweg (Amsterdam North). Our location is a 5-minute walk. The ferry services continue all day and all night.

https://creativecoding.community/amsterdam

art, Coding, Crafty, Group, Milestones, Murderous Maths

Getting ready for the Processing Community Day Amsterdam

Simon getting ready for his presentation at the Processing Community Day Amsterdam, printing additional copies of his ginormous Times Tables Visualization poster at the Antwerp Art Academy (made possible thanks to our wonderful friend, photographer Oxiea Villamonte). If you’re into creative coding and math, please come to the event (Simon will be speaking around 15 p.m.) There will be a limited number of Times Tables Visualization posters available for sale!

PCD Amsterdam

DAY: Saturday 9 February 2019

TIME: 10.00 – 19.00

WHERE: FIBER: Tolhuisweg 2, Amsterdam

Coding, Java, Milestones, Murderous Maths, Physics, Simon makes gamez, Simon teaching, Simon's Own Code

Simon’s code for an intriguing problem from the 3Blue1Brown math channel


The number of collisions between two objects equals a number of digits of Pi. The code on GitHub: https://github.com/simon-tiger/Pool_Pi

Simon writes:

From where I got this
I called this sketch Pool_pi because the original paper about this (written in 2003) was called something like Pi in Pool. I learned about this from a recent 3Blue1Brown series:

1st video: https://www.youtube.com/watch?v=HEfHFsfGXjs
2nd video: https://www.youtube.com/watch?v=jsYwFizhncE
3rd video: [not out yet]

The idea
The idea is 2 blocks on a frictionless surface. One slides towards the other, that is facing a wall. All collisions are perfectly elastic.

If the two blocks have the same mass, you can quickly calculate that there will be 3 collisions.

If the one block is 100x the other, it just so happens that there will be 31 collisions.

If the one block is 10000x the other, there will be 314 collisions (I get tired of making graphics). If the one block is 1000000x the other, there will be 3141 collisions.

That’s pi!

The issue!
In my own code, I first used Box2D.
It worked for mass ratios of 1 and 100, but it didn’t work for 10000.

Then I started writing my own physics engine, hoping to fix this issue. But it was even worse.
I couldn’t even get 100 to work.

Then I figured that the blocks are colliding too frequently. So I slowed the 1st block down.
I could get 100 to work this way, but not 10000.

Can anybody help to fix this issue?

I borrowed part of the code from here: https://processing.org/examples/circlecollision.html

art, Coding, Crafty, Java, Milestones, Murderous Maths, Simon teaching, Simon's Own Code, Simon's sketch book, Uncategorized

Simon’s Times Tables Visualization is Now a Huge Poster!

Simon has made an enormous poster from his earlier animated version of the Times Tables Visualization! Simon is hoping to present this project at the Processing Community Day in Amsterdam in January 2019. The poster is already being printed!

 

Simon writes: This is a visualization for the times tables from 1 to 200.
Start with a circle with 200 points. Label the points from 0-199, then from 200-399, then from 400-599, and so on (you’re labeling the same point several times).

We’ll first do the 2x table. 2×1=2, so we connect 1 to 2. 2×2=4, so we connect 2 to 4, and so on.

2×100=200, where’s the 200? It goes in a circle so 200 is where the 0 is, and now you can keep going. Now you could keep going beyond 199, but actually, you’re going to get the same lines you already had!

For the code in Processing, I mapped the two numbers I wanted to connect up (call them i), which are in between 0 and 200, to a range between 0 and 2π. That gave me a fixed radius (I used 75px) and an angle (call it θ). Then I converted those to x and y by multiplying the radius by cos(θ) for x, and the radius by sin(θ) for y. That gave me a coordinate for each point (and even in between points, so you can do the in between times tables as well!) Then I connect up those coordinates with a line. Now I just do this over and over again, until all points are connected to something.

Unfortunately, Processing can only create and draw on a window that is smaller than a screen. So instead of programming a single 2000px x 4000px poster, I programmed 8 1000px x 1000px pieces. Then I just spliced them together.

Idea: Times Tables, Mandelbrot and the Heart of Mathematics video by Mathologer
Code: by Simon Tiger
Download the animated version here: https://github.com/simon-tiger/times_tables

Coding, Java, Milestones, Murderous Maths, Simon's Own Code

Simon’s Times Tables Visualization

Times Tables Visualization 31 May 2018

Simon shows his Times Tables Visualization in Processing (Java) and talks about how it’s connected to Mandelbrot Set. See the code with the README on GitHub: https://github.com/simon-tiger/times_tables

View the full animation here:

 

Simon writes: This is a visualization for the times tables from 1 to 200 (including the in-between numbers that are multiples of .01). I used modular arithmetic to write the code:

0. Start with a circle with 200 points (I’ve chosen 200, your number could be anything, but we’ll use 200 in the instructions).

1. Label the points from 0-199, then from 200-399, then from 400-599, and so on (you’re labeling the same point several times).

2. We’ll first do the 2x table. 2×0=0, same thing so we don’t do anything. 2×1=2, so we connect 1 to 2. 2×2=4, so we connect 2 to 4, and so on.

3. 2×100=200, where’s the 200? It goes in a circle so 200 is where the 0 is, and now you can keep going.

4. Now you could keep going beyond 199, but actually, you’re going to get the same lines you already had!

5. You can now create separate images for the 2x table (which we’ve just done), the 3x table, the 4x table, the 5x table, and so on. You can even try in-between numbers (like 2.53) if you want.

In the program, you see an animated image at the left of the screen, and 4 static images (representing examples of times tables) to the right of that. They represent the 2x, 34x, 51x and 99x tables.

The idea of a times tables visualization comes from a video by Mathologer, but the code Simon wrote completely on his own.