Beginner's All-purpose Symbolic Instruction Code - or BASIC for short - was created in the 1960s as an easy to use, general-purpose language suitable for anyone. It was a big improvement in terms of ease-of-use over many of its predecessors such as machine language.
Traditionally, BASIC was lacking in many features that are required today such as the ability to draw images or play sounds and music. This is for a number of reasons such as hardware at the time not supporting this functionality. As hardware advanced and moved into the home market, many systems started supporting graphics and sound. At this point, BASIC had non-standard additions added to it on the various platforms to support each systems' differing features.
From instance, the clear the screen on a TSR-80 or PC, the command cls (short for "clear screen") was used. On an Apple II, the statement was home (because it put the cursor back at the home position in the top-left corner). And, on a Commodore, the rather cryptic print chr$(147) was used. It is easy to see why this could be confusing for anyone trying to write programs that would run on a number of different computers.
Many books and magazines in the 1970s, 1980s, and early 1990s had source code listings (the instructions that make up a computer program). Disks were expensive in the early days, and not everyone had a disk drive, so this was a way for publishers to release their games, productivity software, and other programs. Users would then painstakingly type in a few hundred lines, receive - sometimes cryptic - errors when trying to run the program, check each line against the listing, and rinse-and-repeat until it worked.
Due to the inconsistencies between the different extensions to BASIC, code authors had two choices. A common choice in the early days was to not use any of the add-on features. The other option was to provide separate listings for each targetted system (the COMPUTE! magazine took this approach).
As even more time passed, many versions of BASIC started coming with more advanced features that were common among other languages. For instance, IDEs (Integrated Development Environments), debuggers, compilers, and profilers were added. These tools each deserve an article of their own and will be covered later.
Because of this added functionality, some newer versions of BASIC such as Microsoft's Visual BASIC are actually used to create commercial programs. As such, BASIC is still a relevant language today more than 50 years after it's creation.