Just a funny piece from a member-only Coding Train session 😉
This is Simon’s version of Daniel Shiffman’s 2D Casting code, made on Wednesday last week right after the live session. Link to the live session including the coding challenge.
Code and interactive animation are online at: https://editor.p5js.org/simontiger/sketches/ugHX4yKQC
Play with the animation online at:
Simon has also made one more, optimized version of this project (with fewer rays, runs faster): https://editor.p5js.org/simontiger/present/F6TCHAZs_
Both of Simon’s versions have been added to the community contributions on the Coding Train website: https://thecodingtrain.com/CodingChallenges/145-2d-ray-casting.html
Simon is always extremely active in the discussions about the current projects made by/ lectures given by NYU’s Asdociate Professor Daniel Shiffman during his live sessions on the Coding Train channel. He also enjoys “initiating discussions” among the channel’s patrons (grown-up programmers) and Daniel. “Mom, the discussion I initiated is still going on!” I couldn’t possibly post all the coding and math comments/ suggestions that Simon makes in the chats on YouTube, Slack and GitHub (and I don’t believe I should either), but every now and then, I like collecting samples of Simon’s contributing to the discussion:
The small font above says:
Correction: The MST problem does not allow any loops (like A->B, B->C, C->D, D->A again.) So the solution at 2:30 is wrong! In fact, _no wonder it does that_, because Prim’s Algorithm will never find a loop. Here’s why:
Let’s suppose that it could find a loop (let’s say, a loop of 4, so A->B, B->C, C->D, D->A again, but this argument would work the same each way.) Ok, so it will start from A, and mark it as reached. It will check A against B, C and D, find B, and mark B as reached. Then, it will check A against C and D, and B against C and D. and it will find that it should connect B and C, and mark C as reached. Then, it will check A, B and C all against D, and find that it should connect C and D, and mark D as reached. But now, we reach a problem. It will not connect D and A, because both are already reached!
Why was it designed like that? Because that’s what the problem says! It’s a Minimum Spanning _Tree_, so it can’t have any loops.
So there you go, that’s why Prim’s algorithm will not find a loop.
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 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.
The video below is part of Daniel Shiffman’s livestream hosted by GROW Le Tank in Paris on 6 January 2019 about KNN, machine learning, transfer learning and image recognition. Daniel kindly allowed Simon to take the stage for a few minutes to make a point about image compression (the algorithm that Daniel used was sort of a compression algorithm):
Here is a different recording (in two parts) of the same moment from a different angle:
What a blissful atmosphere at Maths Jam Antwerp yesterday, full of respect, encouragement and acceptance. It’s an international monthly meet-up taking place every second to last Tuesday of the month, simultaneously at many locations in the world, three hours of maths fun! This was Simon’s first time. He solved two difficult geometry problems and showed some of his current work to the math enthusiasts who attended. Was hopping and giggling all the way home.
Simon talking about his Tantrix Game code and the math behind it. It has been Simon’s first community project, many thanks to everyone who has contributed hexagonal tiles for the game! The game isn’t finished yet, but the video gives a good insight into the work in progress. Simon will finish it at a later date he says. Feel free to try and finish it on your own and share your results! The code is on GitHub at: https://github.com/simon-tiger/tantrix
This is a separate link to see what Simon has got so far in action: https://simon-tiger.github.io/tantrix/tantrix/
Below is Simon’s original YouTube post summoning contributions:
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:
Simon has just created a decision tree library, called “Decision”, that is helpful in building decision trees/forests (Machine Learning). He has also tried performing unit tests for the first time, and passed several of them! Once Simon’s library is in GitHub he also plans to link it to the testing hub CircleCI so that no merging can happen without passing tests. In this video, Simon explains what a decision tree is, shows his library and his test decision trees.
Simon’s library on GitHub (with a huge Readme that Simon wrote himself): https://github.com/simon-tiger/decision
Simon’s library on CircleCI: https://circleci.com/gh/simon-tiger/decision/3
Simon’s unit tests:
This is how happy a child can be while taking a class: