Software tells a computer how to function. It is a general term used to refer to programs and scripts that run on PCs, mobile phones, tablets, laptops, etc. Software should not be confused with hardware, which is the physical component of a computer that does the work.
Without software, most computers would be useless. For example, a web browser is a software application that allows users to access the Internet. An operating system (OS) is software that serves as the interface between other applications and the hardware on a computer or mobile device. TCP/IP is built into all major operating systems to allow computers to communicate across networks over long distances. Without the OS or the protocols built into it, it would be impossible to access a web browser.
Most software is written in high-level programming languages because the language is closer to natural human language than machine language. The high-level language is then translated into low-level machine code using a compiler or interpreter so that the computer can understand.
The history of software
Software requires a general-purpose processor and computer memory in which reusable sets of subroutines and mathematical functions can be stored, started, and stopped. This type of technology has appeared quite recently.
Ada Lovelace wrote the first known computer program in 1843 for an analytical engine. The Analytical Engine was developed by Charles Babbage in 1837 and was the concept of the first general mechanical computer. However, the program remained theoretical as the Analytical Engine was never physically built. The first modern theory of software was proposed by Alan Turing in his 1935 essay “Computational Numbers with Application to Entscheidungsproblems”.
The first time a computer with a stored program kept a piece of software in its electronic memory and successfully executed it was on June 21, 1948. Scientists Tom Kilburn and Freddie William built one of the first computers, the Manchester Small Scale Experimental Machine (SSEM), at the University of Manchester in England. The SSEM was programmed to perform mathematical calculations using machine code instructions. It took the software 52 minutes to correctly calculate the greatest divisor of two to the power of 18 (262,144).
In the late 1950s, the first programming language, Fortran, appeared. COBOL and BASIC soon followed, allowing programs to be abstractly specific and independent of the details of the computer’s hardware architecture. The languages were mainly intended to specify numerical calculations.
Software gained its popularity in the 1970s and 1980s, when personal computers were already available. In 1977, Apple released the Apple II, an 8-bit home computer and one of the world’s first successful mass-produced microcomputer products.
VisiCalc was the first spreadsheet software for personal computers. It was released for the Apple II in 1979. The software was written in a specialized assembly language. Other companies, such as IBM, soon developed home computers. Productivity and business software developed in the early stages of personal computers. Popular software applications during this time included AutoCAD, Microsoft Word, and Microsoft Excel.
Another major innovation in the history of software development was the emergence of Linux in the 1990s. It is an open source operating system. Interest in Linux increased dramatically after the publication of the source code for the Netscape Navigator browser in 1998.