I started programming when I was 8. I would write programs on paper, take them to a friend whose father had a computer, and see if they worked. When I was 11, I built my first own computer, using a 6502 microprocessor. This required writing my own monitor (basic operating system), in hand-assembled assembly. The fascination for low-level programming has never left me since. I've written a couple of conceptually interesting (read: impractical) OS-es, and am now working on hardware emulators
less...