I notice a few people asking “what happens if a parity bit gets flipped?” If you understand the algorithm, you don’t have to ask, try it yourself! Set up a block, flip a parity bit, say bit 2, then walk through what the receiver does. What happens?
Once the parity bits are set, they're no longer special. What is important is that they left the board in a state where asking the parity checks will pinpoint exactly which row and column an error occurred.
@Philosopher's Dream In the case of two errors, the method that gives you the accuracy to find a single bit breaks down. Imagine that there are two bits flipped in one set. Say, two bits flipped in column two. The row parity can find that there are two errors, but the column parity can't give any information on where the bit is, because as far as it can tell, parity still checks out. For more complicated cases, just get yourself a piece of paper and two coins (or any object, really). Draw out a 4x4 grid, and then place the two coins in two random spaces to represent errors. Try to determine the positions of the errors *purely* through the group-based parity checks. The only case I could find that allows both errors to be solved is when there's one in the top corner in the case that that's a parity bit. In every other case I tried, it's impossible to pin down the location.
The beauty here is that, by constructing the parity bits in this way, there is not a single parity bit that is located in the territory of another parity bit. So, flipping only a parity bit will cause that parity bit to be errored and all other parity bits not errored. By that, you know the errored parity bit is the errored bit.
Electrical engineer here... We literally had a full lecture about this... A full 3 hour lecture and you absolutely made a great, rewatchable and perfectly adequate video on this subject. I applaud you and your educational skills.
3B1B *always* has a great way of explaining things at an appropriate pace.
3 ปีที่แล้ว +82
I studied in same field, my teacher only mentioned it briefly during one lesson, I understood that simple parity check back then, but not the error correction... watching this just once got me perfectly on track and it is insanely simple, I really don't know how I didn't know this already really great video
Yeah I think it took us about 2 hours to cover this subject along with the concept of error correction codes. This is incredibly concise, but I do have the benefit of hindsight. I wonder what newcomers to the field think
Newcomer to error correction (other than the "send the message 3 times" scheme). Makes perfect sense and started to be able to get where the topic was going at the point when he mentioned the offset striations of "to what" the parity check refers. I have to say the paranoid person in me if still of the opinion "if you have one error, you probably have 20" so I guess I still find it amazing that scratched disks work. But I imagine that's addressed by some of the later algorithms for the same purpose. Doesn't change that this is an incredibly elegant explanation of an incredibly elegant solution to a common problem.
@@baroncandy3939 imagine sitting in the office, at your desk, with an endless excel sheet... And then you grab some paper and ... Error check.... Whilst giggling about Tom the cat replacing pi 😁😄 Julia Programming Language - check it out! You PI surprised :)
I love sudoku and computer sciencs. But i don't see to many similarities there. They are both on grids and got a simple ruleset that uses elimination processes. But that's all it's havin in common as far as i know.
I must tell you, as a fresh cs graduate, I wish I've had teachers like you in the university, you explained something so clearly in 20 min, what would take a whole lecture of a lazy professor, and still wouldn't be clear to understand. I hope people are appreciate the priceless content that you share with us!
To be a little fair to professors, he did this all pre recorded with much time to prepare the video since he doesn’t need 2/3 lectures for each week of the semester
Yeah, it’s really difficult to make quality educational material. Grant’s lucky enough to focus on educating in a video format full time. If you have to run a whole course in person, plan problem sets, run a research group, and have office hours, it just becomes a lot harder to focus on making salable content. Grant probably asks for lots of feedback on his videos before posting. I emphasize with the professors, but appreciate Grant filling the gap.
@@gianni50725 the professors have an entire semester to teach the students. 3b1b can teach you those same concepts within a week give or take. If that isn't incompetence, idk what is.
The emotions Hamming must have felt at discovering such an elegant solution to data correction are probably similar to the "Aha!" moments physicists feel. Or perhaps it was relief after working with brute force options starting out. Either way, great video!
@@i_dont_want_a_handle that first moment you learn an inkling of programming for the first time and do something that would have taken hours, in the blink of an eye
Balaji Annamali - That was said about writing a very long time ago. The ability to write down ideas changed the world. Your post is an example of both writing to the future, and possibly what is in this video.
When he removed the 0th bit, I thought to myself: "Wait why don't we use it to parity check the whole thing?". I was so excited to see that's what happened next lol
I remember being completely puzzled with this when I was in college. They attempted to teach this during an early class. It went completely over my head then. I’ve appreciated your teaching style for years. I’ve watched most of your videos. This takes the cake. Absolutely stunning what a good approach and visuals can do for learning.
ive had a similar sort of feeling with some chem/bio stuff, during school id struggle to make sense of these big systems.. like i could memorize but didn't necessarily understand.. until years later either reading or watching vids something would click and the pattern was clear :o
I often point to this specific video as a big catalyst that got me to return to school and study computer science. I'm in my second semester and we're writing a hamming code decoder in assembly, so I had a great reason to revisit it. And I gotta say, the elegance of hamming codes is a lot more evident with your visualizations than it is from lecture. Which is understandable! My professor's job is a little different from yours, but it did make me appreciate how useful your videos are in gaining a big picture perspective.
For one thing, they didn't think to display the code as a square, so the powers of 2 pattern doesn't emerge visually. We're just looking at it as a string of bits all in a line
@@NoriMori1992 You have great timing - I'm interning at a fortune 100 company and yesterday my manager said they're going to extend a full time offer! Nothing's official until I sign but the future's never looked so bright. I'm graduating this fall since I already had two years of credits. Going back to school was easily the single best decision I ever made. It's a DevOps role if you're curious
I'm in my final year of a CS program, and my online program means that I'm teaching myself an Operating Systems course with a mediocre book and no instructor involvement. I'm blessed to have found this video! While the book tells me what the right answer is, it doesn't demonstrate HOW to think about and work through this encoding process. I didn't understand the purpose of where the parity bits were stored until this video. I did exactly what you said; I paused to actually work it out by myself, which gave me such satisfaction when I got the right answer after your 20 mins of instruction. Eternally grateful! ❤
@5:34 “After all, storing data is the same thing as sending a message, just from the past to the future, instead of from one place to another.” That's … a pretty darn beautiful way of putting it! [steals for future use]
It's kinda crazy how large the audience for this stuff is. He's talking about Hamming Codes and Binary Data storage and the video already has +20k views just hours from its posting.
Thats because the audience for 3blue1brown is that large. Because this dude communicates well and knows how to explain an idea. Many people and teachers fail to catch someone's interest or get a good idea across because they fumble with the language, tone, and pacing. They could be very smart people but not great teachers because of a weaker linguistic ability. The ability to do what he's doing, is a sign of serious intelligence. To know how to break something advanced down and communicate to hold interest and convey understanding. Grant has really strong logic and reasoning intelligence, and an incredible linguistic ability. Thus people who might never be into this, because its never been presented in the right way, are all of a sudden learning great new concepts because of Grants work here.
As someone who has received intense formal education in physics but felt shorted by the lack of "raw theory" I saw in the few computer science courses I had, I absolutely love how you presented this. "How does error correction actually work?" has been a question that has sat on the back burner in my mind for ~5 years, and now I have a satisfying answer. Would love to see videos on the more modern methods!
Every time that I watch some video from 3Blue1Brown, I notice how marvelous this channel is! It isn't about the animations only and how's incredibly well explained, it's about this type of information spread all over the world, free, with such profound analysis. This is easily one of the best channels of TH-cam, at least for me.
The first three or so times you told me to try it myself I was like "noo i'm lazy" but the last time, error-checking the message I hadn't memorized, for some reason I did try it, and it was great - somehow I actually did it right. This teaching style is awesome.
I learned this in college 10 years ago and the teacher had us MEMORIZE specific hamming codes for 5 bits, and explaining it by showing a way to enumerate all 32 possibilities, changing 1 bit at a time, and showing that every 4 in this list were the numbers 0-7. It was a terrible experience.. for thousands of dollars. I don't understand how it wasn't taught like this. Hopefully future professors teach their kids more like you.
This is something that I studied during my Information theory course ( I study telecommunications) and enjoyed it very. I am very happy to see it presented at such a elegant way and in adequate details, almost rivaling the level of quality at which it wast taught to me (and that is saying a lot).
When I was taught this i had no idea what was going on for the several weeks it was being covered. This 20 minute video actually clarified what took weeks to try to understand.
@@christophersmith1424 that is very unfortunate. My professor really wanted us to clearly understand. During the introduction of this subject he made a lot of analogies with everyday items and products that have some built in redundancy in order to work, and that sort of thing really helped me. He also gave many examples about where different encoding schemes are implemented.
@@MS-il3ht Humming, Huffman codes, convolutional codes, trellis coding, statistical coding, and as a very similar discipline, two digital communication courses.
Yeah I'm in my last semester studying telecommunications, and no one ever taught me the algorithm or why this works. I was taught that error correction and detection exist, but had no clue how they worked. Really wish I had a lecturer like this
Yes, having watched that video made me see where this was going very fast. Still very entertaining and educational to see a more fleshed out explanation though.
I taught this stuff as part of data communications course in the 80s. Your rows and columns method is an excellent graphical explanation of what's going on and the second video does a great job of explaining how easy it is to figure out which bit is in error. My explanation involved assigning the data bits a sequence number from 0 to 15. Parity bit 1 covered all bits with the 1 bit set in their sequence number (1,3,5,7,9,11,13,15). Parity bit 2 covers all bits with a 2 bit in their sequence number (2,3,6,7,10,11,14,15). Parity bit 4 covered all bits with a 4 bit set in their sequence number (4,5,6,7,12,13,14,15). Parity bit 8 covers all bits with an 8 bit set in their sequence number (8,9,10,11,12,13,14,15). This essentially created a parity check for each column of the bit sequence number and provides an easy way to determine which bit had fipped. If a single bit error occured, to figure out which bit was in error, you simply added up the values of the parity bits that were wrong and it told you exactly which bit needed to be fixed. Lets say bit 12 had flipped. That would mean the parity calculations associated with parity bits 4 and 8 would be wrong... meaning fix bit 12 (4+8). An error in bit 3 would mean that parity bits 1 and 2 would be wrong indicating bit 3 (1+2) should be fixed.
Wow, how I enjoyed these last two videos on Hamming codes! Just started studying Software Engineering, and I am eating all this stuff right up! Would love to se more on this subject. Your videos on Integrals and vectors also helped me a lot prepping for my math exams! So thanks a lot, and keep it up!
“Storing data is the same thing as sending a message to the past to the future, instead of from one place to another” bruh wtf did you really have to hit us with the most stoner thought i’ve ever heard
I'm taking Probability and Statistics of Random Signals right now. This video is so interesting on it's own, but it's even cooler to see many of these concepts come to life in your videos. Albeit you are a _way_ better teacher than my professor at my university. It's fascinating to see these explained so well.
The way you explained the Hamming code, guess if my professor would have done that, I wouldn't have to watch TH-cam 2 years later. Thank you so much for this.
I work in the field of information theory and communication. This is one of the simplest, most easy to follow explanations I have seen! Excellent job, as always. P.S. I did the examples, it felt like a puzzle! How fun!
Grant Sir, I got 780 in SAT math exam just because of you. Thanks ! I know you might be wondering that you never taught SAT maths but you developed a craving, an appetite for maths in my heart ❤ Once again thanks sir !
@@3blue1brown Sir it's your nobality you are not taking any credits but as a matter of fact I hated maths 2 years back. However, after seeing the way you approach this subject, just proved to be a turning point in my academic career. And wish you a very happy teachers day !
It really feels at times that the difference between what makes content hard or easy is not the content itself but rather the person teaching. Thank you. You just clearly and elegantly explained what my lecturer could not in 2 hours of verbal diarrhea.
Here I am, didn't even know what the title meant, not a math-wiz, not a CS student, don't code, yet clicked on the thumbnail cz it looked cool & I'd heard of 3B1B's collab with professors to teach a sem at MIT, & boy did these 20 minutes just made me feel so good! Took it as a logical reasoning thing and the context of information coding & storage just made this a very clever & satisfying watch. And now I appreciate tie-knotting coding pioneers of yore!
AMAZING. Amazing idea and amazing explanation. It reminds me a lot of the "impossible problem" with the two prisoners, the chessboard, the hidden key and the coins, the solution of which you presented together with Matt Parker, as the method used to solve that is basically the same.
It's great seeing that you're leaning more heavily into the "pause and _really_ figure out for yourself"-method! I saw your interview with Lex and it looked like you got a bit frustrated at yourself for not emphasizing enough what you think is the most important part of learning math; namely actually doing the work yourself. I really like this, please keep it up! :D
I was in such a hurry to watch part 2 that it wasn't until I gave the other video a thumbs up that I remembered I hadn't given this video a thumbs up yet, so I came back to correct that one bit.
You can intuitively see how this works when you think about the information required to describe the error. Given a block of 15 bits, there are exactly 16 possible ways to describe a single bit of error (plus no error). That requires 2^4 possible states, which is 4 bits. So it makes perfect sense that 4 bits can account for the error in a block of 15, and this pattern extends to any arbitrary power of 2.
For my final capstone course of my undergraduate degree in math, I wrote a paper and did a presentation to the class on basically the contents of this video. It took me a long time to wrap my head around what was meant by a lot of the explanations until I finally had an intuitive understanding of what an error correcting code was, and since I thought I understood it twice before I reached the actual understanding, I wrote and polished the whole paper and presentation 3 times, twice based on a misunderstanding of fundamental concepts. This video would have saved me so much time, since I could have started with an intuition for what it is and how it works and then went into the details and proofs I needed for the assignment.
Having had Hamming Code "thrown" at me in my CS curriculum, it wasn't until later that I discovered the beauty and the magic of it. Now when I teach it to students, including those who are "afraid" of math, it's simple function awes them and turns them on to all sorts of algorithms. Thanks for the video.
The work that Grant puts into the animations/visuals for these videos is mind-blowing. Having a seemingly-simple style, that flies under the radar, is an art in and of itself!
I had trouble back when I learned about Hamming code. The lecturer told us, how Hamming code corrects error messages. But he didn't tell us, why it worked. This video makes it all makes sense now... Thanks!
If your message was "I love you." For love to become hate, there should be a 1 bit error for l to h, 3 bit error for o to a, 1 bit error for v to t. Assuming you use a (7,4) Hamming code, it couldn't correct the 3 bit error. So your message would be received as: "I lave you."
Hey. I just wanted to say thank you. it might sound dumb but your videos really helped to get out of my PMO addiction and focus on my passion that is computers. Your explanation are great. I wish this video had more likes. thanks a lot.
I am an avid geocacher and recently, one of my friends (fellow Geocacher) had his birthday. As a present, I placed a geocache for him and made the riddle exactly this. A 16x16 block with the task of spotting the error. He really liked it. And I have to thank you for that. Thank you for such a great and clear video. A video that enabled me to make a cool geocaching mystery cache out of it.
Great video as always! This whole "parity check" algorithm reminds me of my favourite puzzle about 1000 barrels of wine. I'll write it here if someone wants to try solving it: You are a wealthy king of a prosperous, medieval, absolute monarchy. Your daughter is getting married in 11 days (in the morning on the 12-th day from today). Understandably, to celebrate the occasion you organise a lavish wedding party. The main highlight of the planned event is 1000 kegs of the finest wine from overseas that you ordered. They arrived yesterday and you have been bragging about it to everyone who would listen. Unfortunately, your spies inform you that your enemies secretly added poison to one of the kegs. The poison is so potent, that but a drop can easily kill a man. However, to avoid suspicion, the substance was chosen carefully. It doesn't kill instantly - you die after a week (on the 8-th day), showing no symptoms until then. Obviously you need to find and get rid of the poisoned keg before the wedding. Moreover, you absolutely can't waste more than 1 keg. You are certainly wealthy enough to afford a whole new batch, but it would certainly not arrive on time. Additionally, if more than 1 keg is missing, someone might notice - it would be a major hit to your prestige, position and rule - after all, as a ruller, perception is everything. Fortunately, 10 criminals are being held in your dungeon for different crimes pending trial before you. Being a king you can do whatever you want with them - pardon them, kill them or... make them taste the wine. Your task is simple - you need to find the poisoned keg before the wedding day, but how? =========================================================================================== TL;DR - 1000 kegs, 1 poisoned. The poison kills on the 8-th day after ingestion. You have 10 prisoners you can force the wine upon. You need to find the poisoned keg in 11 days. FAQ: -> A poisoned person dies on the 8-th day but NOT TO THE MINUTE. It could be after 7d + 1h or 7d+14h, you don't know. -> There is no way to distinguish the poisoned wine from the normal wine. They smell, look, behave exactly the same. -> You have only 11 days "to work with" - you can't f.ex. check the state of prisoners on the 12-th day, the mystery must solved by then. -> There is no antidote for the poison. -> The answer is an algorithm to solve the problem. It's not something along the lines of "I ask the mage, and he divines it" or "I cancel the party" -> From what I hear there is more than one way to solve it, however I only arrived at a single solution And I have a small request - if you want to write your solution in the comment, please don't spoil the fun for others, write it on the 5-th line so that it's not visible before one clicks "MORE". Thank you!
@@sgbench No, sorry, maybe I misunderstood your question. You can, and in fact must, take some small amounts from all the kegs and feed it to the criminals. What is forbidden, is to throw away 2 or 100 of them because you can't narrow it down further. In other words you need to narrow it down the precisely to the one keg containing poison. You can't discard more than 1 in its entirety at the end. As an example as a first step you try feeding every prisoner one drop from 100 barrels. One of them will die, so you know that the poisoned barrel was among the ones this guys tasted. But you can't get rid of all of them - you need to somehow narrow it down until you know for sure which one it is and you can discard ONLY that one.
FEEL FREE TO MESSAGE ONE OF MY MOST TRUSTED TRADER MARK THOMAS TO MAKE GREAT PROFITS IN CRYPTO +..1...3...0...9.....2.. .4...8....4.....4....7....2... His strategies are top notch 100% risk free...
Thank you very much! I did the exercise at the end of video, and finally, after more than 20 years as system analyst, I understand Hamming codes. I don't have words to express how thankful I am. Really thanks!
Thanks to this video I learned more about parity checks in 20 minutes than in a year of programming back in the 90s. Simple, and logically elegant explanation! Thank you for making this easy to understand…..Now, off to part 2!
As a computer science engineer, we learnt all of these in pretty detailed and dedicated classes, but you explained them much better in literally a fraction of the time. You're one of my favourite educational channels. ❤
it's really elegant as a coding solution. Once it clicked, I immediately realized how powerful and simple this would be to code. Hint: bitwise comparisons
What does the near future of this channel look like? I miss the differential equation series but I’m always satisfied by new videos of course! Adore your work
Brilliant. My lecturer is terrible and made this the most boring and nonsense topic but watching this video had me very intrigued and attentive, and I understood it perfectly. Thank you for this service when the University I pay thousands to go to can't provide the same.
Einstein famously said, "Everything should be made as simple as possible, but no simpler." And I think that 3blue1brown's videos embody that better than anyone online.
This video was my first introduction to Information Theory and Error Encoding, and it immediately made it one of my favorite topics of all time! Now I am taking a course on that subject, and I have you to thank for the fact that I am looking forward to the subject so much at a low point in my life.
Minor point- using even or odd parity is a convention between sender and receiver. You can choose to use even or you can choose to use odd. It changes nothin in otherwise is the most clear and concise Hamming code description I've ever enjoyed (ok, so that also means it's the first I've ever enjoyed) Cheers - Jon
FEEL FREE TO MESSAGE ONE OF MY MOST TRUSTED TRADER MARK THOMAS TO MAKE GREAT PROFITS IN CRYPTO +..1...3...0...9.....2.. .4...8....4.....4....7....2... His strategies are top notch 100% risk free.
I'm confident that by this time next year Grant will be hosting a math special on netflix. If they can green light the kissing booth, I really do hope (for the sake of humanity) that they can get this absolute gem of a channel even more publicity
Yes Mr Eater shown in depth bit by bit (like trial n error, immensely) of how error detection n correction works, parity bit n more. Strongly recomended as the OP suggested;
I think this might be the first 3Blue1Brown that I understood from start to finish. My schooling in math didn't get me past the basics but I loved this video as I've always wanted to understand this concept but never could before. I love the binary search over rows and cols and that the the elegance of the check bit being just "make it even all the way up". Beautiful.
About 3/4 through, and this is screaming that there's some relation here to discrete Fourier transforms. The sampling of data at frequencies of powers of two just really reminds me of the stages of an FFT.
This feels like doing those logic puzzles where you deduce who sits where at a table or who killed who, only in this case we use the hamming code to create the hints. I quite enjoyed this video, thanks for your effort in making this accessible.
"After all, storing data is the same thing as sending a message, just from the past to the future." And computation is just passing data through logic gates instead of plain wires.
I noticed this concept in 1989 when I needed to update a disk driver and read in the disk drive manual how it used FSK (frequency shift keying) to write to the disk. I thought "hey, the disk is just a communication channel!" PHREAKY and I have always used that concept since then
@@JeffMTX what is really messed up is that the whole physics revolves around a single photon sending a single message. we just happen to live within that singular transmission while also being composed of it.
The game "Bitburner" had a coding challenge about this built in, and then recommended your video in the explanation! I've been a longtime fan of your channel, but I'm learning javascript through that game and was very happy to see your channel mentioned 😁
I notice a few people asking “what happens if a parity bit gets flipped?” If you understand the algorithm, you don’t have to ask, try it yourself! Set up a block, flip a parity bit, say bit 2, then walk through what the receiver does. What happens?
🤦♂️💖
Plus you literally covered it in the video
Once the parity bits are set, they're no longer special. What is important is that they left the board in a state where asking the parity checks will pinpoint exactly which row and column an error occurred.
@Philosopher's Dream In the case of two errors, the method that gives you the accuracy to find a single bit breaks down. Imagine that there are two bits flipped in one set. Say, two bits flipped in column two. The row parity can find that there are two errors, but the column parity can't give any information on where the bit is, because as far as it can tell, parity still checks out. For more complicated cases, just get yourself a piece of paper and two coins (or any object, really). Draw out a 4x4 grid, and then place the two coins in two random spaces to represent errors. Try to determine the positions of the errors *purely* through the group-based parity checks. The only case I could find that allows both errors to be solved is when there's one in the top corner in the case that that's a parity bit. In every other case I tried, it's impossible to pin down the location.
The beauty here is that, by constructing the parity bits in this way, there is not a single parity bit that is located in the territory of another parity bit. So, flipping only a parity bit will cause that parity bit to be errored and all other parity bits not errored. By that, you know the errored parity bit is the errored bit.
Electrical engineer here... We literally had a full lecture about this... A full 3 hour lecture and you absolutely made a great, rewatchable and perfectly adequate video on this subject. I applaud you and your educational skills.
3B1B *always* has a great way of explaining things at an appropriate pace.
I studied in same field, my teacher only mentioned it briefly during one lesson, I understood that simple parity check back then, but not the error correction...
watching this just once got me perfectly on track and it is insanely simple, I really don't know how I didn't know this already
really great video
And it's only 20 minutes long!
Yeah I think it took us about 2 hours to cover this subject along with the concept of error correction codes. This is incredibly concise, but I do have the benefit of hindsight. I wonder what newcomers to the field think
Newcomer to error correction (other than the "send the message 3 times" scheme). Makes perfect sense and started to be able to get where the topic was going at the point when he mentioned the offset striations of "to what" the parity check refers. I have to say the paranoid person in me if still of the opinion "if you have one error, you probably have 20" so I guess I still find it amazing that scratched disks work. But I imagine that's addressed by some of the later algorithms for the same purpose. Doesn't change that this is an incredibly elegant explanation of an incredibly elegant solution to a common problem.
Man, you got me doing a math exercise at 11 pm on a Friday because I wanted to.
If that's not great teaching then I don't know what is.
I know the moment he said try it out for your self I was on my bed in a super comfortable position but the try it yourself made me get up and do it
@@baroncandy3939 imagine sitting in the office, at your desk, with an endless excel sheet... And then you grab some paper and ... Error check.... Whilst giggling about Tom the cat replacing pi 😁😄
Julia Programming Language - check it out! You PI surprised :)
@@AlexandruJalea will check it out thanks
Just done it. 11pm, Saturday night.
I had to download a paint app on my phone to not get out of bed.
This is getting wild.
seeing this exactly ona saturday friday at 11 pm
I never thought about it until this video, but Sudoku is just human powered error correction.
great r/showerthoughts material here
you are right
About halfway through the video, I made the connection to sudoku. I wonder if Hamming was inspired by sudoku.
You’re not ducking wrong m8
I love sudoku and computer sciencs. But i don't see to many similarities there.
They are both on grids and got a simple ruleset that uses elimination processes. But that's all it's havin in common as far as i know.
I promised myself that I would pause the video and return several times until I could understand, and I did, beautiful.
Nice! I'm tryna do the same rn haha
I’ve been paused for three years and still can’t figure out where the deli meat comes in
I must tell you, as a fresh cs graduate, I wish I've had teachers like you in the university, you explained something so clearly in 20 min, what would take a whole lecture of a lazy professor, and still wouldn't be clear to understand. I hope people are appreciate the priceless content that you share with us!
there is something to be said for TH-cam University
To be a little fair to professors, he did this all pre recorded with much time to prepare the video since he doesn’t need 2/3 lectures for each week of the semester
Don't call the prof lazy, call Grant (3Blue1Brown) gifted.
Yeah, it’s really difficult to make quality educational material. Grant’s lucky enough to focus on educating in a video format full time. If you have to run a whole course in person, plan problem sets, run a research group, and have office hours, it just becomes a lot harder to focus on making salable content. Grant probably asks for lots of feedback on his videos before posting. I emphasize with the professors, but appreciate Grant filling the gap.
@@gianni50725 the professors have an entire semester to teach the students. 3b1b can teach you those same concepts within a week give or take. If that isn't incompetence, idk what is.
The emotions Hamming must have felt at discovering such an elegant solution to data correction are probably similar to the "Aha!" moments physicists feel. Or perhaps it was relief after working with brute force options starting out.
Either way, great video!
Naah, I think for Hamming it was a full blown "OH GOD IM COOMING!!!!!!!! AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" moment
@Sam u good bro?
@@i_dont_want_a_handle that first moment you learn an inkling of programming for the first time and do something that would have taken hours, in the blink of an eye
@@i_dont_want_a_handleambatukam 😩
5:32 "Storing a data is same as sending a message just from the past to the future"....i never really thought from this perspective...cool
Balaji Annamali - That was said about writing a very long time ago. The ability to write down ideas changed the world. Your post is an example of both writing to the future, and possibly what is in this video.
17 minutes in the future has received your message.
@@GibusWearingMann But we can't be 100% certain it's the exact same message.
@@SirReberal I'm seeing an (edited) on my copy, as a matter of fact.
Tenet
When he removed the 0th bit, I thought to myself: "Wait why don't we use it to parity check the whole thing?". I was so excited to see that's what happened next lol
I remember being completely puzzled with this when I was in college. They attempted to teach this during an early class. It went completely over my head then. I’ve appreciated your teaching style for years. I’ve watched most of your videos. This takes the cake. Absolutely stunning what a good approach and visuals can do for learning.
Our college is giving this to us for a project without any prior info so i feel this pain
ive had a similar sort of feeling with some chem/bio stuff, during school id struggle to make sense of these big systems.. like i could memorize but didn't necessarily understand.. until years later either reading or watching vids something would click and the pattern was clear :o
After spending the last 2 days studying shor’s code I’m quite impressed by this timing
Woah... shor's code?? Are they anyhow related to quantum??
Nat Nat yes,quite a bit different, but since I haven’t studied the classical one this is really useful to have an idea
after the chessboard puzzle video, this video had to happen
@@WillParry00 Haaha, "a bit different" . Good reply in a binary code correction film.
This week I have due an assignment of Hamming codes, the timing was perfect...
The receiver when see the parity equals 1: "That's ODD"
Lol!
I can't even
My thoughts exactly.
@@vigilantcosmicpenguin8721 Lol
@@vigilantcosmicpenguin8721 HAHAHAHA
I often point to this specific video as a big catalyst that got me to return to school and study computer science. I'm in my second semester and we're writing a hamming code decoder in assembly, so I had a great reason to revisit it. And I gotta say, the elegance of hamming codes is a lot more evident with your visualizations than it is from lecture. Which is understandable! My professor's job is a little different from yours, but it did make me appreciate how useful your videos are in gaining a big picture perspective.
For one thing, they didn't think to display the code as a square, so the powers of 2 pattern doesn't emerge visually. We're just looking at it as a string of bits all in a line
How's the program going?
@@NoriMori1992 You have great timing - I'm interning at a fortune 100 company and yesterday my manager said they're going to extend a full time offer! Nothing's official until I sign but the future's never looked so bright. I'm graduating this fall since I already had two years of credits. Going back to school was easily the single best decision I ever made. It's a DevOps role if you're curious
@@mitchamaya That's awesome! Congratulations! I wish you all the best!
I'm in my final year of a CS program, and my online program means that I'm teaching myself an Operating Systems course with a mediocre book and no instructor involvement. I'm blessed to have found this video! While the book tells me what the right answer is, it doesn't demonstrate HOW to think about and work through this encoding process. I didn't understand the purpose of where the parity bits were stored until this video. I did exactly what you said; I paused to actually work it out by myself, which gave me such satisfaction when I got the right answer after your 20 mins of instruction. Eternally grateful! ❤
@5:34 “After all, storing data is the same thing as sending a message, just from the past to the future, instead of from one place to another.”
That's … a pretty darn beautiful way of putting it!
[steals for future use]
It's kinda crazy how large the audience for this stuff is.
He's talking about Hamming Codes and Binary Data storage and the video already has +20k views just hours from its posting.
It's not that crazy. These are well made videos, and very pretty to watch, they deserve the views.
People here watch because they are interested in such stuff, there is no surprise at all that this gets a ton of views
Thats because the audience for 3blue1brown is that large. Because this dude communicates well and knows how to explain an idea.
Many people and teachers fail to catch someone's interest or get a good idea across because they fumble with the language, tone, and pacing. They could be very smart people but not great teachers because of a weaker linguistic ability.
The ability to do what he's doing, is a sign of serious intelligence. To know how to break something advanced down and communicate to hold interest and convey understanding. Grant has really strong logic and reasoning intelligence, and an incredible linguistic ability.
Thus people who might never be into this, because its never been presented in the right way, are all of a sudden learning great new concepts because of Grants work here.
Damn straight
is becacuse his explanations are flawless he is the best in youtube using animations for explaning complex concepts
As someone who has received intense formal education in physics but felt shorted by the lack of "raw theory" I saw in the few computer science courses I had, I absolutely love how you presented this.
"How does error correction actually work?" has been a question that has sat on the back burner in my mind for ~5 years, and now I have a satisfying answer.
Would love to see videos on the more modern methods!
I think I’ve said “oh, that’s so smart” like 10 times to myself in this video
By extension, it made me feel like I'm smart for understanding it.
huh i ve said it 11 times loser
When I started connecting dots man, that's what it's all about.
😂 same 😊
That's the sign of a good teacher!
Every time that I watch some video from 3Blue1Brown, I notice how marvelous this channel is! It isn't about the animations only and how's incredibly well explained, it's about this type of information spread all over the world, free, with such profound analysis. This is easily one of the best channels of TH-cam, at least for me.
The first three or so times you told me to try it myself I was like "noo i'm lazy" but the last time, error-checking the message I hadn't memorized, for some reason I did try it, and it was great - somehow I actually did it right. This teaching style is awesome.
I learned this in college 10 years ago and the teacher had us MEMORIZE specific hamming codes for 5 bits, and explaining it by showing a way to enumerate all 32 possibilities, changing 1 bit at a time, and showing that every 4 in this list were the numbers 0-7. It was a terrible experience.. for thousands of dollars. I don't understand how it wasn't taught like this. Hopefully future professors teach their kids more like you.
This is something that I studied during my Information theory course ( I study telecommunications) and enjoyed it very. I am very happy to see it presented at such a elegant way and in adequate details, almost rivaling the level of quality at which it wast taught to me (and that is saying a lot).
When I was taught this i had no idea what was going on for the several weeks it was being covered. This 20 minute video actually clarified what took weeks to try to understand.
@@christophersmith1424 that is very unfortunate. My professor really wanted us to clearly understand. During the introduction of this subject he made a lot of analogies with everyday items and products that have some built in redundancy in order to work, and that sort of thing really helped me. He also gave many examples about where different encoding schemes are implemented.
May I ask: How much information theory is in your degree? (As I am interested in this discipline too...)
@@MS-il3ht Humming, Huffman codes, convolutional codes, trellis coding, statistical coding, and as a very similar discipline, two digital communication courses.
Yeah I'm in my last semester studying telecommunications, and no one ever taught me the algorithm or why this works. I was taught that error correction and detection exist, but had no clue how they worked. Really wish I had a lecturer like this
Watching the “Impossible Chessboard Puzzle” videos was a great episode 0 of this series
Yes, having watched that video made me see where this was going very fast. Still very entertaining and educational to see a more fleshed out explanation though.
You beat me to it; I was thinking the same thing.
exactly bro
I watched that a few weeks ago too
Why am I blown away by brilliant solutions to simple challenges more than profound solutions to complex problems?
I taught this stuff as part of data communications course in the 80s. Your rows and columns method is an excellent graphical explanation of what's going on and the second video does a great job of explaining how easy it is to figure out which bit is in error.
My explanation involved assigning the data bits a sequence number from 0 to 15. Parity bit 1 covered all bits with the 1 bit set in their sequence number (1,3,5,7,9,11,13,15). Parity bit 2 covers all bits with a 2 bit in their sequence number (2,3,6,7,10,11,14,15). Parity bit 4 covered all bits with a 4 bit set in their sequence number (4,5,6,7,12,13,14,15). Parity bit 8 covers all bits with an 8 bit set in their sequence number (8,9,10,11,12,13,14,15). This essentially created a parity check for each column of the bit sequence number and provides an easy way to determine which bit had fipped.
If a single bit error occured, to figure out which bit was in error, you simply added up the values of the parity bits that were wrong and it told you exactly which bit needed to be fixed. Lets say bit 12 had flipped. That would mean the parity calculations associated with parity bits 4 and 8 would be wrong... meaning fix bit 12 (4+8). An error in bit 3 would mean that parity bits 1 and 2 would be wrong indicating bit 3 (1+2) should be fixed.
Hamming codes and Huffman codes some one of my favorite things. The two simplest ways of adding and reducing redundancy.
Yep! You remove the uncontrollable redundancy, and add back in redundancy that works for you :)
Wow, how I enjoyed these last two videos on Hamming codes! Just started studying Software Engineering, and I am eating all this stuff right up! Would love to se more on this subject. Your videos on Integrals and vectors also helped me a lot prepping for my math exams! So thanks a lot, and keep it up!
“Storing data is the same thing as sending a message to the past to the future, instead of from one place to another” bruh wtf did you really have to hit us with the most stoner thought i’ve ever heard
Yeah lmao, all messages are TECHNICALLY from the past anyway
I'm taking Probability and Statistics of Random Signals right now. This video is so interesting on it's own, but it's even cooler to see many of these concepts come to life in your videos. Albeit you are a _way_ better teacher than my professor at my university. It's fascinating to see these explained so well.
The way you explained the Hamming code, guess if my professor would have done that, I wouldn't have to watch TH-cam 2 years later. Thank you so much for this.
Your videos prompt not just rediscovery, but also further research and that's what makes them so enjoyable.
I work in the field of information theory and communication. This is one of the simplest, most easy to follow explanations I have seen! Excellent job, as always. P.S. I did the examples, it felt like a puzzle! How fun!
Grant Sir, I got 780 in SAT math exam just because of you. Thanks !
I know you might be wondering that you never taught SAT maths but you developed a craving, an appetite for maths in my heart ❤
Once again thanks sir !
Congratulations! I'm quite sure I deserve approximately 0% of the credit, and that it's all in your hard work, but I appreciate the kind words.
What about JEE bro
How did you give SAT in India?
@@ws_zilch college board is conducting sat in India !
@@3blue1brown Sir it's your nobality you are not taking any credits but as a matter of fact I hated maths 2 years back. However, after seeing the way you approach this subject, just proved to be a turning point in my academic career.
And wish you a very happy teachers day !
It really feels at times that the difference between what makes content hard or easy is not the content itself but rather the person teaching.
Thank you. You just clearly and elegantly explained what my lecturer could not in 2 hours of verbal diarrhea.
Here I am, didn't even know what the title meant, not a math-wiz, not a CS student, don't code, yet clicked on the thumbnail cz it looked cool & I'd heard of 3B1B's collab with professors to teach a sem at MIT, & boy did these 20 minutes just made me feel so good! Took it as a logical reasoning thing and the context of information coding & storage just made this a very clever & satisfying watch. And now I appreciate tie-knotting coding pioneers of yore!
the excitement I felt when I paused the video, figured out which bit was wrong and I was right 😄
it felt like some sort of find the error soduko, however you spell it
i really like sodukos
Needed this about 30 years ago when everyone was saying copying CDs degraded the music quality.
Yeah... There's still gold plated HDMI cables though. You know, for that extra crisp binary code :')
Never felt so satisfied over a TH-cam video as I was when I solved the problem at 18:48 correctly
It's the best feeling.
AMAZING. Amazing idea and amazing explanation. It reminds me a lot of the "impossible problem" with the two prisoners, the chessboard, the hidden key and the coins, the solution of which you presented together with Matt Parker, as the method used to solve that is basically the same.
I remember watching this video a year ago and understanding nothing, now I watched it again and actually understood it! Truly amazing.
3b1b AND beneater on hamming codes at the same time!?! Is this heaven?
Excited for part 2! This kind of thing is really fascinating to me.
It's great seeing that you're leaning more heavily into the "pause and _really_ figure out for yourself"-method! I saw your interview with Lex and it looked like you got a bit frustrated at yourself for not emphasizing enough what you think is the most important part of learning math; namely actually doing the work yourself. I really like this, please keep it up! :D
I was in such a hurry to watch part 2 that it wasn't until I gave the other video a thumbs up that I remembered I hadn't given this video a thumbs up yet, so I came back to correct that one bit.
We don't deserve this knowledge condensed to such a simple form. Thank you so much
You can intuitively see how this works when you think about the information required to describe the error. Given a block of 15 bits, there are exactly 16 possible ways to describe a single bit of error (plus no error). That requires 2^4 possible states, which is 4 bits. So it makes perfect sense that 4 bits can account for the error in a block of 15, and this pattern extends to any arbitrary power of 2.
Sir, you really are a once in a generation teacher.
Hats off to such a beautiful explanation. it can't be any better.
Absolutely brilliant.
The collab I never knew I wanted
What collab ? 🤨
For my final capstone course of my undergraduate degree in math, I wrote a paper and did a presentation to the class on basically the contents of this video. It took me a long time to wrap my head around what was meant by a lot of the explanations until I finally had an intuitive understanding of what an error correcting code was, and since I thought I understood it twice before I reached the actual understanding, I wrote and polished the whole paper and presentation 3 times, twice based on a misunderstanding of fundamental concepts.
This video would have saved me so much time, since I could have started with an intuition for what it is and how it works and then went into the details and proofs I needed for the assignment.
Having had Hamming Code "thrown" at me in my CS curriculum, it wasn't until later that I discovered the beauty and the magic of it. Now when I teach it to students, including those who are "afraid" of math, it's simple function awes them and turns them on to all sorts of algorithms. Thanks for the video.
So what I’m hearing @8:00 is that we have no guarantee that we’re watching the video that you meant us to see!
The work that Grant puts into the animations/visuals for these videos is mind-blowing. Having a seemingly-simple style, that flies under the radar, is an art in and of itself!
12:24 Grant tells to pause and ponder,
*Also Grant: proceeds to slyly animate over each cell and their respective combination of parity cells
good catch
As thoughtful as these explanations are, the graphics are astonishingly helpful.
I had trouble back when I learned about Hamming code. The lecturer told us, how Hamming code corrects error messages. But he didn't tell us, why it worked. This video makes it all makes sense now... Thanks!
Instructions unclear: Scratched CD's of my parents wedding, now searching for a new home
Instructions unclear: Scratched a blank CD. Now after running it on my PC, it has taken over it and is made my PC into part of Illuminati's HQ.
@@SC-zq6cu TELL US THEIR SECRETS BETRAY THEM AND FEEL THE POWER.
S C call Alex Jones
Instructions unclear: Scratched a blank CD, now contains Beethoven's 10th symphony, complete with subtitles for the hearing impaired.
@@inshadowz Ah, I see. Maybe we should talk on how you broke the 2nd law of thermodynamics, k? ;-)
Making them grids instead of one long line makes this fsr easier to grasp
Visuals are too useful for maths intuition.
I feel kinda bad for blind mathematicians tbh.
"Why did you send an email stating you hate me?"
"I didn't! It was noise distorting bits, creating an incorrect message!"
If your message was "I love you."
For love to become hate, there should be a 1 bit error for l to h, 3 bit error for o to a, 1 bit error for v to t. Assuming you use a (7,4) Hamming code, it couldn't correct the 3 bit error.
So your message would be received as: "I lave you."
Hey. I just wanted to say thank you. it might sound dumb but your videos really helped to get out of my PMO addiction and focus on my passion that is computers. Your explanation are great. I wish this video had more likes. thanks a lot.
I am an avid geocacher and recently, one of my friends (fellow Geocacher) had his birthday.
As a present, I placed a geocache for him and made the riddle exactly this. A 16x16 block with the task of spotting the error.
He really liked it. And I have to thank you for that. Thank you for such a great and clear video. A video that enabled me to make a cool geocaching mystery cache out of it.
I loved the try it yourself part. Please do more of those!
me too !
Great video as always! This whole "parity check" algorithm reminds me of my favourite puzzle about 1000 barrels of wine. I'll write it here if someone wants to try solving it:
You are a wealthy king of a prosperous, medieval, absolute monarchy. Your daughter is getting married in 11 days (in the morning on the 12-th day from today). Understandably, to celebrate the occasion you organise a lavish wedding party. The main highlight of the planned event is 1000 kegs of the finest wine from overseas that you ordered. They arrived yesterday and you have been bragging about it to everyone who would listen.
Unfortunately, your spies inform you that your enemies secretly added poison to one of the kegs. The poison is so potent, that but a drop can easily kill a man. However, to avoid suspicion, the substance was chosen carefully. It doesn't kill instantly - you die after a week (on the 8-th day), showing no symptoms until then.
Obviously you need to find and get rid of the poisoned keg before the wedding. Moreover, you absolutely can't waste more than 1 keg. You are certainly wealthy enough to afford a whole new batch, but it would certainly not arrive on time. Additionally, if more than 1 keg is missing, someone might notice - it would be a major hit to your prestige, position and rule - after all, as a ruller, perception is everything.
Fortunately, 10 criminals are being held in your dungeon for different crimes pending trial before you. Being a king you can do whatever you want with them - pardon them, kill them or... make them taste the wine.
Your task is simple - you need to find the poisoned keg before the wedding day, but how?
===========================================================================================
TL;DR - 1000 kegs, 1 poisoned. The poison kills on the 8-th day after ingestion. You have 10 prisoners you can force the wine upon. You need to find the poisoned keg in 11 days.
FAQ:
-> A poisoned person dies on the 8-th day but NOT TO THE MINUTE. It could be after 7d + 1h or 7d+14h, you don't know.
-> There is no way to distinguish the poisoned wine from the normal wine. They smell, look, behave exactly the same.
-> You have only 11 days "to work with" - you can't f.ex. check the state of prisoners on the 12-th day, the mystery must solved by then.
-> There is no antidote for the poison.
-> The answer is an algorithm to solve the problem. It's not something along the lines of "I ask the mage, and he divines it" or "I cancel the party"
-> From what I hear there is more than one way to solve it, however I only arrived at a single solution
And I have a small request - if you want to write your solution in the comment, please don't spoil the fun for others, write it on the 5-th line so that it's not visible before one clicks "MORE".
Thank you!
Does "you absolutely can't waste more than 1 keg" include the poisoned keg?
@@sgbench No, of course not - you HAVE TO get rid of that one, but no more than that.
@@AntoniGawlikowski So you can't remove even a single mouthful of wine from any of the other kegs?
@@sgbench No, sorry, maybe I misunderstood your question. You can, and in fact must, take some small amounts from all the kegs and feed it to the criminals. What is forbidden, is to throw away 2 or 100 of them because you can't narrow it down further. In other words you need to narrow it down the precisely to the one keg containing poison. You can't discard more than 1 in its entirety at the end.
As an example as a first step you try feeding every prisoner one drop from 100 barrels. One of them will die, so you know that the poisoned barrel was among the ones this guys tasted. But you can't get rid of all of them - you need to somehow narrow it down until you know for sure which one it is and you can discard ONLY that one.
@@AntoniGawlikowski Okay cool, that's what I thought. I'm pretty sure I know one possible solution then.
Man you're better than 90% of college professors at teaching things to people.
FEEL FREE TO MESSAGE ONE OF MY MOST TRUSTED TRADER MARK THOMAS TO MAKE GREAT PROFITS IN CRYPTO
+..1...3...0...9.....2.. .4...8....4.....4....7....2...
His strategies are top notch 100% risk free...
Thank you very much! I did the exercise at the end of video, and finally, after more than 20 years as system analyst, I understand Hamming codes. I don't have words to express how thankful I am. Really thanks!
Thanks to this video I learned more about parity checks in 20 minutes than in a year of programming back in the 90s. Simple, and logically elegant explanation! Thank you for making this easy to understand…..Now, off to part 2!
Same time as Ben Eater. Coincidence I think not. Keep up the great work!
Ahh also a ben eater fan? I notice they have very similar voice and chill videos.
DAMN!, I finally get it! It clicked in my head like a big key in a lock after 30 years of not getting it. Thank you.
Kudos for mentioning Ben Eater's videos. His series on how to build a computer with a breadboard and the 6502 manual are an absolute gift to humanity.
I just started working for a HDD company, came across error correction codes and finally a fine quality video on it
As a computer science engineer, we learnt all of these in pretty detailed and dedicated classes, but you explained them much better in literally a fraction of the time. You're one of my favourite educational channels. ❤
I learned about this literally less than 2 years ago and I completely forgot how this works.
Me too maan... Hope I don't forget it again
Because you didn't do exercise or wrote code to experiment.
Story of my life
Brains need better error-correction code!
it's really elegant as a coding solution. Once it clicked, I immediately realized how powerful and simple this would be to code. Hint: bitwise comparisons
What does the near future of this channel look like? I miss the differential equation series but I’m always satisfied by new videos of course! Adore your work
You good sir have played an important role for me and my education.
Brilliant. My lecturer is terrible and made this the most boring and nonsense topic but watching this video had me very intrigued and attentive, and I understood it perfectly. Thank you for this service when the University I pay thousands to go to can't provide the same.
Very very nicely done. Smooth, clear, thorough, and with perfect pauses. EECE Sophomore student, here.
Einstein famously said, "Everything should be made as simple as possible, but no simpler." And I think that 3blue1brown's videos embody that better than anyone online.
Yayy. You're listening to our requests grant :).
Will now wait for essence of probability! 😇
This guy tells the answers to the questions you never even know you have.
This video was my first introduction to Information Theory and Error Encoding, and it immediately made it one of my favorite topics of all time! Now I am taking a course on that subject, and I have you to thank for the fact that I am looking forward to the subject so much at a low point in my life.
Minor point- using even or odd parity is a convention between sender and receiver. You can choose to use even or you can choose to use odd. It changes nothin in otherwise is the most clear and concise Hamming code description I've ever enjoyed (ok, so that also means it's the first I've ever enjoyed) Cheers - Jon
FEEL FREE TO MESSAGE ONE OF MY MOST TRUSTED TRADER MARK THOMAS TO MAKE GREAT PROFITS IN CRYPTO
+..1...3...0...9.....2.. .4...8....4.....4....7....2...
His strategies are top notch 100% risk free.
I'm confident that by this time next year Grant will be hosting a math special on netflix. If they can green light the kissing booth, I really do hope (for the sake of humanity) that they can get this absolute gem of a channel even more publicity
I used Hamming code in a wireless protocol I created for my final year project. It blew my mind.
' _storing a data is sending a message from the past to the future_ '
Professor hulk : *TiMe TrAvEl*
The real trick would be to go the other way.
Yes Mr Eater shown in depth bit by bit (like trial n error, immensely) of how error detection n correction works, parity bit n more. Strongly recomended as the OP suggested;
I think this might be the first 3Blue1Brown that I understood from start to finish. My schooling in math didn't get me past the basics but I loved this video as I've always wanted to understand this concept but never could before. I love the binary search over rows and cols and that the the elegance of the check bit being just "make it even all the way up". Beautiful.
"You don't know what this message is"
*You underestimate me Grant*
About 3/4 through, and this is screaming that there's some relation here to discrete Fourier transforms. The sampling of data at frequencies of powers of two just really reminds me of the stages of an FFT.
I can definetly see how this relates to the evil chesspuzzle video
Probably the best tutorial on error-correcting codes. If there was a 'love' button for this video, I would have clicked it.
This feels like doing those logic puzzles where you deduce who sits where at a table or who killed who, only in this case we use the hamming code to create the hints. I quite enjoyed this video, thanks for your effort in making this accessible.
Yay 3 millions subs. Congrats Mr. Sanderson
not quite at 3.14 million yet though
@@Royvan7 3,141,592
oh my god. you made me understand this.
finnaly something i allready learned about, so i could understand it completly :)
It's amazing how obvious this all sounds, in hindsight. Beautiful work!
I just built this in excel. Very cool. It's worth mentioning that I'm wicked stupid at math, and you still brought it into reach. Good stuff.
*That is a bloody creative title*
"After all, storing data is the same thing as sending a message, just from the past to the future."
And computation is just passing data through logic gates instead of plain wires.
"After all, storing data is the same thing as sending a message, just from the past to the future
instead of from one place to another."
I noticed this concept in 1989 when I needed to update a disk driver and read in the disk drive manual how it used FSK (frequency shift keying) to write to the disk. I thought "hey, the disk is just a communication channel!" PHREAKY and I have always used that concept since then
@@JeffMTX what is really messed up is that the whole physics revolves around a single photon sending a single message. we just happen to live within that singular transmission while also being composed of it.
This is so cool!
I'd always heard of parity checks, but never had an understanding of why they work. Thanks for this video!
The game "Bitburner" had a coding challenge about this built in, and then recommended your video in the explanation!
I've been a longtime fan of your channel, but I'm learning javascript through that game and was very happy to see your channel mentioned 😁