As requested by Tang3nt, I've moved day 2 to this thread. I'll post the next 5 tips on this thread and then make a new thread next week so that this one doesn't get too big.

Tip #2: Use the faulty logic lamp to make flip-flops

While there are various logic gates that can be used to perform the fundamental logical operations such as AND, OR, and XOR, there is another logic device that some beginners may overlook or underestimate: the faulty logic lamp. The function of the lamp is fairly simple; attaching the lamp to the top of any logic gate will change its function, causing pulses that are sent to the faulty lamp gate to have a certain probability of coming out the bottom of the gate, based on what percentage of the intermediate logic lamps are active. When only one logic lamp is inserted, the gate will always either allow or deny pulses that travel through it.

Because of this function, the faulty lamp gate (as I will call it from now on) acts as a transistor that can be used to control the flow of signals. Yet, the faulty lamp gate can be used for more than simple transistors; it can also be used to create flip-flops. A flip-flop is a logic device that is able to store a value. Different types of flip-flops behave differently based on the inputs they receive. The first flip-flop that I will show you is the D (for "data") flip-flop:

The D flip-flop holds a specific value and has two inputs; the first input (red) is a trigger that sets the flip-flop's stored value (green) to the current value of the second input (blue). With this, you can easily store information for later use. This flip-flop works due to the logic lamp's ability to function as a XOR gate; when two inputs are connected to the same logic lamp, the lamp turns on only when the inputs' values are different. Here, both the input and output wire are connected to the logic lamp. Triggering the flip-flop when these values are different causes the output's value to change and match the input's value.

The D flip-flop is also easily tileable, making it useful for storing large amounts of information with a single trigger:

That's all for today. Tomorrow, I'm going to talk about SR latches. Until then, feel free to post whatever questions, comments, or suggestions you may have.

Good luck!

[doublepost=1487463822,1487446879][/doublepost]Tip #3: Use faulty lamp gates to make SR latches

In addition to the D flip-flop, another useful flip-flop is the SR (for "set, reset") latch:

The SR latch functions similarly to the D flip-flop, but instead of having one trigger and one value input, it has two trigger inputs. One trigger (blue) turns the latch on, while the other (red) turns it off. This can be useful for making devices that can't be turned off after they are activated, except with a reset switch.

Like the D flip-flop, the SR latch is also easily tileable, allowing you to connect one reset switch to multiple latches:

That's all for today. Tomorrow, I'm going to talk about binary code. Until then, feel free to post whatever questions, comments, or suggestions you may have.

Good luck!

Also, I've attached the world file for those of you who would like to test / experiment with the devices yourselves. It's a very small file, but be sure to delete it if you download later versions of it:

[doublepost=1487556375][/doublepost]Tip #4: Learn binary

In electronics, it is impossible for computers to do calculations using the number system that we are all familiar with: the decimal system. Instead, digital devices use a number system known as binary. Unlike decimal, which uses 10 unique digits (0 through 9), binary only uses 2 (0 and 1). This is because electronic signals can only have two different states, off and on, which correspond to 0 and 1. Seeing long strings of 0s and 1s can be intimidating, and it may seem hard to figure just how to do math with only two digits, but in reality, binary works exactly the same as decimal.

Consider the "expanded form" of decimal numbers. In expanded form, each digit of a number is written as that digit multiplied by a power of 10. For example, 12345 = 1*10000 + 2*1000 + 3*100 + 2*10 + 1*1. Binary works the same, but instead of using powers of 10, it uses powers of 2. For example, 11001 = 1*16 + 1*8 + 0*4 + 0*2 + 1*1. If you were to consider the rightmost digit of a binary number the "0th" digit, then, from right to left, the decimal number that corresponds with each binary digit would equal 2 to the nth power.

Manually converting a binary number to decimal is as simple as adding together the powers of 2 that correspond with each 1 in the binary number (11001, for example, is 1 + 8 + 16 = 25). Another way to convert binary to decimal is to start with 0 and then read the binary number from left to right, add 1 to your total for each 1 in the number and then doubling your number after each step except for the last step (1, 2, 3, 6, 12, 24, 25).

Conversely, converting a decimal to binary can be done by determining which powers of 2 can add up to that number. To convert 25 back to binary, you would first find that largest power of 2 that is less than 25, which is 16. Then, subtract 16 from 25 to get 9, and then repeat this process until you reach 0. Finally, take each power of 2 that you subtracted to create a binary number.

These techniques I've described are only ways to convert between decimal and binary manually. Doing these conversions in a computer is much more complicated, so I will leave that process for a future tutorial. I will also show how to do operations such as addition and multiplication later in the series.

That's all for today. Tomorrow, I'm going to talk about bit shifters. Until then, feel free to post whatever questions, comments, or suggestions you may have.

Good luck!