6 ms·
The ENIAC was not the world's first computer. Konrad Zuse's Z1 was first: https://en.wikipedia.org/wiki/Z1_(computer) https://en.wikipedia.org/wiki/Z1_(compute
by eMGm4D0zgUAVXc7 6y ago
The ENIAC was not the world's first computer.
Konrad Zuse's Z1 was first: https://en.wikipedia.org/wiki/Z1_(computer) https://en.wikipedia.org/wiki/Z1_(computer)
Even if you want it to be electrical, not mechanical, then Zuse's Z3 was first: https://en.wikipedia.org/wiki/Z3_(computer) https://en.wikipedia.org/wiki/Z3_(computer)
- kleiba 6y agoWikipedia says that the Z3 was "electromechanical", though, while the ENIAC is described as "electronic". You can always play the "who was first" game if you just add enough distinguishing categories.
- Rochus 6y agoYes, the Z3 used relays and the Eniac used tubes. Relays were more reliable but slower.
- sebastos 6y agoWithout electronic speeds, it's kind of like inventing a printing press that's slower than writing by hand. The invention isn't much of an invention until the whole thing is electronic. Reading off a tape doesn't cut it. That's why, you'll notice, the entire computer industry bloomed out of the work done on the ENIAC. In other words, if your client had invented facebook, they would have invented facebook.
- twic 6y agoAIUI, the Z3 has no conditional branches. Without those, it's not much like a computer as we understand it. Rather, i think the Z3 is an "automatic calculator" - it can carry out a fixed sequence of operations, but it can't do arbitrary computation. In that respect, it is like the Atanasoff–Berry computer and the Harvard Mark I. The prehistory of computing has a bunch of really interesting machines like this (and Colossus, and early ENIAC really) which are technical marvels, but miss at least one of the key things which make a computer really a computer. People often focus on the electrical vs mechanical distinction, but that's a red herring. If you made a 386 out of Lego, it would still be a computer. Similarly, binary vs decimal is irrelevant. To me, there are three key characteristics: 1. There is a program comprising a sequence of symbols which are interpreted by the machine (so not Colossus or early ENIAC, which were controlled by plugboards) 2. There are symbols for conditional branches, or some equivalent construct, and the language is Turing-complete, or some practical projection of it (so not the Z3, ABC, or ASCC) 3. The program is stored in a memory which can be modified by the program Once you have those things, you can do anything. The first two points are the most important, but i think the third is also really significant: it is what allows things like operating systems and linkers to arise. If the first two are the definition of life, the third is the definition of multicellular life.
- ncmncm 6y ago3 is not necessary. OSes and linkers are not necessary. We did without for many years. The program should be in some kind of more-or-less addressable memory, to support conditional branching. That's all.
- retrac 6y agoIt's not necessary in a strict theoretical sense to be Turing complete, yes. But in practice? Most of the magic of modern computing is in programs which can themselves manipulate, translate, and even write new programs. Nearly all we've built up depends on that. You can only get so far in practice by flipping switches to encode binary numbers.
- twic 6y agoNo you didn't. You can't even write a bootloader without 3. All practical computers have always had 3.
- ncmncm 6y agoYou reveal that you have never programmed a microcontroller. Most do not have an OS, and cannot run the compiler used to program them. Yet, they are practical: the world would grind to a stop if they vanished. Most today are far more powerful than any among the whole first decade of practical computers. Those ran compilers in as little as 4k words of memory. The output of the compiler was not written to memory; it was punched directly to tape or cards. (On some, it physically could not be written to program memory, even if there were room: no bus connected to there.) The tape was later read into program memory--often onto a spinning magnetic drum--and executed directly, no OS in sight. If you imagine these were not practical computers, consider that people paid $millions for them; they earned their keep. Have you ever operated a computer doing work worth that much?
- kleiba 6y agoit can carry out a fixed sequence of operations, but it can't do arbitrary computation This is incorrect. The Z3 is Turing-complete, as has been shown by Raúl Rojas in 1998 [1]. It requires some hacking though. [1] https://ieeexplore.ieee.org/document/707574 https://ieeexplore.ieee.org/document/707574
- alangibson 6y agoThe Manchester Baby was the first stored program computer. IMHO that makes it the first computer and not just a giant digital calculator.