I started programming at a very early age. I got an MSX computer -very primitive to what's known now to be a PC- when I was 13. After successfully finishing all of the 11-ish games there, there was one application I didn't approach. So curiously I decided to explore it, and the journey started since then...
The MSX didn't have an internal storage unit, however, with the right cable, you could attach it to a tape recorder and it will dump all the information on it, in a linear way.
(Un)fortunately, I didn't have/find such cable. Everything written is all lost once the power is cut off!
I wrote couple of application and games. Every time I wanted to play my own game or show it to a friend, I had to spend an hour or two writing the code from my own games notebook onto the computer screen. Afterwards I am a happy child!
One aspect about programming that intrigues me, is that unlike mechanical engineering, civil engineering, other fields and life in general, where approximations and imperfections occur casually; writing a program can have a whole devised world of perfection, where things are to the point. It is like an act of creation, it feels as majestic as a god building an impurities-free universe.
Well of course you face the real life and now that errors happens. But this idea that one grow up on, still motivates me to make sure my code is in a well written conditions. Considering not only the current requirements, but flexible enough to be maintained and expanded.