Terms of the trade: common terms used by computer programmers Computer programmer, or just programmer refers to the individual who writes computer code. Programs are detailed instructions or computer code. When executed in sequence these instructions perform a task. Machine language is the language of the computer. It consists only of zeros and ones. Writing in machine language requires knowledge of specific memory locations.
High-level programming languages refer to all the modern programming languages used by programmers. They attempt to follow a more natural language structure. These languages make programming easier, and more portable. A Compiler is a tool that converts High-level programming into machine language that can be understood and executed by a computer. An Algorithm is a procedure for accomplishing a task. "In mathematics and computer science, an algorithm is a procedure (a finite set of well-defined instructions) for accomplishing some task which, given an initial state, will terminate in a defined end-state." (Algorithm - Wikipedia, the free encyclopedia)
Source code is the uncompiled, human readable, original version of a program. This code may be compiled to fit a specific architecture, such as compiling the source code for a Linux program if a version is not available to fit your computers architecture. Object Oriented Programming (OOP) is a style of programming that supports encapsulation and inheritance and abstraction. This style of programming emphasizes focusing on the total program as a whole, not the individual steps.
Procedural Programming is based on modularity. Procedural programs contain "modules", or small parts of the program packaged as to be re-usable in other programs.
Open Source refers to any program whose source code is freely available for distribution and modification. Linux is a primary example of open source software. Software is another word for computer programs. This usually refers to programs in the more polished form, including user documentation.
The Evolution of Programming, and Programming Languages
The first programming language was physical motion, literally turning the gears of machines such as Charles Babbage's 1822 Difference Engine. ENIAC (electronic numerical integrator and computer) was the first digital computer, invented by the
Army's Ordnance Ballistic Research Laboratories in Amberdeen Proving Ground, Maryland. "The world's first electronic digital computer was developed by Army Ordnance to compute World War II ballistic firing tables." (Weik, 1961) This and other computers of its time allowed the creation of the first generation of programming language, machine language. Machine language is a computers native language. It's comprised of a series of zeros and ones the computer interprets electronically.
Programming in machine language was not an easy task. It is not a portable language, as it is architecture specific. "Every CPU has it's own unique machine language." (What is Machine Language? A Word Definition from the Webopedia Computer Dictionary) It is very time consuming, as it requires intimate understanding of the inner workings of the CPU. Programs written in Machine language are however extremely efficient, making it still a good choice for small, mission critical code.
The second generation of programming languages was Assembly language. It used readable notation to represent the machine language of a specific architecture. It requires a compiler to convert it into machine language that a computer can then interpret. It is still used in system BIOS, for device drivers, as well as for other system dependent OS tasks. Assembly language is particularly useful in the area of Reverse Engineering. While the mnemonics of assembly make is somewhat easier than machine language, it is still a very difficult language to learn, use, and master.
The third generation of programming languages, high-level programming, uses human sounding language and syntax. It was the first architecture independent language. It was also the first generation of languages based on the concept of abstraction. Programmers no longer had to focus on low level details of data representation. Languages could now be learned and programs written more quickly. This led to cost reductions and stability in software. Basic, C, C++, Fortran, Java, and COBOL are all third generation languages.
"Fourth-generation language, also known as a 4GL, it is a computer language that is more advanced than traditional high-level programming languages. For example, in dBASE, the command List displays all the records in a data file. In second- and third-generation languages, instructions would have to be written to read each record, test for end of file, place each item of data on screen and go back and repeat the operation until there are no more records to process." (Fourth-generation
programming language: Information from Answers.com) They are non-procedural, high level specification languages. One of the most common fourth generation languages is Visual Basic. Others include Database query languages such as Focus,
and SQL, Report generators such as BuildProfessional and Oracle Report, and GUI creators such as eDeveloper and OpenROAD.
In an ever more computer dependent world the job of computer programmer has become esteemed. Without programs, computers are but idle hardware. Programming has evolved, and continues to evolve, along side the evolution of hardware and technology. Programming is in a sense the alpha and omega of the technological revolution. All begins and ends with
programming. Networks are not possible without Operating systems, device drivers and so on. Web and Multimedia exist as a result of the world largest network, the internet. Graphics and animation are created using computer programs. Web design is itself a form of programming.
Database creation is a specific programming niche. SQL (a database language) is a fourth generation language. Programs, in their simplest forms, are solutions to problems. Much of the technological advancements brought from both computers and the Internet are the public benefit gained by U.S. Military research. This stands to reason. Problems of national security are naturally given the highest priority, resources, budget. Programming will continue in its constant evolution. The very term, computer, is evolving. Many common home devices from DVD players, to alarm clocks contain programmed components. Cell phones are mobile computers available with their own Operating systems. The Game industry is an empire built by programming, generating every new devices and system platforms. It is a career that requires a passion for learning and technology, a high level of attention to detail, and an understanding of logic. Computer programmers will continue to be in
high demand well into the foreseeable future.
Published by Shara Rabich
College student and computer repair technician. View profile
- Myths Abound Regarding Careers in Computer Programming Part IIThis article explores and debunks myths regarding computer programmers careers in computer programming.
- The Best Approach to Learning Computer ProgrammingIf there is a growing industry world wide then it is the industry of computer programming. Nowadays some of the computer programming languages are available free of charge online and anyone can become a computer progr...
An Introduction to Programming in PerlPerl is a versatile programming language created by Larry Wall in 1987. He designed this language to extract and manipulate text files. It has since grown into a rich programmin...- The Evolution of Computer Programming LanguagesThe evolution of programming languages have made software programming increasingly user-friendly.
- Computer Programming LanguagesIn the end, the decision to treat computer programming more like a contextual history represents a notable change in education.
- A Short Introduction to Java Programming Language
- The Low Level and High Level Programming Language
- The Best Computer Programming Language for Beginners
- What Programming Language to Start With
- Computer Programming Language Comparison
- The Evolution of Computer Programming Languages
- RAPTOR Programming Language Overview
- Computer programmers are the authors of detailed instructions, called programs.
- Programmers attempt to solve real world problems by harnessing the power of computers.
