When my little girl uses an iPad App to learn simple coding like {if…} {then do…} {repeat…} {elseif…} {else…}, it is fascinatingly simple and easy. And the program lets the kids debug and refine the codes to make their small codes a closed-loop process at the end.
This reminds me of my old days in learning one basic computer language BASIC. Before learning BASIC, we learned how computers translate all signals into 0 and 1 and then finally show everything on screen using code 0 and 1.
In the end, all signals on computers are shown through each of the digital cells on its screen. With each cell appearing in a different color, all cells on a screen form up a screen image which refreshes at a very high speed that human eyes could not catch up and tell the changes.
On an RGB color mode screen, each cell is a combination of the three basic colors of Red, Green, and Blue, and each color is designed in 256 levels (256=16*16) and using two hexadecimal numbers 0, 1, 2, …9, A, B… F to present.
For example, if a cell has a color of FF9A04, it means:
Red: 255 (F*16+F=15*16+15)
Green: 154 (9*16+A=9*16+10)
Blue: 4 (0*16 + 4)
And for each color, from 0 to 255, they are stored in binary digits from 00000000 to 11111111.
So, for a cell of the color of FF9A04, the computer would be sending a string of digital binary like this:
1111 1111 — 255 — Red
1001 1010 — 154 — Green
0000 0100 — 4 — Blue
Combined with processing codes which are digital binary 0 and 1 too, at a very high speed translating, sending, and reloading, our computer screen freshes, and then we can surf in this digital world freely.
The same thing happens on TV, also audio products, and all computer program-related products.
This is an amazing world that can be completely described using 0 and 1.