Computer Programming And Process Flow: In the first days of computer programming, when programming still had more to do with the machine you were programming on than the program you were writing, the concept of program flow was one of the most problematic problems in computer programming. Much has been written about what each individual program instruction does in a programming language, and the syntax for each of these functions and statements. This is the form of the programming language itself, but less straightforward is the form of the program. A real-world computer program is a large thing. Programming instruction textbooks are full of short programs that usually do not extend far beyond one or two pages. This is how people learn programming, but the most difficult programming concept is keeping track of all the functions inside an actual, useful program with many thousands of lines of code. The human brain can only keep track of so many threads, and if the code is simply processed at face value, soon the programmer will forget what a particular segment of code is supposed to be doing. This is much less of a problem today because of the advent of high-level languages, programming functions, and object-oriented programming. All these innovations were created precisely to help the programmer think more about the program being written and less about the computer. But in the early days of procedural languages, and especially machine or assembly language (which is highly machine-focused and bears a relatively abstract relation to the final product), programmers did not attempt to remember what each part of their program did. And so they had to use external aids, such as flowcharts and other program diagrams, so they could logically split the program into pieces, each piece of code working with the other pieces to do one particular function of the program. Today, the ability to keep track of several things at once is still one of the most important traits a computer programmer can have; This same trait is very much valued in air traffic controllers as well. But object-oriented programming environments have allowed more people to be programmers, as well as making it easier on the people who always were.