Now to wait for replies from people who designed OSes when they were 12 :)
I called it an OS, even though it was just a text-based visual shell running in DOS that let you do pretty much anything. Actually used it as my primary "OS" for a few months.
Another cool thing was a game I wrote in BGI graphics with Pascal. Was fun to play, but I didn't know about arrays so there were roughly 200 global variables.
Oh and all the code I wrote before I was ~15 tried to use as short variable/function names as possible for some reason. When I used up the alphabet I'd go to aa, ab ... I want to slap my young self for that.
PS: I started programming when I was 9, in Logo. That was fun too. But the real fun started when I "unlocked" Pascal at 11.
However, the idea that people who start this early have a 10 year head start on someone who starts at 22 is silly. Maybe for child prodigies this is true, but I was neither driven nor intelligent enough then to learn at the rate I do now. I distinctly remember being incredibly confused by the syntax of for loops, and being unable to solve trivial C++ compiler errors because I had no idea how to approach debugging them or where to find more information. I also had a casual hobbyist approach, where if something wasn't working, I would just give up and go play outside with my friends. Even with all the resources we have today, I don't think I had the mental faculty back then to design an OS. :)
Also, learning programming now is an order of magnitude more effective nowadays, with all the free online resources, new languages and frameworks, and public interest in the subject. Back in 2000, Arduino didn't exist, there were no decent web frameworks or JS libraries, and I remember sadly giving up on trying to build a robot because the only books I could find on the subject were university textbooks that required proprietary tech provided by the prof.
I didn't really start taking it seriously until I was in my mid twenties by which time the quality and quantity of free educational material, languages and tools for programmers had exploded. Learning how to program has never been easier. It's really a great time to be in this field, beginner or otherwise.
My first programs were text-based games written in QBASIC. I also wrote a program to help me with my math homework. Later on, one of the Java books had a 3D game engine so I dabbled in that.
After I discovered C from a Windows programming book (age 11-12) I quickly started experimenting with various lower-level things. I wrote a DOS-based 3d engine. I studied printouts of the Allegro source code. I used DJGPP (remember that?!). And I played around with BIOS interrupts, and real mode extenders, etc.
It was around this time (when I was 12, in 2000) that I was introduced to Linux (Red Hat), and I also got a printout of a shell/OS written by some guy in Obj-C, which had assembly code and stuff to do with context switching and registers. That lead me down the path of making my own OS. My first attempt was via a ASCII-HEX to binary conversion program. I wrote a HEX file that switched to mode 13h and filled the screen with blue, copied it to the boot sector of a floppy, and booted from it, and it worked. I was hooked.
My teen years were spent working on different versions of that OS, and also doing 3d graphics stuff.