Computer software is a program that tells the computer what to do. These instructions can be internal commands, such as updating the system clock, or a response to external input received from the keyboard or mouse. While there are many different types of software made with open source and proprietary standards, programming basically boils down to a few ground rules.
Games are a type of computer software.
Hardware vs. software
The fundamental difference between hardware and software is that the former is tangible, while the latter is not. The hardware is the machine itself and does all the physical work, while the software tells the various hardware components what to do and how to interact with each other. This allows computers to adapt to new tasks or install new hardware. While hardware includes things like monitors, central processing units (CPUs), keyboards and mice; Software includes things like word processing programs, operating systems, and games.
Computer monitors and other hardware are physically tangible, while software is not.
There are two main types of computer software: system and application. The first type is only used to run the hardware, while the second is used to do other things. The main types of system software are operating systems such as Windows™ OS X or Linux; and drivers, which are programs that allow a computer to interact with other devices, such as printers and video cards. There are many different types of application software, including games, media players, word processors, antivirus programs, and applications for making new programs.
Programmers create open source or proprietary computer software.
Computer software is often tested by hackers for vulnerabilities before being released to the public.
How it works
Hardware only understands the two basic concepts, on and off, which are represented as 1s and 0s in binary language. The software acts as the translator between the human and binary languages, which makes it possible for the hardware to understand the instructions being fed into it. Programmers write commands called source code in programming languages that are similar to what one might use in everyday speech. Another program called a compiler is then used to convert the source code commands into binaries. The result is an executable computer program.
Open source vs. owner
Programmers create open source or proprietary computer software. The first type can be edited and adapted by users, while the second is protected and not intended to be edited by people outside the company that sells it. While open source programs are generally free, owners are licensed to distributors and must be paid.
Both types generally have a comparable quality of programming, but fixes for bugs generally come faster for open source products than for proprietary ones. Also, some people prefer to use open source applications because they can feel a sense of ownership in the end project or feel that computer software companies create monopolies and want alternatives. Others prefer closed source programs because they are sometimes more stable or less vulnerable to hackers, often come in suites, and come with customer service from the company.
Some IT professionals specialize in hardware, while others focus on programming software.