Es gibt keine einzige Antwort darauf, was die allererste Software war, da sich die Definition von "Software" und die Entwicklung des Computers allmählich weiterentwickelt hat. Einige starke Konkurrenten für frühe Softwareformen umfassen jedoch:
* Die Programme für frühe elektromechanische Taschenrechner: Maschinen wie die Analytical Engine (entworfen von Charles Babbage, obwohl sie nie vollständig gebaut) und der Zuse Z3 hatten Programme, die ihren Betrieb kontrollierten, wenn auch in sehr rudimentären Formen im Vergleich zur modernen Software. Diese Programme wurden häufig mit Stanzkarten oder Bändern implementiert. Dies sind starke Kandidaten dafür, die frühesten zu sein, wenn auch nicht "Software", wie wir es heute verstehen.
* Frühversammlungsprogramme: Als elektronische Computer auftauchten, wurden Programme in den Montagesprachen geschrieben-Programmiersprachen mit niedriger Ebene, die direkt den Anweisungen für Maschinen entsprachen. Diese waren immer noch sehr nahe an der Hardware, stellten einen signifikanten Schritt zur Abtrahie des Programmierprozesses dar.
* Die frühesten Programmiersprachen auf hoher Ebene: Sprachen wie Forran (1957) und Cobol (1959) waren bahnbrechend, weil sie den Programmierern erlaubten, Code in einer menschlich lesbaren Form zu schreiben, die dann in Maschinenanweisungen übersetzt wurde. Diese sind näher an dem, was wir heute als Software erkennen würden.
Es ist schwierig, definitiv zu sagen, was "zuerst" kam, weil die Entwicklung nicht linear war. Verschiedene Arten von Programmen wurden gleichzeitig auf verschiedenen Maschinen entwickelt. Die "erste" Software hängt stark davon ab, wie Sie "Software" definieren und welche Kriterien Sie priorisieren.