What a blissful day at Creative Coding Utrecht! Simon also got a chance to show a few of his projects in Processing to a cool and understanding audience!

# Tag: Processing

# Simon’s Times Tables Visualization

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.

# Live Stream #14. 15’s Puzzle Redo continued.

In this live session, Simon continue my 15s puzzle redo live session (“yet again, but I swear this is going to be the last time I do this!” Simon said). Here’s a link to the previous part. This week’s live stream went great, Simon kept it concise, didn’t panic while debugging, largely thanks to a wonderful supportive audience. And he even got some interesting personal questions asked in the end!

# Magic Cards in Base 3!

Simon has developed his version of the Magic Cards, this time in Base 3. He invented this system completely on his own and actually created a program in Processing (Java), using ternary function, to make the cards! The the code for creating the five cards in Processing and exporting the images as png files is available on Simon’s page on GitHub: https://github.com/simon-tiger/browns-criterion-base3

To play the game, have someone think of a number between 0 and 242 and let that person look for his/her number on every card and tell you which colour it is on every card. Every card stands for a power of 3: 81, 27, 9, 3, and 1. There are three grids of numbers on every card, a blue grid (representing the zeros in base 3), a red grid (representing the ones in base 3), and a green grid (representing the twos in base 3). After your friend has found his/her number on all the five cards, you can go ahead and add all the results up to guess the number. Alternatively, if you find working with base 3 too difficult, just sum up all the red numbers in the top left corners (on all the cards where your friend’s number was red), then double all the red numbers in the top left corners (on all the cards where your friend’s number was green) and add all of those together to guess the number.

Simon started out by actually trying to draw the magic cards:

But quickly realised he’s better off writing a computer program to fill in the grids. When the program (pretty tough to write) was finally ready, he tried to print a card out and… ran out of ink on our home printer. Next, we rushed to the print shop, as it was about to close.

“Mom, I can calculate why it says 17 million colours! It’s 256 cubed!” (255 for Red, Green and Blue plus one for alpha).

Simon previously developed a magic card system for Prime Numbers and wrote a Java program that guessed the numbers using powers of two.

# Liva Stream #13. Math Puzzle: Logic.

In this live session, Simon works a little on his 15s puzzle redo that he started in his previous live session: https://www.youtube.com/watch?v=ixkLFYcb0T0 and programs a math/logic puzzle, checking whether the statement “Every card with a T on one side has a 3 on the other” is true or false. The original puzzle comes from an old video by James Grime, recorded before Simon was born (the fact that Simon finds particularly funny):

# Reds and Greens

Simon has crafted a nice game today, inspired by a video in which mathematician Katie Steckles shows several mathematical games. Simon wasn’t sure what the game was called so he named it “Reds and Greens”. The objective of the game is to accumulate a set of three cards sharing the same property (such as the same number of green dots or red dots, the same total number of reds and greens or a set in which all the three possible variants – one, two and three dots of the same color – would be present). Each player pulls a card from the stack (all the cards are lying face up) and the one who collects a set first wins. Simon has actually programmed the cards in Processing (Java) – quite a strenuous task. Below is the jpeg pic of what he made and his code in Processing.

Simon also explained how the game is very similar to Tic Tac Toe, look at the photo below and you’ll see why:

# Live Stream #12: 15’s Puzzle Redo

Simon had quite an audience yesterday during his live lesson. In this week’s session, Simon remade his 15’s Puzzle in Processing and explained the math behind it. He plans to finish the puzzle during his next live stream in two weeks from now (on April 19 at 17:15 CET).

# Simon and Daniel Shiffman

Today is one of the most beautiful days in Simon’s life: NYU Associate Professor and the creator of Coding Train Daniel Shiffman has been Simon’s guarding angel, role model and source of all the knowledge Simon has accumulated so far (in programming, math, community ethics and English), and today Simon got to meet him for the first time in real life!

Daniel Shiffman posted:

# Conway Checkers game in Processing

Simon has programmed a Conway Checkers game in Processing (Java). The game is a math version of traditional checkers and was invented by John Conway (famous as the author of the Game of Life). Simon learned about Conway Checkers in a Numberphile video and decided to make a computer version. It’s available on GitHub to download: https://github.com/simon-tiger/conway-checkers

Simon also wrote the rules of the game on GitHub in the README: https://github.com/simon-tiger/conway-checkers/blob/master/README.md

# A Cool Number Guessing Trick! Or Brown’s Criterion in Processing

This is a fun number guessing trick, based on powers of 2 and the Fibonacci sequence, that even little kids can enjoy. You don’t have to know anything about the powers of 2 or Fibonacci to play this game, just basic addition up to 30. Yet, if you are more advanced, it is very interesting to see what lies underneath and even apply binary numbers to your guessing technique. Simon learned this trick from the Numberphile video on Brown’s Criterion.

Simon also made his own version of the game, based on prime numbers:

In this second part of the cool number guessing trick session, Simon shows his own version of the game, based on prime numbers. He discovered that it’s impossible to create this game for all numbers between 1 and 30 because some numbers (4 and 6) cannot be expressed as a sum of two different primes and was very upset about it. Yet he did manage to make the game and it works for all numbers except 4 and 6. To play the game, one player thinks of a number and the other player tries to guess it by asking whether the number is present on different sheets of paper. The answer is the sum of the numbers located in the top left corners of all the yes-sheets.

And please check out Part 3, where Simon actually programmed this game in Java (Processing):

Now it’s the computer guessing the number! The game is available on Simon’s GitHub to download at: https://github.com/simon-tiger/browns-criterion

Simon explained the rules in the GitHub README (because he “has a different writing style than Mom”, he said): https://github.com/simon-tiger/browns-criterion/blob/master/README.md