Computer programs are simply lists of instructions for the computer to execute. These can range from just a few instructions which perform a simple task, to a much more complex instruction list including also tables of data. Many computer programs contain millions of instructions, and many of those instructions are executed repeatedly. Computers do not gain their extraordinary capabilities through the ability to execute complex instructions. Rather, they do millions of simple instructions arranged by people known as programmers.
Programmer is an individual who writes and debugs computer programs—the sometimes lengthy sequences of instructions that determine the work performed by a computer. Depending on the size of the project and the work environment, a programmer might work alone or as part of a team, be involved in part or all of the process from design through completion, or write all or a portion of the program.
Many programmers update, repair, modify, and expand existing programs. When making changes to a section of code, called a routine, programmers need to make other users aware of the task that the routine is to perform. They do this by inserting comments in the coded instructions so that others can understand the program.
Programmers test a program by running it to ensure that the instructions are correct and that the program produces the desired outcome. If errors do occur, the programmer must make the appropriate change and recheck the program until it produces the correct results. This process is called testing and debugging. Programmers may continue to fix these problems throughout the life of a program. Programmers working in a mainframe environment, which involves a large centralized computer, may prepare instructions for a computer operator who will run the program. Programmers also may contribute to a manual for persons who will be using the program.
Programmers in software development companies may work directly with experts from various fields to create software—either programs designed for specific clients or packaged software for general use—ranging from games and educational software to programs for desktop publishing and financial planning. Programming of packaged software constitutes one of the most rapidly growing segments of the computer services industry.
In some organizations, particularly small ones, workers commonly known as programmer-analysts are responsible for both the systems analysis and the actual programming work. Advanced programming languages and new object-oriented programming capabilities are increasing the efficiency and productivity of both programmers and users. The transition from a mainframe environment to one that is based primarily on personal computers (PCs) has blurred the once rigid distinction between the programmer and the user. Increasingly, adept end users are taking over many of the tasks previously performed by programmers. For example, the growing use of packaged software, such as spreadsheet and database management software packages, allows users to write simple programs to access data and perform calculations.
Computer programming (often simply programming or coding) is the craft of writing a set of commands or instructions that can later be compiled and/or interpreted and then inherently transformed to an executable that an electronic machine can execute or "run". Programming requires mainly logic, but has elements of science, mathematics, engineering, and — many would argue — art.
2. Explain the meaning of the following:
1. The transition from a mainframe environment to one that is based primarily on personal computers (PCs) has blurred the once rigid distinction between the programmer and the user.
2. Programmers also may contribute to a manual for persons who will be using the program.
3. Programming requires mainly logic but has elements of art.
7. Answer the following questions:
1. What has the transition from a mainframe environment to the one based primarily on personal computers (PCs) led to?
2. How do programmers test programs?
3. What is debugging?
4. What for do programmers insert comments in the coded instructions?
5. What is the practical application of spreadsheet and database management software packages?
8. Match the following:
to access, to increase, to expand, to decrease, to contribute
1. to become larger in number, amount, price, value etc
2. to reduce something, especially by a fairly small amount or number
3. to become bigger and spread around
4. to get the right or ability to log on to a computer system or use a computer program