When I started programming as a kid, I had a Commodore 64 and later an amiga 500. Those machines came with very simple software and expected you to write some, rather than giving you thousands of pre-made packages to learn and play with. A lot of existing software was video games. They were much simpler than those people play nowadays but they were still a lot of fun. Part of the fun was low latency. I started working on a gaming console based on the raspberry pi that would have the kind of low latency that older home computers and gaming consoles had, and found a way to do that. At some point, I realised that users would want to use a keyboard, read and write files, connect to the internet, stuff that is taken for granted with computers today. So I wanted not to run on bare metal anymore, I needed an OS. Writing one from scratch would take me years and it probably would not be as good as an existing one. But existing desktop operating systems tend not to be good for games, as the...