BASIC

BASIC (Beginner's All-purpose Symbolic Instruction Code) was created in 1964 at Dartmouth College as a programming language designed to be easy for novices to learn. Some of these novices were misled by the name to think that it's the "basic" low-level language of computers, which it isn't (machine language is the low-level language; BASIC is a higher-level interpreted language running on top of machine language).

Originally implemented on a time-sharing mainframe, BASIC really took off in popularity later when personal computers became available. Bill Gates created a version of BASIC for the Altair hobbyist computer in 1975, which became the first product of Microsoft. This was distributed on paper tape to be loaded into those early computers, but later computer models such as the Commodore PET and Radio Shack TRS-80 included versions of BASIC built into their ROMs, making it the most accessible programming language to a generation of early home-computer programmers. The Apple II originally came with an Integer BASIC programmed by Steve Wozniak, but later introduced Applesoft II Floating Point BASIC, developed by Microsoft, which also created a number of the other BASICs of that era.

BASIC isn't so much a single language as it is a whole family of languages with a vague resemblance to one another; different versions can differ greatly in data types, input-output methods, and other things. The newest BASICs such as Microsoft Visual BASIC barely have any resemblance to the oldest ones; for one thing, line numbers were ubiquitous in the old BASICs but seldom found in the new ones.

BASIC has been criticized by advocates of structured programming for lacking in built-in structure; programmers tend to use what is termed "spaghetti code" in which program flow jumps around erratically, especially when the GOTO command is used. (A famous computer science paper was titled "GO TO Considered Harmful".) While such lack of structure reduced the learning curve for getting started in programming (you could just start typing commands in to see how they worked, without worrying about the larger structure they fit into), this also bred bad habits that would be hard to unlearn when the programmer later moved to a better-structured language like Pascal or C.

From a "file archaeology" standpoint, one notable fact is that most programs in early BASICs were stored in what was known as tokenized BASIC, where instead of a plain-text source file, the program is stored as a series of encoded tokens representing the keywords of the language, a device which was necessitated by the small amount of storage space computers had in those days. As the tokens are system-specific, there is no single process by which such a program can be decoded now if you don't have the original machine it was created on.