Wed. Jul 8th, 2020

An Introduction to Programming Concepts

Like anything, learning is an ongoing process that is never truly finished, “A fool who recognizes his own ignorance is thereby in fact a wise man, but a fool who considers himself wise – that is what one really calls a fool.” – Gautama Buddha. It takes time to grasp the concepts of the computer programming and then a continual pursuit of learning to stay abreast the latest techniques and trends.

To be candidly honest this article will not make you a programming master however, it is my sincerest hope that this article will give you an understanding of the concepts of computer programming. In order to begin to understand any programming language you need to wrap your brain around some concepts.

Concept 1: Understanding Logic

Logic is unwavering, unbiased and blatant. Logic is on or off, 1 or 0, black or white; each choice or decision being precipitated by the result of the previous choice or decision and is made without emotion or judgment. It begs the question, “where did the first logical decision come from then”? Sorry, this isn’t a philosophical article (but most serious programmers tend to be a bit philosophical). Logic is a core computer programming concept that transcends all computer programming languages and is the foundation which allows us as people to create computer programming languages.

Concept 2: Understanding Compound Logic

Compound logic simply put is, ‘logic compounded together”. Compound logic is 1 or 0 AND black or white, on or off AND up or down. Compound logic is multiple logic decisions working harmoniously together to produce a single logical result. Compound logic can be combined with other compound logic to produce, ‘compounded compound logic’.

Concept 3: The difference between compiled and interpreted languages

All computer programming syntax regardless of origin must be reduced to a form that the computer will understand called, ‘machine language’ before the computer can run or ‘execute’ the syntax. There are two approaches to this requirement, compilation or interpretation. A compiled programming language is a language that has a utility that takes your finished syntax and compiles it into machine language, usually into the form of a file that the computer can execute (with respect to the operating system your using) such as; ‘.exe’, ‘.com’ … etc. Compiled languages can produce files that are self-contained and execute independently of the program that created them.

Interpreted languages are essentially the same as compiled languages except in how their syntax is handled. Unlike compiled languages, interpreted languages DO require an external program (often made by the company or person that created the programming language) that is responsible for interpreting your finished syntax into machine language in an ‘on demand’ fashion.  To further explain, the interpreter program is executed by the computer and interprets your finished syntax and translates it into machine language so that the machine can understand it. The interpreter program typically does not save the interpreted result (because that essentially would be compilation) and would need to re-interpret the syntax the next time it is executed.