I think you’re conflating “algorithm” with “software”. You’re right in saying that algorithms can be computed by hand, but I don’t think anyone would refer to that as “running software”. The word “software” implies that it’s run on “hardware”, and hardware usually implies some sort of electronic (or even mechanical*) circuit, not pen and paper and a human brain.
Say I agree with your distinction - or restriction. There was still software written for, and programmed into, general-purpose, Turing-complete calculating machines long before there are CPUs.
So let’s look at the technical details of the word. The term “Software” was coined in 1958 by John Tukey. The computers in use at that time were machines like the IBM 704, the PDP-1, and the UNIVAC 1107; these are all vacuum tube computers that contained no silicon microchips and no CPUs. Even technically, the term “software” predates silicon and CPUs.
Non-technically, I disagree with your premise on the basis that it’s often been argued - and I agree with the argument - that humans are just computers with software personalities programmed by social conditioning, running on wetware and a fair bit of firmware. And there’s increasing evidence that there’s no real CPU, just a bunch of cooperating microorganisms and an id that retroactively convinces itself that it’s making the decisions. Even if the term “software” wasn’t coined until 1958, software has been a thing since complex organisms capable of learning from experience arose.
Unless we’re all living in a simulation, in which case, who knows if software or hardware really exist up there, or whether there’s even a distinction.
Software runs on processing power. Doesn’t matter if it’s mechanical, electrical or biological computing power.
The important part is, that something is processing it.
And although by now software development through abstraction feels disconnected from just specialised algorithms: everything will break down into numbers and some form of algorithm to process the information
I think you’re conflating “algorithm” with “software”. You’re right in saying that algorithms can be computed by hand, but I don’t think anyone would refer to that as “running software”. The word “software” implies that it’s run on “hardware”, and hardware usually implies some sort of electronic (or even mechanical*) circuit, not pen and paper and a human brain.
Say I agree with your distinction - or restriction. There was still software written for, and programmed into, general-purpose, Turing-complete calculating machines long before there are CPUs.
So let’s look at the technical details of the word. The term “Software” was coined in 1958 by John Tukey. The computers in use at that time were machines like the IBM 704, the PDP-1, and the UNIVAC 1107; these are all vacuum tube computers that contained no silicon microchips and no CPUs. Even technically, the term “software” predates silicon and CPUs.
Non-technically, I disagree with your premise on the basis that it’s often been argued - and I agree with the argument - that humans are just computers with software personalities programmed by social conditioning, running on wetware and a fair bit of firmware. And there’s increasing evidence that there’s no real CPU, just a bunch of cooperating microorganisms and an id that retroactively convinces itself that it’s making the decisions. Even if the term “software” wasn’t coined until 1958, software has been a thing since complex organisms capable of learning from experience arose.
Unless we’re all living in a simulation, in which case, who knows if software or hardware really exist up there, or whether there’s even a distinction.
They called the box with all the tubes in it that executed instructions a “CPU”; memory, CPU, and IO subsystems were distinct and well-defined.
I feel like you mean “microprocessor”
Software runs on processing power. Doesn’t matter if it’s mechanical, electrical or biological computing power.
The important part is, that something is processing it.
And although by now software development through abstraction feels disconnected from just specialised algorithms: everything will break down into numbers and some form of algorithm to process the information