Coding, Community Projects, Contributing, Curent Events, Experiments, Geography, JavaScript, Milestones, Murderous Maths, Notes on everyday life, Philosophy, Simon makes gamez, Simon teaching, Simon's Own Code, Simon's sketch book, Social Studies, Thoughts about the world

How Can Math Help Resolve Racial Segregation?

This is Simon’s contribution to #blacklivesmatter

How Can Math Help Resolve Racial Segregation? This video and coding project is based on Segregation Solitaire by Thomas Schelling, an American mathematician and economist who was awarded the 2005 Nobel Memorial Prize in Economic Sciences for “having enhanced our understanding of conflict and cooperation through game-theory analysis.”

I don’t like the name ‘Segregation Solitaire’, so I call it Schelling’s Game. This is also inspired by the famous Parable of the Polygons playable essay on the shape of society by Vi Hart and Nicky Case: https://ncase.me/polygons/

Simon binge reads Nicky Case’s essays and has made several remixes of their projects, all the more timely, considering today’s context.

Simon’s interactive version: https://editor.p5js.org/simontiger/present/mWwl1GsTe

Simon’s code: https://editor.p5js.org/simontiger/sketches/mWwl1GsTe

Coding, Geometry Joys, Murderous Maths, Physics, Python, Simon teaching, Simon's Own Code, Simon's sketch book

Physics Engine using Verlet Integration

Simon created a physics engine in Python with Turtle. He used Verlet integration (French pronunciation: ​[vɛʁˈlɛ]), a numerical method for integrating Newton’s equations of motion in calculating trajectories of particles in molecular dynamics simulations and computer graphics.

see Simon’s interactive sketch in Geogebra at https://www.geogebra.org/m/neuxj63g

Verlet Integration is a way to implement a physics engine without having to care about velocity.

Instead of storing the velocity, you store the previous position, and you calculate the velocity on the fly. Then if you add that velocity to the current position, you get the new position. But then you also have to add on the acceleration, because acceleration changes velocity.

Crafty, Math Riddles, Milestones, motor skills, Murderous Maths, Notes on everyday life, Simon makes gamez, Simon teaching, Simon's sketch book, Together with sis, Writing and calligraphy

The Grand Quadratic Formula Quiz!

Simon has been pondering a lot about various ways to visualize or prove the quadratic formula.

He eventually came up with a 4-meter-long quiz sheet, slowly revealing the logic behind the quadratic formula as one solves the 9 problems one by one. Simon borrowed the actual problems from Brilliant.org but reworded some of them to match his personal style, writing all of them down in his beautiful handwriting on large sheets of paper taped together to form a road to the quadratic formula. The answers were hidden under crafty paper flaps. We had a lot of fun traveling down this rabbit hole as a family, Neva stuck around solving the tasks until half-way through.

It took Simon two days to make the quiz
He covered the questions with extra sheets of paper and removed them as we solved the problems one by one.
The first two questions solved.
Neva solving an equation
Almost there!
Coding, Good Reads, history, JavaScript, Milestones, Notes on everyday life, Set the beautiful mind free, Simon teaching, Simon's Own Code, Social Studies, Thoughts about the world

Simon’s remix of one of Nicky Case’s playable essays

If you’re interested in why #covid-19 tracing apps are important and the most privacy-friendly way to implement them, please read this interactive essay by Nicky Case and play with the colorful simulations of all our possible futures. For Simon, this has been the entrance into the Nicky Case @ncasenmare universe (first recommended by 3Blue1Brown). Simon has been gulping down the playable essays on human networks and the spread of complex ideas, self-synchronization in nature, the shape of society and several other burning themes (like coming out and anxiety) and watching Nicky Case’s talks, like this one. Nicky is a self-made indie artist, programmer and writer making very edgy, very 21st century multimedia products that are both profound in content and have an engaging/interactive interface. It’s as if reading an informative piece is turned into a game. And that’s exactly what Nicky stands for: learning through play and messing about. Maybe that’s why Simon has embraced his works so eagerly, Nicky has proven to be one of those perfect matches for our self-directed learning style.

Simon has made a remix of Nicky’s Evolution of Trust, an iterated prisoner’s dilemma: https://editor.p5js.org/simontiger/present/oOurTdGWT

Simon’s code: https://editor.p5js.org/simontiger/sketches/oOurTdGWT

Experiments, Physics, Simon makes gamez, Simon teaching, Together with sis

Scientific Thinking: Pulleys

Simon was inspired by the Scientific Thinking course on Brilliant.org to create this pulley simulation in Algodoo. You can download Simon’s scene called “Pulleys” and play with it yourself.

Simon and his sis Neva solving problems with pulleys

They are also doing a lot of Logic puzzles together, also on Brilliant.org.

Coding, Community Projects, Computer Science, Contributing, Geometry Joys, JavaScript, Lingua franca, live stream, Machine Learning, Math and Computer Science Everywhere, Math Riddles, Math Tricks, Milestones, Murderous Maths, Notes on everyday life, Physics, Python, Set the beautiful mind free, Simon makes gamez, Simon teaching, Simon's Own Code, Simon's sketch book, Thoughts about the world

New Friends. New Horizons.

This is a little video compilation of a few moments I captured Simon talking to his new peers in April 2020

Thanks to the lock-down, Simon’s got new friends. For a little over a month now, he has been part of exciting daily discussions, challenging coding sessions and just playing together with his new gang (warning: playing always involves math). We’ve never seen him like this before, so drawn to socializing with his peers, even taking the lead in some meetings and initiating streams.

And then we realized: this is how social Simon is once he meets his tribe and can communicate in his language, at his level. Most of his new friends are in their late teens and early twenties. Most of them didn’t use to hang out together before the crisis, probably busy with college, commuting, etc. The extraordinary circumstances around covid-19 has freed up some extra online time for many talented young people, creating better chances to meet like-minded peers across the world. Finally, Simon has a group of friends he can really relate to, share what he is working on, ask for constructive help. And even though he is the youngest in the group, he is being treated as an equal. It’s beautiful to overhear his conversations and the laughter he shares with the guys (even though sometimes I wish he wasn’t listening to a physics lecture simultaneously, his speakers producing a whole cacophony of sound effects, but he likes it that way and seems to be able to process two incoming feeds at once).

Last week, Simon took part in a World Science Scholars workshop by Dr. Ruth Gotian, an internationally recognized mentorship expert. The workshop was about, you guessed it, how to go about finding a mentor. One of the things that struck me most in Dr. Gotian’s presentation was her mentioning the importance of ‘communities of practice’. I looked it up on Etienne Wenger’s site (the educational theorist who actually came up with the term in the 1990s):

A community of practice is a group of people who share a concern or a passion for something they do, and learn how to do it better as they interact regularly. This definition reflects the fundamentally social nature of human learning. It is very broad. It applies to a street gang, whose members learn how to survive in a hostile world, as well as a group of engineers who learn how to design better devices or a group of civil servants who seek to improve service to citizens. their interactions produce resources that affect their practice (whether they engage in actual practice together or separately).

It is through the process of sharing information and experiences with the group that members learn from each other, and have an opportunity to develop personally and professionally, Wenger wrote in 1991. But communities of practice isn’t a new thing. In fact, it’s the oldest way to acquire and imperfect one’s skills. John Dewey relied on this phenomenon in his principle of learning through occupation.

It has been almost spooky to observe this milestone in Simon’s development and learn the sociological term for it the same month, as if some cosmic puzzle has clicked together.

Of course, it would be a misrepresentation to say nothing of the internal conflict the new social reality unveiled in my mothering heart as I struggled to accept that Simon started skipping Stephen Wolfram’s livestreams in favour of coding together with his new friends. 👬Yet even those little episodes of friction we experienced have eventually led to us understand Simon better. We sat down for what turned into a very eye-opening talk, which involved Simon asking me to take down the framed Domain of Science posters we’d recently put up above his desktop and pointing to those infographics depicted on the posters that represented the areas of his greatest interest.

we got our posters at the DFTBA shop

Simon simply guided us through the Doughnut of Knowledge, Map of Physics, Map of Computer Science and Map of Mathematics posters as if were on tour inside his head. And he made it clear to us that he seriously preferred pure mathematics, theoretical computer science and computer architecture and programming to applied mathematics (anything applied, really) and even computational physics, even though he genuinely enjoyed cosmology and Wolfram’s books.

“Mom, you always think that what you’re interested in is also what I’m interested in”, he told me openheartedly. It was at that moment it hit me he had grown up enough to gain a clearer vision of his path (or rather, his web). That I no longer needed to absolutely expose him to a broadest possible plethora of the arts and sciences within the doughnut of knowledge, but that from now on, I can trust him even more as he ventures upon his first independent steps in the direction he has chosen for himself, leaning back on me when necessary.

So far, in just one month, Simon has led a live covid-19 simulation stream, programming in JS as he got live feedback from his friends, cooperated on a 3D rendering engine in turtle (🤯), co-created Twitch overlays, participated in over a hundred Clashes of Code (compelling coding battles) and multiple code katas (programming exercises with a bow to the to the Japanese concept of kata in the martial arts).

example of a Clash of Code problem
e of a Clash of Code problem
This is Simon’s code in one of the Clashes of Code (he won this round from 6 other players). Such programming battles last somewhere between 5 and 15 minutes and come in three modes: fastest mode (in which you must complete the puzzle as fast as possible), shortest mode (you need to write the lowest code size) and reverse mode (you have to guess what to do by observing the provided set of tests). Simon especially likes the last mode, because you have to find the code by finding patterns in the given test cases, which appeals to his mathematical talent.
CJ from the Coding Garden discussing Simon’s solution
Simon working on a 3D renderer project together with his friends
Simon came up with a plan to work on the 3D renderer

Last month, ten young programmers including Simon formed a separate “Secret Editors’ Club Riding Every Train” group on Discord, uniting some “nice and active” people who met on The Coding Train channel (they also included Dan Shiffman in the group). Simon really enjoys long voice chats with the other secret editors, going down the rabbit holes of math proofs and computer algorithms. Last Tuesday, he was ecstatic recounting his 3-hour call with his new peer Maxim during which Simon managed to convince Maxim that 0.999… equals 1 by “presenting a written proof that involved Calculus”:

We even talked about infinity along the way, aleph null and stuff. There was a part where he almost won, because of the proof I showed him when we talked about infinities. I was almost stumped.

The guys have now inspired Simon to take part in the Spring Challenge 2020 on CodingGame.com, a whole new adventure. To us, the lockdown experience has felt like an extra oxygen valve gone open in our world, another wall gone down, another door swung open, all allowing Simon to breathe, move and see a new horizon.

Simon trying to explain why he didn’t fulfil a promise, he has finally found the people who speak his language 🙂
art, Coding, Crafty, Milestones, Notes on everyday life, Python, Simon teaching, Simon's Own Code, Together with sis

Making small animations with Python turtle

This is what I got from the kids yesterday as my Mother’s Day present. Simon has taught Neva to make little animations in Python.

This is another little video of them using working together to create a poppy flower drawing with Python turtle:

Coding, JavaScript, Murderous Maths, Physics, Simon teaching, Simon's Own Code, Simon's sketch book

Science on the Balcony: Position of a Pendulum

Simon: “The direct formula for the position of a pendulum is not what you might think”.

Simon’s code for spring and graph: https://editor.p5js.org/simontiger/sketches/mWp6gQLxz

Simon’s code for pendulum with directed fields: https://editor.p5js.org/simontiger/sketches/U__pD4iZL

Simon’s code for simple movable pendulum: https://editor.p5js.org/simontiger/sketches/koPHNu670

Simon originally got inspired to work on this project thanks to the My Physics Lab platform. Also inspired by 3Blue1Brown’s video Differential equations, studying the unsolvable and Brilliant’s Calculus Fundamentals course.