Jelly is Sticky, Collision is Tricky

Now that Simon has his desktop spot again, he seems to be back in his element, devoting many hours a day to a project, then getting a new idea, starting a new project, working on it, then jumping back to something he started two months ago — you know, the usual process. I have come to understand that this is his play. I am still struggling with the parent in me who wants to have tangible results and predictable outcomes, but just to see Simon happily coding or debugging can be very healing. I will be trying to continue capturing snapshots of his and Neva’s beautiful learning processes, but I wish my interference were minimal. I don’t remember if I have already said this, but sometimes I get the feeling I am perturbing the course of their delicate thought and learning process by observing and capturing it for my records, just like an observation or a measurement can collapse a wave function in quantum mechanics.

During the first two weeks after we moved to our more permanent home, Simon spent many hours creating his version of Jelly Is Sticky. It’s a puzzle game on Steam that is only available for Windows, and he really wanted to play it, so he decided to recreate it (Simon: she is so wrong it’s nowhere near as nice as the actual version) for the browser, so that he could play it on his Mac. He managed to implement all the mechanics and about 100 levels, over half of the levels he originally planned to build. Some of the levels were easy to implement, others took him longer than the mechanics. He wrote the code in a language he had never used before, a high level language called PuzzleScript. “How do you know how to write that code, if you’ve never used that language before?” I asked. — “What do you mean? Documentation, of course”

Just look at all those lines of code!

He ran into many bugs, sometimes up to 10 bugs in one day, but stoically persevered until… he saw his dear friend Dan Shiffman’s message asking for help with the physics for a visualization he was doing on the following Coding Train live stream. The problem is that there aren’t any physics libraries designed to work nicely with with p5.js, Simon explained to me. He and Dan, who is currently updating his wonderful Nature of Code book, exchanged ideas deep into the night. “I can’t wait until my physics library is done, to show it as a surprise to Dan!” The following morning Simon got up early (not something he does on a regular basis) to work out the math before the stream started. A few days later he concluded that the collision detection math was really difficult and suggested Dan go through that part during a future live stream. They have agreed that Dan would tackle a simplified version of it.

Meanwhile, Simon was already busy toiling away at an old project, a Sokoban puzzle clone in p5.js he started back in Belgium. He created a short-hand method to quickly implement levels and managed to make over 80 levels before he shifted his attention to one more unfinished game clone he was building, the cellular automata-like puzzle Cell Machine (we already wrote about him starting that project back in May). This time around , Simon wanted to make his own art, instead of coding the shapes, so he started building his own pixel art editor… You see where this is going?

Simon getting creative with a different Cell Machine remake someone made

Neva has also been settling in, finding her rhythm, mainly focussing on music and psychology, if I may summarize what is going through that busy head of hers very roughly. She has practiced many melodies in the Sky: Children of the Light game environment, where she is expanding her collection of musical instruments. She recently bought a flute (with in-game currency) and now contemplates of getting a xylophone as well. In combination with all the digital fashion and hairdos she has been putting together, it’s quite a show! In this virtual environment, she lets go of many blocks that may be hindering the same power of expression in physical life: she is talkative and eloquent with strangers, exuberant and extravagant in her clothing and hairstyle, loves music practice and performing.

Neva playing a flute in Sky. She figures some melodies out on her own and some she picks up from Sky’s music sheets.

She has been very assertive to keep unpleasant company away and has built a close bond with a couple of people with whom she turned out to have a lot in common (they love the same animated show, are also homeschooled and even have a very similar plush they carry everywhere). Her closest friends are 16, most of the people she meets devise she is around that age as well or older, judging by her conversation style and argumentation. We have interesting conversations about human behavior, why young teens seem to be ageist, why Neva has been accused of being “too young” for her firm, principal decisions to cut ties with people who were disrespectful or dishonest. She has also been reading a lot, going down the rabbit hole in researching every detail about her current interests (concerning animated series, game and chat platforms architecture) and watching videos on popular psychology via Psych2Go, a great nuanced but concise resource she has introduced me to (btw, I have seen they are hiring animators!)

Neva flying with an acquaintance in Sky

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s