How Binary Works, and the Power of Abstraction

Поділитися
Вставка
  • Опубліковано 4 тра 2024
  • In which we learn how and why computers store everything using only zeros and ones.
    Some audio from freesound.org:
    Sound #67802 by SunnySideSound
    Sound #178657 by jorickhoofd
    Sound #162731 by synthetic-oz
    00:00 Intro
    00:45 Bits
    02:22 Numbers
    05:33 Abstraction
    06:24 Text
    06:45 Colors
    07:36 Limits Of Computer Color
    08:12 Pictures
    08:33 Videos
    09:51 Telling The Difference
    10:44 Instructions With Assumptions
    12:13 Some Other Kinds Of Data
    12:45 Why Do It This Way?
    14:26 Review

КОМЕНТАРІ • 668

  • @mikip3242
    @mikip3242 Рік тому +796

    When you understand this, you start to understand why computers can be made out of hydraulic pipes, domino chains, interconected brain cells, marbles rolling on slides or wooden gears. The idea of the bit is independent of the physical substrate which encodes it. You don't need to have electric circuits to build a computer (but electrcity is fast, reliable and highly controlable).

    • @ToddsDiscGolf
      @ToddsDiscGolf Рік тому +85

      Reminds me of people building computers within minecraft

    • @vfryhn2
      @vfryhn2 Рік тому +59

      @@ToddsDiscGolf exactly you also understand why you can simulate a computer inside a computer

    • @null7936
      @null7936 Рік тому +14

      Clock out of basic tools is essential to make funny computer and robots

    • @andreman2767
      @andreman2767 Рік тому +3

      ..or about what Information is

    • @codatheseus5060
      @codatheseus5060 Рік тому +10

      ​@@ToddsDiscGolfor in Conway's Game of Life

  • @skateerdud
    @skateerdud Рік тому +1003

    This is one of the highest production quality videos I have ever seen on youtube and it answers so many questions I have had for so long, I just wish this video came out like 7 years ago haha

  • @matthewzaczeniuk4892
    @matthewzaczeniuk4892 Місяць тому +40

    I can't believe that we live in a time where this content is free to watch. You sir are amazing.

  • @felipedidio4698
    @felipedidio4698 Рік тому +354

    The "kicking 3 out" explanation is insanely good!
    I've had to explain binary numbers to people in the past and I wasn't able to explain exactly why we use powers of 2 without sounding "mathematical".

    • @abirhossain183
      @abirhossain183 Рік тому +16

      I agree. His ways of explaining the important bits without throwing any information out is fabulous

    • @OvalLibrary
      @OvalLibrary Рік тому +5

      He explained how binary, or any base number works, i've tried telling my friends to think about our base 10 number system then slowly getting it down to base 2 but noone understands at all

    • @CraftyF0X
      @CraftyF0X Рік тому +2

      @@OvalLibrary Tell them that binary is the simplest possible number system as it contains only 2 different numbers 1 and 0, and this is very beneficial because it can be represented by just two state, which makes things very long (as the video explained) but thats fine for a computer because it also makes the transistors very simple (either around 0 or 5 volt) from transistors you can build numbers (in this binary representation and later with floating point representation) and can also build boolean logic which then can operate on said numbers.

    • @OvalLibrary
      @OvalLibrary Рік тому

      @@CraftyF0X No they know that, they just dont know how counting numbers using them work, they think theres some sort of rule or seperate way on how to count using binary, when in reality its just like every other base number system

    • @CraftyF0X
      @CraftyF0X Рік тому

      @@OvalLibrary It's simple, prove them that by demonstrating a few operation on binaries.

  • @NickWrightDataYT
    @NickWrightDataYT Рік тому +140

    The reason why this video is SO GOOD is because it starts out at a level that just about anyone can understand, and quickly builds on top of it with logical steps, each of which anyone can understand, and suddenly you understand video encoding 101.
    If you understand the logic of something, "getting" the practicality of it is a non-issue because it only requires memorizing things. Which itself is easier because you get WHY you're memorizing each thing.

    • @nevelis
      @nevelis Рік тому +21

      In other words… it builds upon layers of abstraction :)

    • @NickWrightDataYT
      @NickWrightDataYT Рік тому +5

      @@nevelis yes! But you can definitely do that while losing the entire audience's understanding haha

  • @cineblazer
    @cineblazer Рік тому +112

    If you started a Patreon, I'd join in a heartbeat. Don't even care if there's exclusive content or not, it would just make me happy to be able to help fund your continued educational-video-making. You are exceptionally good at this.

    • @BlakeHopke
      @BlakeHopke Рік тому +2

      Or you could just donate if he gives that option

  • @danielbarton7151
    @danielbarton7151 Рік тому +37

    I have a decade of experience as a software engineer. I have to say this is an exceptional explanation! So many videos about this topic assume the viewer knows more than they do. You could show this to a total novice and they would come out with a very strong beginners understanding of how computers work at a pretty deep level. Excellent, excellent work! Please keep making more “explainers” like this! You have a gift!

  • @ray7175
    @ray7175 Рік тому +139

    I can definitely see this video being used for high school CS classes. You have the great ability to break down a complex topic for non-CS people into very understandable chunks plus the video itself is pleasing to look at/listen to. Your quantum computing and raytracing videos are still my favorite though! Seriously, keep up the great work! Its rare to find someone who puts as much effort in the visuals and the explanations as you do. I strive to be as knowledgeable as you are in computer science.

  • @globglob3d
    @globglob3d Рік тому +19

    Imagine a 20k subs channel explaining this topic better than any other... Bravo

    • @garethm54
      @garethm54 Рік тому +1

      Thanks to Josh, we don't have to imagine anymore :)

    • @Leuel48Fan
      @Leuel48Fan Рік тому +1

      @@mansart26 well given enough time, it will though, and rightfully so. He will deserve his popularity as more viewers discover the content, because it's good.

  • @thomasrgparker
    @thomasrgparker Рік тому +25

    Some very good taste on the fake ending

    • @Vercte
      @Vercte 29 днів тому +2

      it actually got me 😭

  • @ExistentialDodo
    @ExistentialDodo Рік тому +4

    Great video. Really caught me off gaurd with that "1024, since I last uploaded" joke🤣
    Good stuff

  • @SoDamnMetal
    @SoDamnMetal Рік тому +37

    This is the kind of explanation I needed when I first started learning computer science

    • @quaffie
      @quaffie 11 місяців тому +1

      and even more for computer engineering

  • @ryderklein6206
    @ryderklein6206 Рік тому +8

    wake up babe new Josh's Channel video just dropped

  • @codewithlenny
    @codewithlenny Рік тому +10

    The bit about using file extensions to tell the difference between what the bits represent was mind-blowing! I've learned a ton from this video but that segment was phenomenal.

  • @NidonocuPoisonBunny
    @NidonocuPoisonBunny Рік тому +15

    The joke regarding the use of 1024-bit numbers made me snicker significantly aloud. XD
    Great animation and a clear and accurate explaination!

  • @filipniklas
    @filipniklas Рік тому +13

    I was shocked to see the view count of this video only in the mere thousands. The quality and production made me automatically assume this was in the hundreds of thousands. Dude, keep working at it, and the algorithm won't be able to ignore you forever. People deserve to see you work!

  • @McWickyyyy
    @McWickyyyy Рік тому +8

    I’m a software engineer. About mid level. I rarely have to deal with this type of stuff cuz of course it’s all abstracted away by the time it gets to the high level programming languages…but man I love watching your videos. It brings me back to my college days when we briefly had to learn about this stuff. There’s something truly magical about binary and hexadecimal representation of data. Thanks for all your hard work. Your videos always have great explanations as well as great animations to back them up. I hope you keep at this and keep enjoying the process of making these videos.

  • @jackied.v.carson6059
    @jackied.v.carson6059 Рік тому +7

    As a compression researcher, this has to be the most outstanding explanation of what data IS and the gist of what compression is I have ever seen. Definitely going to use some of your explanations in my future non-technical presentations!

  • @yhwhlungs
    @yhwhlungs Рік тому +3

    Bros showing computer science basics in such a simple manner it's soothing

  • @Simchen
    @Simchen Рік тому +28

    What a coincidence. Throwing files in a Hex Editor and finding out about how files are structured. Even creating my own bitmap by writing bytes in a file is what I did the last weeks. And now here is an amazing video that just summarizes all of my findings and more. What a brilliant video and charming visualization. I wonder which combination of 1's and 0's told UA-cam that I was interested in that topic but knowing that Google and UA-cam are part of the same company oh well... . Thank you for this masterpiece.

    • @Roxor128
      @Roxor128 8 місяців тому +1

      Ah, this is familiar territory!
      When I was in high school, I loaded up the configuration file for Epic Pinball in X-Tree Gold's built-in hex editor and figured out which values to change to zeroes to get infinite balls on all tables. I learned how to write HTML by loading up saved web pages from the 1994 web in text editors and writing my own with similar structures.
      A few days ago, I wrote a simple C program to generate a palette and figured out the structure of the palette format by loading it up in a text editor. Did hit a little snag when directing the program's printf() outputs to a file, though. The Jasc palette format originated on Windows, so Paint Shop Pro 7 expects CR/LF newlines. Linux just uses LF newlines. Fixed that by loading up in a text editor that supported converting newlines and saving it. Not really the right way to do it, but it worked.

  • @woblot725
    @woblot725 Рік тому +22

    Ah yes, my favorite computer science topic, ABSTRACTIOIN.

    • @CrescentX3
      @CrescentX3 25 днів тому

      Took me so long to pause on that lol

  • @ifraanco
    @ifraanco Рік тому +3

    I had seen these topics explained separately, but I had never seen them explained all together. Now it makes much more sense.
    great video! :D

  • @pog5
    @pog5 Рік тому

    This is probably the simplest yet best way I've seen someone explain binary. Good job!

  • @Gaijin101
    @Gaijin101 Рік тому

    From the bit flips, to the fact that blue light seem dimmer.. You nailed all the small details as well. Amazing.

  • @cazosky5528
    @cazosky5528 Рік тому +2

    I’m so enchanted by this!! Please keep making more. I am currently in a Computer Organization and Machine Language course and so I was happy to see this video pop up and describe what I’m learning in a fun color and artistic way!
    The sound effects and visuals made me engrossed the entire time. I look forward to future videos :D

  • @znefas
    @znefas Рік тому +15

    not only is this extremely informative, it's also just sarcastic enough on certain "bits", pun intended, such as the 1024-bit numbers being used for what they're used, great video :)

  • @personman1411
    @personman1411 День тому

    this channel is funny, serious, and smart all at the same time. great channel for explaining things. definitely deserves more subs.

  • @ARCISX
    @ARCISX Рік тому +2

    Holy shit....if only every aspect of my Computer Science course was explained in such a manner!

  • @supahstarclod
    @supahstarclod Рік тому +2

    Incredibly well articulated and presented! Honestly can't believe I didn't find the channel earlier, this video does a great job with presenting information in-depth without getting lost in the details.

  • @boticelli-lol-5606
    @boticelli-lol-5606 Рік тому

    This is by far the most comprehensible and well produced video on the topic. It definitely should have many more views!

  • @veto_5762
    @veto_5762 Рік тому +1

    I already knew some of this concepts but the way you explain it and the visuals just make it even more clear and easy to process, this one of the best videos regardind computer binary imo

  • @fridaybear
    @fridaybear Рік тому +1

    i've watched a lot of videos about the inner-workings of technology over my years watching youtube but this has to be the most informative and fun one i've watched

  • @speakupOfficial
    @speakupOfficial Рік тому +3

    A lot of these explanations were completely new to me. Really awesome to hear something explained in a totally new way and from a different perspective.
    Loved it!

  • @larryd9577
    @larryd9577 Рік тому

    Oh boi.... This is so much and so well-displayed information. One could easily pause this video every 3 minutes and ponder for up to half an hour when learning this for the first time.
    Great content Josh! Thank you!

  • @robindehood207
    @robindehood207 8 місяців тому +1

    You earned a subscriber. This was brilliantly done, from illustrations to explanation to humour. You didn't have to say the line, the content says enough on it's own.

  • @vietanh266lmao
    @vietanh266lmao Рік тому

    This video is very underrated, it covers up the basics of how computers work but with much more details than most other videos. Keep up the good work!

  • @nightfox6738
    @nightfox6738 11 місяців тому

    This is probably the most intuitive, beginner-friendly introduction to binary I have ever seen. Very impressive.

  • @xorlop
    @xorlop Рік тому +1

    WHAT A SICK VIDEO! I hope you are here to stay and we get to see many more works of art!

  • @IndicaPrincess
    @IndicaPrincess Рік тому

    This is awesome. By far, the best and easiest to understand explanation of how our computers work. Thank you so much!!!

  • @xXMaDGaMeR
    @xXMaDGaMeR Рік тому

    Abstraction is truly an astonishing concept in CS. Your title got got hooked by mentioning it. You sir have got your self a subscriber. Amazing video!

  • @TankorSmash
    @TankorSmash Рік тому

    Incredible editing in this. Loved the sound effects and all the effort put into making it

  • @sagarbhadouria5915
    @sagarbhadouria5915 Рік тому

    The depth of concepts explained in just simple animations is amazing !
    This content is gold. 🔥

  • @ibottosso
    @ibottosso Рік тому

    Amazing work. I’m a software engineer with 20 years of experience and a major in system communication, and yours is the best summary of computer science and bits that I’ve ever seen.

  • @dogedogego
    @dogedogego Рік тому

    Criminally underrated channel and video!
    Absolutely love this!

  • @ChrisDaGamer
    @ChrisDaGamer Рік тому +19

    your video on path tracing was epic, so this is very likely going to be very good as well.
    keep up the good work!

  • @abirhossain183
    @abirhossain183 Рік тому

    I loved how you helped us understand both the hardware and also the software parts with such beautiful animation and awesomeness. I wish you make a detailed and interesting such more videos to help people learn about computer science and programming concepts without being scared of it

  • @based6457
    @based6457 Рік тому +9

    Another masterpiece. Interesting to think that everything about this video has been transmitted to me using the technology the video itself is about.

  • @LordQueezle
    @LordQueezle Рік тому

    This is one of the best descriptions I've ever heard for how binary works

  • @crypt0pure78
    @crypt0pure78 Рік тому

    this is a whole another level in explaining ... filled so many gaps i had ... especially the "why choosing a
    particular way or method to design such concepts?" question , and demonstrating it ... the answer to the why question deepen the understanding and makes it comfortable to deal with the how question and this video is an over kill

  • @marcuscarana9240
    @marcuscarana9240 Рік тому

    1:59 The dog avatar is so cute and the mouth movement and expressions are so accurate to the words.

  • @debonairrose
    @debonairrose Рік тому +1

    Man, only 90 seconds into the video I just had to stop it from playing to gaze in awe and wonder about the quality of the sound design. It's just completely astonishing.

  • @electricimpulsetoprogramming

    very well explained video, i was procrastinating to study it and this video showed up like a glove

  • @marcosoliveira8731
    @marcosoliveira8731 Рік тому

    Best video about this subject I´ve seen so far.

  • @soumyachakraborty2004
    @soumyachakraborty2004 Рік тому

    Most important video in youtube for genuine computer lovers.... Mean it man... Awesome...

  • @beginneratstuff
    @beginneratstuff Рік тому

    This video reminded me of why I love computer science. It's a very good and easy to understand explanation presented very nicely. A perfect video imo

  • @furkankamaci6180
    @furkankamaci6180 Рік тому

    Clear and to the point. Well done sir, well done.

  • @spacewalker9375
    @spacewalker9375 Рік тому +1

    Wow. This has to be the best explanation video on computer science i have ever seen

  • @thestoryofscience5291
    @thestoryofscience5291 Рік тому +2

    U r amazing in explaining difficult concepts in an easier way.. please break down more hard concepts for us to learn... really thank u so much!!!

  • @Ali_Pxll
    @Ali_Pxll Рік тому

    This is my 3rd year in CS
    And No one explained the binary storing thing like you
    Thanks ❤️

  • @aryhn
    @aryhn Рік тому

    yo the quality on this vid is insane. actually so good bro

  • @sesu6743
    @sesu6743 Рік тому

    I did not expect much when i clicked on this, please continue. I can not go back to any other channel now. This video is a goldmine!

  • @fabdlnltc
    @fabdlnltc 11 місяців тому

    Very well done video. Clear, and impressive!

  • @SimonJ57
    @SimonJ57 Рік тому +1

    That grid of suggested videos at 10:05 was so accurate, I genuinely thought the video ended then.

  • @NilsOfTheWorld
    @NilsOfTheWorld 8 місяців тому

    One of the best videos on this website

  • @andresroca9736
    @andresroca9736 Рік тому

    Simply just one of the best videos on how computer works. Perfect mix of complex concepts and simple analogies. Liked a lot the visual backup. Programs are a huge stack of plain text files until the compiler haha. Saludos

  • @saimaannorppa8669
    @saimaannorppa8669 Рік тому

    thanks for making this sequence of bits!

  • @rupeshjha2565
    @rupeshjha2565 Рік тому

    Making anyone understand about what's going on in their pc is something really complicated that this guy has simplified awesome 👍

  • @ishikajain3668
    @ishikajain3668 Рік тому

    I understood till 11 minutes and then it completely went over my head but it was a very complicated concept so I kinda feel proud to be able to understand even this much. Great video

  • @meaninglez100
    @meaninglez100 Рік тому

    You managed to explain this far better in 15 minutes than my entire year of high school computer science class

  • @koenwerf84
    @koenwerf84 Рік тому

    Well done! I have struggled with this question for long. Can't believe your channel isnt much much bigger. It will be!

  • @degox99
    @degox99 Рік тому

    I already knew about this but the way you explained made me look it from a new perspective, thank you.

  • @reeti5958
    @reeti5958 Рік тому

    This video is so good and so cool. I already know all of these concepts but I still saw whole video from start to end because it is so well made.
    This is somewhat comforting to see too. Thanks for making this, sharing it to everyone I know. 😁

  • @DecardCain
    @DecardCain Рік тому

    This is one of the best videso of explaining roots of computer science I have seen over the internet. The explaination of deep-level topics was silky-smooth and nicely kept simple. This channel is doomed to grow :)

  • @andrewhooper7603
    @andrewhooper7603 Рік тому

    Finally, a clear and concise explanation of the powers of abstration.

  • @vaguebrownfox
    @vaguebrownfox Рік тому

    Fascinating, I never get tired on learning the fundamentals in new ways! Thank you ❤

  • @garethm54
    @garethm54 Рік тому

    Commenting to boost this video in the algorithm. Your videos are incredible, and your channel deserves to flourish.

  • @superbro6413
    @superbro6413 Рік тому +33

    Not only is this video fun to watch and really informative, what I learned today is that binary was made standard because some dude would like his computer to work properly while he warmed his pizza in the microwave lol
    In fact, I think the idea that trinary and quadary circuits do exists to be the most fascinating part of this video.
    If I had any sway at all, could I ask you to kindly consider talking more about how they work and what they're used for?
    Excellent job here overall
    Cheers!

    • @skalas6011
      @skalas6011 Рік тому +3

      Setun computer, built in 1959 for in Moscow State University, used ternary. Head of the project was Brusentsov, he has a number of books about Setun and logic, you can read that. There are also research papers in the internet about multi valued logic and ternary in particular. I suggest you search internet for that.

    • @kazedcat
      @kazedcat Рік тому +3

      Most non binary representation is use in communication but we design them to be converted immediately to binary because CMOS circuits are inherently binary. CMOS has P type and N type transistor and we use combinations of this transistor to build logic gates and more complicated circuits. Flash storage also use non binary states to record and store information.

    • @leogama3422
      @leogama3422 Рік тому

      The Colossus, the first (special purpose) programmable digital computer, used quinary logic! It seems that it made a lot of sense at the time, when they used thousands of thermionic valves (vacuum tubes) to break the Nazi cryptography encoded in 5 bit characters.

  • @Klausterfull
    @Klausterfull Рік тому

    Just thank you. Amazing video. As always!

  • @kalpitdhakal
    @kalpitdhakal 11 місяців тому +1

    just randomly watched this video and found out it was in fact the best video ever.

  • @liamwelsh5565
    @liamwelsh5565 Рік тому

    The way you explained binary by deleting all of the duplicate values amazed me. I never seen it explained like that and it is very intuitive to grasp.

  • @varrhoktg1825
    @varrhoktg1825 Рік тому +1

    Fascinating. Never had someone able to clearly explain to me the "why". I appreciate it, even if I still fear learning to program. :P

  • @kapishmalhotra716
    @kapishmalhotra716 21 день тому

    literally the best animation i have ever seen greatly appreciate it

  • @washingtonc137
    @washingtonc137 11 місяців тому

    WOWWWW !!! What a video man. Currently i am graduating in Computer Science and your video was so much better than a full boring course at my university. Congrats man, I hope you keep going with the videos.

  • @caspermoon6052
    @caspermoon6052 Рік тому

    First video from you and I'm glad it was recommended.
    Great quality, great humor and great can of YT phrases.
    Just canned, can't wait to see more.

  • @haniabdulfattah221b
    @haniabdulfattah221b Рік тому

    This IT talk with these sound and visual effects is very satisfying

  • @Alejandro_DOOM
    @Alejandro_DOOM Рік тому +2

    Definitely one of your best videos.
    Keep up the outstanding work! 💯

  • @plasmasupremacy9321
    @plasmasupremacy9321 Рік тому

    some really nice animation and explanations, I didn't expect this level of quality from a youtube channel with a default icon, lol

  • @hexraise
    @hexraise Рік тому +1

    Damn. I’m so happy that this video got to my recommendations. Awesome explanation and animation!

  • @irtizahmd
    @irtizahmd Рік тому

    Subbed! Answers so many questions beautifully! Thanks.

  • @normalrachael
    @normalrachael Рік тому +2

    love it. i’ll learn about anything you post on this channel!

  • @zechariahcaraballo8765
    @zechariahcaraballo8765 Рік тому

    This was insanely well made

  • @Waseek69Ahmad
    @Waseek69Ahmad Рік тому

    This will blow up soon. The quality of video production is just mindblowing.

  • @jamiepianist
    @jamiepianist Рік тому

    I expected this video to have a few 100k views from how solidly it’s made, amazing work

  • @marchinelearning
    @marchinelearning Рік тому

    The animations and representations are on point. Great work I appreciate too much.

  • @flamshiz
    @flamshiz Рік тому

    this video was extremely well polished

  • @Flowersinthebody
    @Flowersinthebody Рік тому +1

    This is one of the best videos of ever seen! My special interest is computers and while I enjoy them I don't know much about them period this really helps me understand the foundations of computation! This is really great and it didn't go over my head I love it!

  • @Benegade
    @Benegade Рік тому +5

    Instant click whenever I see notifications from this channel!

  • @mh47saiyyad21
    @mh47saiyyad21 11 місяців тому

    Extremely good.
    Thankyou

  • @kainpwnsu
    @kainpwnsu Рік тому

    Very good practical examples!

  • @saulivor2843
    @saulivor2843 Рік тому

    Wow this video is absolutely incredible, keep it up Man!