Stockholm shuts down in July. Shops in business districts close for the summer. Subway lines close down for repairs late evenings. The traffic jam on the freeway clears up.
I've been back in the office for one week, calm and quiet with most people away. Good time to dig deep into some code. Great with an easy commute by car. With kids at home on summer leave, I prioritise working at the office. After a few hectic weeks diving into the new job, it was healthy with a two week break to reset and reflect. Code with poor documentation and poor test coverage is legacy code, no matter the technology. No matter the architecture. Here is work for me to do. Time to establish routines and get the job done.
Rockets and liquid nitrogen
My oldest participated in a one week summer school at Vetenskapens Hus (House of Science) next to the University of Stockholm during the second week of my vacation.
The summer school was organised by Hello World, an organisation of volunteers that work with industry to inspire children and young people to pursue a career in science and technology, no matter their background.
With both my wife and I having academic degrees in mathematics and computer science and both of us working with software development, it is perhaps not surprising if our kids take an interest in STEM (science, technology, engineering, mathematics). Anyhow, still great to have such an opportunity.
My son joined a class of 13 with three instructors, all STEM university students. Mornings they worked on programming, afternoons they did various science experiments, building rockets and making ice cream from liquid nitrogen.
Sounds like he had a blast. I was curious to see how they approached teaching programming so I looked into it.
Game development with Codepad
The summer school used Lua scripts running on Codepad with a Defold game engine underneath.
Each day they got a new example game to work on. The games were unfinished: They would run but lacked features. The task was to add features by modifying existing scripts, very much like how most development is done in the real world. Except, here there was documentation.
I tried out one of the exercises. Nice! Here the game is Space Cleaner, a side scrolling shoot-em-up. The game is already running and you can try it out in the bottom right corner. Instructions on the left tells you to find and modify the script that implement movement of the space ship. You copy- paste-edit the lines and restart the script and now the game is already more fun to play!
It is both full circle and a frog leap: This is the kind of games I played as a kid in the 1980ies, but the means and effort for me to build such a game would have been far greater.
Defold is a free game engine developed by a couple of smart engineers at King, the Swedish game studio behind Candy Crush. However, it is not owned by King: Back in 2020, Defold was handed over to the Defold Foundation with the explicit objective to prevent Defold from being commercialised by a third-party. Not today, not tomorrow, not ever.
A gift for future generations. Let's see what they will do with it. Now there is one more aspiring game developer who knows how to use it.