ABSTRACT

The modern computer is a universal machine, because it can be programmed to do anything. Therefore, a clear understanding of programming is important for computational thinkers. Some authors foresee blind spots and difficulties, making their recipes easy to follow, instead of leaving more questions than answers. A program has to be written in such a way that anyone and everyone can understand and follow the instructions precisely. In fact, a good program should be foolproof, because ultimately, a program is for an idiotic machine (the computer) to execute. Once in the form of computer code, a program can be run on the target computer system for testing, debugging, revision, and updating. Indeed, programming is a vast and deep area of computing and computer science, including software engineering, programming languages, compilers, algorithm design and analysis, application program interface (API) design, protocols, data structures, database, and much more.