How many bits will computer operation memory have and how many do we need to have to link every single particle in the Universe to the internet? And how useful are quantum computers?
Simon explains why our modern satellite navigation (the Global Positioning System or GPS) is a great experimental proof for Einstein’s relativity theory and what would happen if the software calculated your car’s location using Newtonian dynamics.
Simon learned about this from Ian Stewart’s awesome book “17 Equations that Changed the World”, Chapter 13 (Relativity).
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!
Last week Simon suddenly unpacked his old electronics sets and completed several projects with Arduino, his old single-board friend that got him into coding a little over a year ago. Back then it was the most difficult stuff he had ever tried, his first “setups”and “draws”, his first dive into serious circuits. Now Arduino (and iCircuit) is something he does while taking breaks from the real studying/ coding. Amazing how skillful he has become in assembling the circuits, too. All those little wires. Especially considering he still isn’t an expert at tying his shoelaces.
Yesterday Simon spent the whole day studying the concept of Cellular Automaton (CA), a discrete model of a system of “cell” objects used in physics, math and theoretical biology. He learned a lot from Daniel Shiffman’s tutorials on Cellular Automata and his book The Nature of Code (Chapter 7).
Simon describes Cellular Automaton as a set of rules for getting nature-like patterns. 1D cellular automata are static (think of a pattern resembling the Pascal triangle) and 2D are not static (the most famous example is Conway’s Game of Life).
The mathematician who made cellular automata a big thing (and even Turing-compatible!) was Stephen Wolfram. Simon also looked at some of Wolfram’s writings. Wolfram’s book A New Kind of Science is intimidating (in content and size) but full of graphic illustrations and available for free at http://www.wolframscience.com/nksonline/toc.html
A CA is basically a grid where cells live, each cell in a particular state (the simplest example being “1” or “0”). In Processing, it’s possible to have a CA draw a beautiful pattern this way. Simon tried to write a CA program in another language. He tried writing it in Python on his RaspberryPi first, but I overheard him say “don’t know how classes really work in Python, let’s try Ruby – I know how classes work in Ruby!” Then I saw him move over to the desktop and plug his long forgotten Arduino in. He said he now wanted to translate a CA code into C. Of course, there would be no pattern, but he wanted to have the Arduino “spit out numbers in the console” instead. Eventually he got an error and gave up, but it was intriguing to observe him.
The videos below show Simon talk about CA and program a CA in Arduino (C):
Simon’s passion is coding, but he does other things, too. Things like Dutch, because – in case you haven’t noticed – his native language is Dutch. I usually don’t film our homeschooling lessons but today I felt like filming, so here you go – a glimpse of Simon doing Dutch Grammar exercises on syntax and morphology.
When we were talking about coordinating and subordinating conjunctions Simon ran out of the room and came back with a LittleBits NOR (logic gate from an electric circuit), saying coordinating conjunctions (nevenschikkende voegwoorden in Dutch) were just like logic gates!
He made no mistakes in the 20 questions below, although I did have to explain a couple of terms along the way:
When an error with XML HTTP Request occurred Simon spontaneously drafted an explanation in Microsoft Word. This video captured how quickly and easily he operates in Microsoft Office:
Simon wrote a sketch in Sublime Text (a text editor) and uploaded it on to his Arduino. It didn’t work at first but he found the bug.
I wouldn’t publish this video if it wasn’t for one observation: this electricity project would have taken two hours just a few months ago. Now Simon assembles things like this within minutes, without using any manuals, just as a little break from anything else he was doing.