Viewing a single comment thread. View all comments

nyuckajay t1_isf95tr wrote

How did the first piece of code get written after we moved from the vacuum transistor style computers, I couldn’t find an answer.

I think it’s because I word it poorly, but basically, how did data get on the first blank slate piece of silicon produced.

8

countChaiula t1_isfjxev wrote

Short answer: something like a punch card

The first pieces of silicon weren't that (functionally) different than vacuum tubes. They were harder/better/faster/stronger, but still just a series of gates that could be turned on and off. In this way, there weren't really "programmed" in the sense that you would do something to them that would physically change the silicon. To use them, there are a bunch of pins that come out of the silicon, and you have to either put power on them or ground them to get it to do what you want. The easiest way to do this is to punch holes into pieces of paper and run those through a machine that detects holes or not holes and puts power on the pins accordingly. This is a punch card.

Eventually we had things like silicon memory (RAM) that could actually store information in the silicon (as long as the power was on), but these still stored programs (which is just the sequence of on/offs that the punch cards provided) externally - for example on magnetic tapes. Nowadays we have things like flash which do permanently store those values in silicon. To get the code into that silicon we use.... another computer that already has the code in it. To get it into that computer we use.... an earlier computer. If you follow this back all the way, you will end up with punch cards, basically.

9

nyuckajay t1_isfluze wrote

That’s super sick, the people that figured out ways to make what is essentially a super complex set of switches, and engineer a way for it to interface and write the first code is very neat.

was it something like binary? Then the binary (power and grounds or on/off from the cards) could build into more complex lines of code in the newer stuff?

6

countChaiula t1_isfmzd3 wrote

Yes, it's all binary. I believe there were a few experimental computers that used other system, but everything else is binary.

I should point out that outside of computer chips not everything is "binary" in the sense of a signal can be only in one of two states. For instance Ethernet cables can pass many different signal states. How many states depends on the speed of the connection, but it might be something like 64 or 256 different states. This is what makes it so fast. Instead of sending just a 1 or 0, you might send a "34", which actually means 01101, for example, so you are sending five binary values at once instead of just one. I'm hand waving a bit, but that's the idea. When them signal comes into your computer, it ultimately ends up being 0s and 1s again.

7

PolybiusChampion t1_isg6nk6 wrote

On a bit of a tangent, there is a great BBC podcast 13 Minutes to the Moon that uses the final 13 minutes of the moon landing to go over all the technology etc that had to be developed to make that 13 minutes happen. The episode on the flight computer was fascinating. The code was hard wired literally on wires that were then wound/knitted to form the memory core.

I’m sure I’ve massively messed up the simple explanation, but based on the Q I think you’d enjoy the podcast, at least that episode.

3

nyuckajay t1_isg93bx wrote

Hey thanks! I’ll check it out!

2

PaulsRedditUsername t1_isgc2xn wrote

I've listened to it and second that recommendation. The "13 minutes" is the amount of time it took for the Eagle to leave the orbiter and fall to the moon's surface. The episodes go through the history of the mission and the construction of the spaceship.

Finally, they play the entire 13-minute sequence. By that time, you understand the meaning of every communication between Eagle and Houston, all of the warning codes and calls and responses. It's good stuff.

2