The C64 also came during the golden era of home computing. It was during that time that IBM was attempting to turn a clunky, piece of crap Business computer into a clunky, piece of crap Home computer. At that time monopolies like Microsoft weren't well established, and there did not exist a defacto platform (which is currently the x86-based PC) or OS (Windows). Most home computers (Timex Sinclair, C64, TI-99/4A, TRS-80) all powered up directly into BASIC, which is of course a programming environment. Magazines like COMPUTE! were very popular, and contained source code listings each month for various game and utilies. Kids like myself waited anxiously each month for the next issue to arrive, so we could sit in front of the computer for hours, typing in raw source code line by line, in order to play some really petty game. However in an environment like that it's hard to not learn how to program.
That was also before standardized media, or even filesystems. Several types of computers had add-on 5.25 floppy drives (which cost quite a bit), but the actual format that they wrote to the disc made them incompatible with the other platforms. A good example is the Amiga, Macintosh, and IBM XT of the late 80's. All three used 3.5" Double-side, Double-Density floppies, but they could not read discs from the other type of computer (natively). Cassette tapes we very commonly used to store and retrieve data and programs, because of the (relatively) low cost at the time. Hard drives were unheard of in home computers, and would have cost many thousands of dollars for a 20 MB drive.
Finally, all home computers of that era used standard televisions as their display devices.
Dan East