I got my C64 in 1985. Obviously, I can revisit the graphics and sounds of that machine online now, via emulators and youtube videos. But one thing I always remember is the smell of warming circuit boards that oozed from the casing soon after you turned on the computer.
Anecdotally, the cassette player that came with the machine had a misconfigured tape head. Because there was no internet nobody knew why it didn't load most of the games I got with the machine. However, saving and loading programs did work. So, I started writing programs from the user manual and game listings from some programming books I found in the library, and saving them on my cassettes. Because the user manual covered not only some tutorial BASIC but also the machine's graphics, sprites, sounds, and what other features I eventually, after getting some hang of writing BASIC, did also realize that what I could create with the machine hardware itself was virtually unlimited. I didn't necessarily know what the commands did with the underlying hardware but I knew if I poked certain numbers into certain addresses I could make my sprites appear on the screen and make them move around.
By the time I got the cassette player fixed by some computer repair shop, learned about tuning the tape head, and I could finally load all the games bundled with the machine, I was seriously hooked with programming and the highly desired games no longer seemed that interesting in comparison. I knew someone sat down and wrote all those games and instead of playing them I could learn to do the same myself.
Been programming ever since.