An Overview of Computer Programming

A sentence is a blueprint of an idea. When we write or speak sentences, we are using a structure others understand that allows them to receive the thoughts and ideas we would express. That also describes computer source code. It is the blueprint of a working process and it is expressed to a computer that then represents the idea in working form. That is your goal with programming.

When writing a speaking, you have to know words, symbols, and sequence of such. It is the same way when putting a program together. A program is a complete thought from beginning to end. Within this thought are symbols, numbers, and sequence of these things that map information into action to produce information. Actions, referred to as operations, are transitions from one set of information to another. A succession of transformations follow to produce outcomes.

When writing a program, you are defining an overall blueprint filled in with many details. Like the blueprints building architects use, these blueprints have to be specified according to a specific language. Programming languages have rules that, when followed, allows you to build a blueprint out of data and operations. The blueprint is your intention. The blueprint is not the actual program, it is the intentions for how the program should be.

The actual program is a mass amalgamation of binary digits. A blueprint, the source code, is fed into a program called a compiler that reads the blueprint and uses that to create the actual program that can run in a computer. The compiler, and sometimes an additional tool called a linker, actually writes the program whereas you wrote the blueprint that tells the compiler what program to write.

That is the overview. Many other concepts come to your aid to improve the quality of the blueprint. Ideas such as data structures, algorithms, analysis, unit testing and many others.

Program Building – The Best Language

C is a letter that is also the name of a programming language. This programming language is the best because it gives you the most control over a computer before you have to write Assembly. As long as there are multiple computer processors, Assembly language will not be the best programming language because it is not standardized. Intel’s Assembly language is not the same as for other processors. Assembly language is the most powerful language before you write pure binary. Either of these would qualify one highly proficient in them as an elite writer of code of the highest caliber but C has the full fusion of productivity and capability. Computer code has an order from most granular to least which is Binary -> Assembly -> C -> C++ -> Everything else. Binary is the only true code and everything else is ultimately converted into it. Anything you can do in other programming languages that follow after C you can also do in C but the reverse is not often true. C is the best programming language.

Individual Technology Diversification

Avoid a belief in the one true technology. Sometimes that is hard to do, even when you might know better not to do so but technology can have unseen flaws or limitations. Technologies can complement one another. That includes operating systems, software, and hardware. Concepts work in much the same way such as data locality and random access. Diversity works to your advantage in technology although at the point of practice you may benefit more from a homogeneous solution. A full stack Microsoft environment in practice can be rather productive versus best of breed.