Become a Patron of Ask Leo! and go ad-free!
Transcript
The binary base race
Or how I started computing before I ever started computing.
his goes back to roughly 1970. That’s my 7th grade class and here I am and what we were doing in this class one day was studying numeric bases. Now, bases are the way that we interpret and operate on numbers.
We’re all familiar with Base 10. In Base 10, there are ten possible digits; zero through nine and a number like 12,345 is represented as you see here: one, two, three, four, five. Each of those digits represents something important. The five, for example represents the number of “ones” in the number. The four represents the number of “tens”. The three represents the number of “one hundreds”; the two represents the number of “one thousands” and the one represents the number of “ten thousands”.
Now, that sequence: one, ten, one hundred, one thousand, ten thousand, those are all powers of ten. Hence, Base 10.
Now, we already knew about Base 10 and we were looking at other bases of course, but what we decided to do is to study Base 2. What we call “binary”.
Now in Base 2, there are exactly two possible digits: zero and one. So a number might look something like 10101. In this case, the right most digit represents the number of “ones” just like it did in Base 10. The next digit over, however, represents the number of “twos”. The next digit, the number of “fours”; the next digit the number of “eights” and the next the number of “sixteens” and so on.
Here the commonality that this one, two, four, eight, sixteen sequence has is that these are all powers of two. Hence, binary. Now, in case you are curious, that 10101 number represents one times sixteen plus zero times eight plus one times four plus zero times two plus one times one. In other words, that’s the equivalent of 21 decimal.
We had a base race. Now a base race was a really more of a spelling bee like thing for counting except we did it in Base 2. That made it interesting. The setup was fairly simple. We’d all get up and stand in front of the room in a line and from left to right, we’d simply start counting in Base 2. So what that means is the first person would say, “zero”. The next, “one”; the next, “one, zero”. The next, “one, one”; the next, “one, zero, zero” and so on counting one, by one, through the binary numbers.
As soon as somebody got one wrong, well, they’d have to sit down and the race would continue. As you can tell, there were probably around thirty people in the class so we ended up going through quite a few numbers. I actually don’t remember exactly where we stopped; how far we got but I’m sure we got into a least the thirties.
Now, as it turns out, I came in second or if you want to be technical about it I suppose it would be 10 to be represented in binary.
What’s interesting about this and the reason that I bring this up today is that 7th grade, 1970, that’s a full six years before I would even touch the computer for the first time in college.
That kind of struck me. I didn’t even think about for the longest time. I always considered my computing career to have started in 1976 with that introduction to Fortran programming class, but apparently, in reality, the signs were already 6 years earlier.
Now, you probably have experience that you don’t even realize applies. So my question to you is this: “What did you learn before you realized you learned it?” Much like my binary numbers, I had no idea that they would play such an important role in my life later on, and yet, here we are.
What things in real life helped you understand your technology better? Technology is full of metaphors, files and folders, clipboards, menus, dashboards, they’re all just metaphors for things we see in real life. I’m curious as to your experience and how it’s impacted your life?
As always, this video, if you’re watching anywhere but on askleo.com, here’s the link, askleo.com/22613. Leave your comments there. Let me know. This is a lighter, funner topic than some of the topics we’ve been addressing in the past and I’m curious as to what your experience has been.
As always, have fun, stay safe and don’t forget to back up.
Oh, and before we go, if you’ve ever run across this particular piece of humor in social media and so forth, now you’re in a position to understand it. There are ten kinds of people in the world: Those who understand binary and those who don’t. It’s actually a mispronunciation. The correct way to state this is that there are 10 kinds of people in the world because 10 is, of course, binary for two.
Take care, everyone.
I believe there are 3 kinds of people in the world. Those who can count, and those who can’t. :)
Actually, there are 10. Those who understand binary and those who don’t. :P
Funny Mark!
Did ya watch the video? To the end????? :-)
Exactly what I’m wondering. :)
That’s an extremely old joke, Mr. Jacobs. I think I first heard it when I was 1001.
Great comeback Ray :)
Leo, I’m a little older than you and actually started with computers in the 60’s. I never learned “binary” in school (actually you’re the first of people I know to ever mention it was taught!) But as we know it’s the foundation of computing and once one understands that basis it sort of comes together! Back in the day I would “fix” my complied programming errors through the console of a 1401 computer. Get 3-4 errors fixed through flipping switches (1 and 0) until it was feasible to re-compile. Thanks for the memory!
Well, being older, there were no computers in school … then the last year of college, there was a large frame where we could learn to punch cards to program some simple arithmetic sum with umpteen cards – what a mess if those cards were dropped ;-)
It was interesting yet time-consuming; later on – in the working world, the price to have something typed was going up yet my typing skills were still not perfect; so I decided to purchase a computer [Apple 2E with printer] … sure improved my typing and when the BBs started, I met some of these computer nerds who were willing to answer my questions – when MsFt & Apple started hiring, they moved to the West coast but the Internet had begun.
As for binary … that was supposedly a part of the new math – I learned the old stand-by; although I’m glad I took Statistics in college which taught that ;-)
Hi Leo,
Thanks for the memories
I was surprised at the similarity between Huffman Coding technique and the one used by Jean Dominique Bauby to write his book “The Diving Bell and the Butterfly”. Necessity is indeed the mother of invention.
Well, let’s see. My first FORTRAN was in 1968 on an IBM 8100 with 16k(yes k!) of memory and a 5 MG disk.
COBOL in 1970 on an RCA Spectra 70/45.
RPG in 1972 on a 360/20
Never learned assembler but patched it a lot.
A bit of Pascal creeped in during 1974 or 1975.
I thought I was a pig in . . . . . when I got a 9600 bps modem!
Let’s not even get into PC’s !
My earliest exposure to “computer” stuff was in second grade, in a music appreciation segment of class, when I learned the song “Inchworm”. I loved the feeling of comfortable infinity in the lyrics, and even more so the haunting ostinato melody of the refrain. It was, no pun intended, a brainworm that stayed with me for weeks. As most folks know, the refrain in the background of the main lyrics is simply “two and two are four, four and four are eight, eight and eight are sixteen, and sixteen and sixteen are thirty two”. Because I was so taken with the song, and perhaps because I’m bit wrong in the head, I decided to continue the sequence. I forget how far I got, but it went over the million mark. The sequence, and the rapidity and simplicity with which the numbers got so big, combined with the eerie melody I now forever associate with exponential growth kept me revisiting those numbers over and over. I had my powers of two memorized by age 8. I think I was 15 before I actually had any use for them, writing my first programs on a TRS-80, 19 before I was forced to take a real computer programming class in college, and 20 or 21 before I was working a college job completely immersed in hardware-level memory mapped graphics programming that required constant use of binary notation.
Wow, how young you are … makes me feel so old.
I was reading the entire Enclyclopedia Britannica while you were playing ’round with your exponents ;-)
Just chopped off eight of my digits and I still don’t get it.
And I spelled my name wrong because I only have two thumbs left.
You only have two thumbs anyway, even if you have 10 digits.
Good Logic and that is what programming is about. My main occupation was in engineering and I studied this stuff, Binary, Hexadecimal etc just as an introduction because I didn’t have to program on this level. I ended up programming using APT for numerical control machines. But it helped.
Still got my fingers.
Another oldie but goodie: Why do programmers always mix up Halloween and Christmas? (Because Oct 31 = Dec 25.)
OK, so it doesn’t involve binary. My bad, lol.
Source: https://www.idtech.com/blog/part-i-top-10-programmer-jokes-explained-for-the-rest-of-us/
Not binary but the same premise. I’ve never heard that one! Thanks for sharing. :)
Actually it is binary in the sense that octal was a human shorthand for binary on some computers.
I couldn’t tell you what grade I was in but we did study binary numbers in arithmetic class and I remember catching on right away. (Was in the ’60s.) In 7th grade I built a “computer” for the science fair. It consisted of a battery on one side, 4 switches in a row, and a lightbulb on the other side. It was supposed to demonstrate binary in a practical way by flipping the switches and turning on the light. I don’t think anyone understood it, and in truth I couldn’t explain it well. I could explain the difference between series and parallel circuits, so I did that instead.
I didn’t know it then (getting back to your question, Leo) but it taught me that I was more interested in what a computer could do than how it did it. I acquired a hand-me-down IBM in the early ’90s I think, running on two 5 1/4″ floppies (one for the OS, one for the program) and marveled at the power in my hands. I never did learn to code, but to this day I spend 4-6 hours a day on my computer, reading, researching, emailing and playing.
Did you realize that computer terminology is derived from toilet parts and accessories? I realized this when I was given a T-shirt with an illustration that labeled the various parts of the toilet. To round out your technological understanding, here they are: The part of the toilet that the “input” drops into is really the central processing unit. The toilet seat is the user interface. The lid is the floppy disk. The tank is for storage. The lever that releases the water from the tank is the function key, and the toilet paper is the application software. Bet you didn’t know that!
Well, I hope that rounds out your education – you too, Leo! Don’t ask me where to get a T-shirt like it. It was given given to me by my son-in-law’s father who lives in Thailand, the shirt was made by a Thai company called Anuruk, and I have no idea where the enlightening illustration was printed. In any case, they sure must be smart in Thailand.
Someone I used to work with gave me a copy of a drawing of the whole toilet/computer terminology, but I don’t know where it originally came from. Very apt comparisons!
Google understanding computer t-shirt
Also, thanks for the memories! I recall being introduced to other base systems in 1962 or ’63 in high school advanced math using the SMSG typewritten paperback textbooks that went into many math areas that I found to be great fun – topology, a little spherical trig and other fun topics. Today most anyone using computers see Hex (base 16) regularly especially on the web. Addresses or file names frequently contain %20 which is hex for a “space” (ascii 32 in base 10) which allows the use of a space when an actual typed space would be rejected. Error codes are still often shown in hex using the format beginning with “0x” – 0x6F or 111, a Buffer Overflow error. It also brought back humorist Tom Lehrer’s song from the 1980’s about the “New Math” discussing subtraction in base 10, base 8 and base 16.
http://www.sciencedump.com/content/full-new-math-song-tom-lehrer-animated
If link doesn’t work search Tom Lehrer New Math. As always, thanks for all you do.
I programmed an IBM 1620 in 1960 that used base 8,
I was a teletype repairman in 1968 and learned binary with the Baudot code, the forerunner of ASCII which only had 5 bits hence teletype machines could only deal with 32 codes which is why they didn’t have lower case letters. In fact, to get numbers and punctuation marks the machine had to use a mechanical shift called letters (1-1-1-1-1) versus figs (1-1-0-1-1) to achieve it. During an advanced course for new 8 bit teletypes in Chicago, I had to learn “binary” code because that’s how the character counter worked. A circuit board lit up the character position for an 80 character line by counting in binary. I never knew how much that and ASCII would affect my life later. I didn’t see my first PC until about 1983 when I purchased a Sinclair ZX81, fifteen years later.
Thanks for the memories.
Bob
My first exposure to binary is a little different. Back in the early 60s I was in the ‘controls’ group of a paper machine mfgr’g co. on the dry end. All of the controls, relays, solenoid valves, motors, etc. were designed with very long schematic ladder diagrams. One day a member of our group received a newsletter from one of our suppliers. It had a several page item introducing binary nos. I’ll never forget, I said something like, “What a bunch of crap. This will never go anywhere!” It was several years later when I got exposed to them again learning programmable controllers.
1963, the “new Math’ in 6th grade. Saved my number-challenged butt*. I can do math, I can’t do arithmetic. :-)
It was the US’s response to the Soviet Sputnik.
-bb
*and spelling checkers in 1980. I can’t spell either.
The question was “What did you learn before you realized you learned it?”
In high school was were allowed a few elective courses, none of them all that interesting. But on a lark I chose typing figuring that it might come in handy some day. It was a mixed class of business bound kids, mostly girls heading for secretarial work and a few misfits like me who were heading for college. There were about a half dozen IBM Selectrics which were rotated through the class except for folks like me who weren’t really going to get anything out of the class so why waste a precious resource on them. I didn’t even have a machine at home on which to practice. I attended all the classes and achieved a speed of 20 words/minute by the end. Fair but I definitely wouldn’t be getting any secretarial jobs in the future.
Time passed and even in my college work typing didn’t loom large. I muddled through any papers required (engineers don’t write many papers) and didn’t make much effort to improve my typing skills. There was no such thing as a personal computer at the time. Fortran programming was done on a keypunch machine and you got one run a day.
Then the personal computer arrived and I got an early one; a Heath/Zenith. It seemed there was a lot of typing involved with these new computers. As time passed I noticed I was getting better and better and I didn’t need white out. Without the fear of making a mistake which would bring my overall speed crashing down I could really go fast. Through my working career I flew on the key board always noticing my associates, who lacked my wisdom and didn’t take any typing classes, hunting and pecking at their keyboards. Looking back I rank that typing class as one of the most important I’ve ever taken.
Now that I’m a (lot) older a little arthritis has set in and I have a crooked left little finger so the “a” is getting really hard to hit and my speed has fallen off. And I’ve placed a curse on all tablets and phones because you can’t touch type on them.
I signed up for typing in high school first year. It was cancelled for lack of interest. (I went to an all-boys school.) So I’ve spend the last years learning by doing – many bad behaviors I’m sure. :-)
I agree. 1 year of typing is one of the best things I ever took for future use of computers. Beats typing with a single finger. Over the years, my speed increased more and more. I, too, am a child of the 60s in high school. We learned all the base systems, not just binary, but binary is the most useful for computer applications because electricity is either on or off. I remember learning simple Fortran 4 lunch hours in high school, in the programming club. I am proud to be a Baby Boomer, one of the most innovative, creative generations of our time.
Here’s a good story,Leo. In the last two weeks I’ve downloaded Windows 10. BTW they’re both doing well now. I bought a new PC for my wife and it came with Win 10 already installed. What a challenge! My download version went together without a hiccup. The new PC was a whole different matter. I spent the better part of 3 days looking up answers to various questions that came about. I finally got everything on the PC working and my wife calls me her IT hero.
I was hired by IBM in 1965 in Cedar Rapids Iowa for Chicago.
System 360, main frames, were coming and they wanted to take their CE’s, customer engineers, and move them up to the mainframes and I was the backfill for the pig iron, key punches verifiers re-producers and sorter hardware.
So when mainframes became popular they were producing dumps, when the computer crashed, like Windows can do, nobody knew how to read so I moved up to a PSR, program support rep. I was so good, ;-), I use the black felt marker so that I always knew where I had been in the dump, I couldn’t backup because it was covered by a marker.
The computers ran assembler and in computer language it was “BASE 16”, not 10 or 2
You counted 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F and then added one more and it looked like 10,
so if you saw 10, that was equal to 16.
That was an interesting era.
Can I segue into “what did you teach without knowing that you taught it”?
Back in the early 80’s I was teaching in a boarding school, and made a UK 101 computer. My electronics club had great fun with it, we even made a program for a game, and I worked out some assembler code to run a cheap printer off it.
About a week later I printed a page and found it had a header “***** ****** is great” – I’d had my assembler code hacked by a 12 year old (name suppressed) who’s been doing electronics for about 6 months. (He’s now working in electronics so I like to think I helped, a bit, but he did all the hard work himself.)
Sometimes you win without realising ….
My first programming experience was with the TI-59 calculator. Except that I didn’t realize that it was programming. In fact, when I learned that you could “memorize sequences of key presses” I thought that was a very neath trick for a calculator :-) I was in 8th grade back then when I got my first TI-59.
Oh, and BTW, I’m fond of “new math”. I was fully in it, with finite topologies, banach spaces and Hausdorff separability in 10th grade. It looked quite natural at the moment. I had an extremely brillant math teacher, M. Vandenbroecke, who was member of the committee setting up the new programs in math. To me, it is a great loss that “new math” was so badly received overall.
Actually, all number systems are base 10 :-) . (And I don’t mean base ten)
Can binary system of a webpage show me who visited a certain page, for example porn page, if i see the binary system of a porn page could i see its users and what videos were clicked on that page? So could i be able to see from my own pc what videos or pages my friend visited/watched with binary system of that page?
No