I remember when I was a kid, we had a Commodore 64. My dad bought a subscription to a magazine, and every month, they had this little section of BASIC code that you typed in. After a few months, you had a complete program. I remember copying that program in line-by-line (there was probably a few thousand lines in total). I got all the way to the end of the program without getting bored. But after it was all typed in, and I finally got to run it, it did work! There were bugs!
I gave up at that point, but my dad was more persistent that I was. He must've spent an entire weekend debugging that thing, and finally got it to work. Of course, being only 9 or 10 as I was at the time, I got to take full credit for the program, even though I'd just copied it from a magazine and my dad had done all of the actual hard work, but I still count that as my "real" first program.
The program was a basic database/Excel style thing and used the Commodore 64's built-in record storaging facilities to store data to the tape.
I loved that Commodore 64. I had it for a long time - I think it would've been around 1993 or 1994 that I finally "upgraded" to a PC. I kind of regret now that we sold our original C64, but I guess that's the inevitable march of progress...