>How was the first computer programmed?
It really depends on what you mean by “computer”. In my opinion, the most basic definition of a computer is a device that does something based on a certain input. Computers, at their most basic level, are just performing a whole bunch of simple logic evaluations in rapid succession. We define these logic evaluations in a standardized way we call “Boolean Logic”.
For example, ‘AND’ is a common Boolean Logic operation that can be expressed in English as “IF INPUT ‘A’ IS TRUE, *AND* INPUT ‘B’ IS TRUE, THEN OUTPUT ‘Z’ IS TRUE”. Notice the English sentence describes everything you need to know. What if input A is not true? Well, the statement tells you you need both inputs to be true before the output is true, so in this case the output is false. This is a trivial example, but it really is the most basic level of computation, and *everything* in modern computing is built upon simple evaluations like that.
In its infancy, these logic operations were performed by intricate combinations of switches and relays, as early as 1886. Nowadays the technology is implemented on Integrated Circuits, but the function is largely the same. If you have a single chip with a single AND gate (the individual logic decisions in a chip are referred to as gates), then you have a computer that’s “programmed” to perform a single calculation very well. So, the first “computer with a program” was simply the first logic gate.
Of course, such a computer can’t have its program changed. A logic AND gate will always perform an AND operation, and that’s all it will ever do. Developers figured this out early on, and realized they needed a way to specify what inputs they wanted to apply to what logic gates, and what they wanted to do with the outputs, often feeding them into other logic gates to perform other operations. This is probably the first time we see what we would recognize as “programming”. It really was a major shift between organizing circuits to do a specific thing very well with little human input, towards creating a flexible system of circuits that a human could tell exactly what to do and where to send its outputs. This was usually accomplished by punch cards. Ada Lovelace is credited with the first written computer program, but unfortunately she died before her ideas really came to fruition and her ideas were just ideas. How you want to define a computer defines when you would say the first computer to use punch cards came about. Special purpose machines were created all through the 1800’s, but by the 1920’s they were more focused on basic math and less focused on special purposes, and personally I think that is a very big shift in computing. With this shift came the obvious and definite need to specify your inputs and decide exactly what you wanted to do with them, and voila computer programming was born.
Nowadays, there are several layers in between you and the machine that make you feel like what you are doing is more complicated than that, but it’s all a ruse. At its base level, all computer programming today is just a way to convert human language and concepts into a set of operations a computer can do with basic logical evaluations, and return the result we ask of it back into a useful output.
Latest Answers