How Code Works

Поділитися
Вставка
  • Опубліковано 16 вер 2024
  • How Code Works
    Instagram: / davex.tech
    Home: davidxiang.com
    Book: www.amazon.com...
    Facebook Page: / davex.tech
    Twitter: / davex_tech
    Email: davex.inc@gmail.com
    #software #coding #softwaredevelopment #programming #howtocode

КОМЕНТАРІ • 134

  • @MsJavaWolf
    @MsJavaWolf 7 років тому +3

    What helped me personally understand this, was a course on hardware at university, where we were using hardware description languages (Verilog and bluespec) and learning how an ALU (algorithmic logical unit) looks like. Once you see how a single electric charge can make the machine either add or subtract, you can understand that every more complex operation follows the same logic.

  • @tanyatressler3132
    @tanyatressler3132 7 років тому +20

    Wow! You are such a smart young man! Thank you for doing this video..
    I am 66 and curious about all of this...I'm retired so I have time (I hope) to learn little by little. I use a laptop, a Tablet and an Android smart phone so maybe I can learn a little about coding..
    We'll see!

    • @dolx2861
      @dolx2861 6 років тому +5

      attaining a skill later in life should be more common, props to you! most people just start doing a whole lot of nothing when they retire, but you decided to do something you found interest in.

  • @busyrand
    @busyrand 7 років тому +3

    You have a Gift for teaching. I'm watching this again after seeing it a few months ago. I was able to understand the entire thing this time. You did an amazing job at pacing your explanations and simplifying specific things to focus on.

  • @rohitnaidu301
    @rohitnaidu301 9 років тому +9

    Hey! #Dave Xiang. Glad you are back to youtube to enhance our lexicon over the horizon.

  • @jjmcowboy
    @jjmcowboy 7 років тому +1

    You would make a great teacher. I like how you take big picture concepts and break them down into chunks that are still understandable to the layman.

  • @kevinparsley6806
    @kevinparsley6806 8 років тому +6

    This would have been an awesome introduction video to my introduction to computer science class!

  • @daledude66
    @daledude66 9 років тому

    I love working with computers and electronics.Everyone works at a particular level. They count on the people 'below' them to provide them with tools that they use to create products for the people 'above' them. Eventually you go from silicon doping to a UA-cam video! It's amazing what we can create together like this.

  • @SKF358
    @SKF358 7 років тому +1

    I am rewatching this video and getting more out of it. I am not comfortable using computers, though I do quite a bit, and even learned Fortran code, because I don't feel I understand them adequately. This is the only tool of life that is that way for me, for example I drive a car, and though I don't build them, I understand the internal combustion engine enough to feel comfortable using the car. But computers are a stumble for me. Thanks for helping me in that area.

  • @alexandrastratanphotographer
    @alexandrastratanphotographer 8 років тому +14

    love your vids, the music in the bckgrd is a bit distracting for me :(, cool and comprehensive though

    • @MolecularArchitect
      @MolecularArchitect 7 років тому

      LOL. I love the music too

    • @ercm2393
      @ercm2393 6 років тому

      Sager no u are a miserable fuck. Bitch hole.

  • @218Flows
    @218Flows 7 років тому +22

    So you're telling me i can execute code through a light bulb???

    • @mr.mysteriousyt6118
      @mr.mysteriousyt6118 7 років тому +1

      Joe L
      Yes

    • @kid_kulafu_1727
      @kid_kulafu_1727 6 років тому

      Maybe late but check out vacuum tube. Its like a light bulb but a special one. It acts like a transistor. It controls the light that is passing through. 1 if on 0 if off. Now connect a bunch of it together you can create a gates. And gate. Or gate xor gate.

    • @redmenk
      @redmenk 4 роки тому

      @@kid_kulafu_1727 ua-cam.com/video/Xpk67YzOn5w/v-deo.html

    • @redmenk
      @redmenk 4 роки тому

      @@mr.mysteriousyt6118 ua-cam.com/video/Xpk67YzOn5w/v-deo.html

  • @kwesigepi-attee1620
    @kwesigepi-attee1620 2 роки тому

    Thanks for this channel. Even working in softaware there are so many areas that need bridging and this channel is invaluable. Keep it up Dave.!!

  • @rakhattutueva7107
    @rakhattutueva7107 7 років тому +17

    Good videos ! But that music makes hard to focus ))

    • @DaveXiang
      @DaveXiang  7 років тому +4

      yea i'm killing the music in all future videos.

  • @RedEyedJedi
    @RedEyedJedi 7 років тому

    That's so funny, you read the question out and I said to myself "this is an insane question, the complexity would blow his head off" and then you pretty much said the same thing straight after haha.

  • @nikolasfiler5241
    @nikolasfiler5241 7 років тому +1

    Thanks for your videos dude, they're concise and informative.

  • @Sams_Uncle
    @Sams_Uncle 8 років тому +1

    Hey Dave! thanks a ton mate for such an amazing explanation. I don't remember if I made comment on anyone' video. I wanna say few things, you really have great God given talent, what I mean is, you convey your message so well. It is helping to all the learners. Please make more videos and keep on. People like you are making real difference in world. Most of online tutorial is not convincing as yours. Respect Mate👍👍

    • @DaveXiang
      @DaveXiang  8 років тому +3

      Hey! Yo man, thx for the words, really really appreciate it. I'm glad the videos are helpful and I will be doing my best to keep making them.

    • @KatherineMartin502
      @KatherineMartin502 8 років тому

      +Dave Xiang your videos are dope. They are easy to follow and understand. I'm very much an analog girl in a digital world. Meaning I like to take notes while I listen to content. Your videos allow me to do that without feeling rushed. Thank you

  • @flintsky5217
    @flintsky5217 7 років тому

    man!....you make things very simple....i was looking for something like this for about an year...J....thank you so much...

  • @isabellasong1246
    @isabellasong1246 6 років тому +1

    Thank you for putting out this awesome content! super helpful!

  • @katchartrand738
    @katchartrand738 6 років тому

    Hey man, I was looking into getting into computer programming and your videos have played a solid role in preparing for the next step. Thanks!

  • @migupnt
    @migupnt 5 років тому

    How I understand it is that you cannot have code if there is no working processor, not if there is no electricity. It's like saying that a household unit becomes the oven it turns on...

  • @Vvtopsider
    @Vvtopsider 8 років тому +1

    Good stuff Dave!
    -Alex

  • @mr.o820
    @mr.o820 7 років тому +3

    Hey, Dave, thanks for making this video. I thinking of going back to school to do major in, 'computer science,' so this video was very helpful

  • @LyricsByANAS
    @LyricsByANAS 4 роки тому +1

    1:19 go to the library aaa.. "Google" 😆

  • @x9z6x
    @x9z6x 9 років тому +9

    Thanks so much for making this video! I learned a lot but I still feel this disconnect between the harware and software. If we take out the whole operating system and all the complexities out of the way say a program is just a bunch of 0s and 1s. This program might do something like add 2 numbers and print the answer on the screen. I'm guessing the instructions would have to go into memory. (Have these software instructions turned into something physical when going into memory?) then the program counter would point to the memory address storing the instruction. (how would the address in the program counter physically get whatever information is in that address and have it send electrical waves that would pass into the cpu?) my hope is that the same process that happens breaking down the instructions to electricity running through the cpu is done in reverse to have the solution that the CPU calculated put back from electricity into 0s and 1s and continue going up from there. Hopefully this makes some sense.

    • @DaveXiang
      @DaveXiang  9 років тому +6

      +alexander babich You are right. First you have to remember that when you break 0s and 1s down to their basic level, they are actually just electricity. For RAM or your main memory, you can think of it as a huge array of 1s and 0s. The only way they keep their state is that electricity is flowing through them. If the electricity stopped all the RAM would go back to 0s.
      The instruction is sitting in memory and the program counter is pointing to it. I think you might be confused in how this is "sent" to the processor. Actually, the processor reads the values at this specific address and it recognizes it as a machine instruction. The program counter is ALWAYS pointing to memory that has valid processor instructions. If it's ever not pointing to that kind of memory, things are gonna go bad and crash the processor. The instruction itself has a special sequence of 1s and 0s that the processor recognizes and will behave a certain way to. Nothing is really transferred, but the flow of logic and electricity inside the processor changes based on various values (1s and 0s) of those machine instructions. The instruction in memory will represent ADD or SUBTRACT and the processor will react to it.

    • @faifar
      @faifar 9 років тому +2

      +alexander babich hey man whats up! amazing to see classmate and former colleague/friend @Dave Xiang right in one video. awesome video Dave :)

    • @DaveXiang
      @DaveXiang  9 років тому

      +faisal farooq Thanks dude. Damn small world

    • @x9z6x
      @x9z6x 9 років тому +1

      +Dave Xiang Now that I'm thinking about it my problem was that I was viewing the software as what's displayed on the screen lol. If I just think about it as always being electricity then it makes a lot more sense. Of course the computer doesn't need the display to do anything. All we are doing is basically controlling a gigantic electrical circuit.

    • @x9z6x
      @x9z6x 9 років тому

      +faisal farooq hey man! Good to hear from you!

  • @user-tq1cm
    @user-tq1cm 7 років тому

    Step 1: while the video is still playing, scroll to 0:00 without pausing the video
    Step 2: Repetitively press the left arrow key at different frequencies
    Step 3: Enjoy your own music.

  • @notrookie1814
    @notrookie1814 6 років тому

    Hope you keep making more tutorial videos. You're good at it.

  • @sohinimondal1555
    @sohinimondal1555 6 років тому

    does shell work on the time of linking of machine code ??

  • @joycerodriguez624
    @joycerodriguez624 8 років тому +1

    "Awesommmmmme". I love your videos, please post more! I'm undergoing third year in computer engineering, you've helped me so much. Thank you, Dave Xiang!

  • @berniv7375
    @berniv7375 4 роки тому

    Thanks for a very informative video on how Code Works.

  • @monishakrishnan6471
    @monishakrishnan6471 5 років тому

    You are just rocking U video's are too easy to learn keep updating us thank u

  • @instaminox
    @instaminox 7 років тому +2

    you reminded me of the course System hardware SOEN228

  • @vanwilder3021
    @vanwilder3021 7 років тому +1

    Option 1: Full college curriculum in Computer Engineering / Computer Science, Option 2: Watch me explain it to you on UA-cam. lmfao XD

  • @Alex-ej4wm
    @Alex-ej4wm 6 років тому

    It took me like three tries but I finally got an Asian to explain this to me. Looks like I'm finally in business!

  • @cgeetaryan
    @cgeetaryan 8 років тому

    thanks for the video, very good overview and it provides a learning guide for me.
    for those interested in understanding basics of programming, i personally would recommend "head first java" , or any of other books within the head first series.

  • @toddietubby7450
    @toddietubby7450 7 років тому +1

    did anyone go to the library when he said "library ah i mean google"

  • @magicalgrenas4501
    @magicalgrenas4501 7 років тому

    Great explanation, thank you. Just subscribed.

  • @yasinsharifi2726
    @yasinsharifi2726 6 років тому

    Thank you man it was fantastic

  • @alexanderbambionaah3899
    @alexanderbambionaah3899 3 роки тому

    Great video. Love it. Thanks

  • @markanthony9432
    @markanthony9432 8 років тому

    These are excellent videos and I thank you!

  • @Antho7Productions
    @Antho7Productions 9 років тому

    Thanks bro, you have to upload more man your vids are awsome ;)

    • @damnsonnyy
      @damnsonnyy 8 років тому

      +Anthovv7 ikr ;) ! thumbs up for this asian

    • @Antho7Productions
      @Antho7Productions 8 років тому

      *****​ Ikr! This is a nice asian

  • @jonathanbannor3751
    @jonathanbannor3751 6 років тому

    HI dave! can you make a video about how to learn how to code from scratch?? cheers mate! 👍🏾

  • @marwanahmed6294
    @marwanahmed6294 8 років тому

    damn that was deep, great explaination of what happens under the hood

  • @billbergen9169
    @billbergen9169 5 років тому

    You just earned a sub.

  • @gsilverstone
    @gsilverstone 6 років тому

    So insightful!

  • @THeRealTroy07
    @THeRealTroy07 9 років тому

    Great Job!

  • @ruchadeodhar1708
    @ruchadeodhar1708 7 років тому

    I love your videos!!! like totally!!

  • @Pompom106
    @Pompom106 6 років тому

    great video very informative thanks

  • @capeice1654
    @capeice1654 6 років тому +1

    i want to understand that how we can write some codes and then execute them to hardware like how the camera works in android and how fingerfrint and all others i want to make my codes and my phone like starting with begging and new world

  • @kevinparsley6806
    @kevinparsley6806 8 років тому

    Dave, the context switching you are talking about is what recursion is based on, right?

    • @DaveXiang
      @DaveXiang  8 років тому +1

      No, they're not really the same. The context switching in this video is process context switching. The OS scheduling different processes to be run. If you're in a terminal and execute a script, those are two completely separate processes. This is all the stuff you on your task manager, or activity monitor.
      Recursion is a programming technique, usually contained within a single program or process. Recursion is just a programming technique to get something done. Just like using a loop is a programming technique. That is the common use of the word recursion, unless you're referring to something really different.
      Hope this helps

    • @kevinparsley6806
      @kevinparsley6806 8 років тому

      Thanks for your answer. You and a couple other channels are doing a lot to provide direction to people trying to develop in the wide field of development. There's a lot in the way of basic coding tutorial, but not much in the way of helpful counsel.
      I understand what you are saying. It just reminded me of what I remember about what happens when in the process of recursion, and wasn't sure if somehow the processes were related. The way for each function call the state of the previous function is reserved in memory, and revisited in the unwind when the base case is met. I admit that I have to brush up on the details of what actually happens..

    • @DaveXiang
      @DaveXiang  8 років тому +1

      Functions calling functions and preserving state is done via the "callstack". A program using recursion (makes a lot of function calls) would utilize the call stack often. You should google it and check it out

  • @SKF358
    @SKF358 7 років тому

    Good video. How does text file become an executable file exactly? I guess I am asking for even more detail. Thanks!

    • @DaveXiang
      @DaveXiang  7 років тому

      yea, that's a pretty complex topic. it depends on what's in the text file. it's either compiled down to machine code with separate applications like GCC (languages like C/C++) but it can also be just interpreted as text by an interpreter(python3/ruby2x)

    • @SKF358
      @SKF358 7 років тому

      Dave Xiang Thanks.

  • @arabiccompprograming5161
    @arabiccompprograming5161 7 років тому

    Do you rubik cube with asymmetrical puzzles?

  • @pisanghangus2
    @pisanghangus2 7 років тому

    I am impressed.

  • @hausemester7386
    @hausemester7386 6 років тому

    Cpu reads the program from memory and executes it

  • @yasinsharifi2726
    @yasinsharifi2726 6 років тому

    But I didnt get how electricity in processor architecture adds machine language 0 &1 togather?
    How electricity in processor works like that?

  • @Cameron-df2vu
    @Cameron-df2vu 9 років тому

    Have you thought about doing a step by step series on programming python or something ?

    • @DaveXiang
      @DaveXiang  9 років тому

      +The Riddle Ah yea, I thought about it, but teaching programming is pretty tough to do in a video. I think the best way is actually through books, a course, and fiddling around with it on your own. I can maybe do a video on how to like get set up with python. I can probably do some stuff on like general programming concepts but I wouldn't really be able to get into the details in a video. Also a part of the learning processes is just struggling on your own. The more struggle the better the reward. haha

    • @Cameron-df2vu
      @Cameron-df2vu 9 років тому

      Alright I will keep that in mind.

    • @BOSSDONMAN
      @BOSSDONMAN 9 років тому

      +Dave Xiang Is there an online, preferably free course medium that you prefer for general self-study of programming and scripting languages?

    • @DaveXiang
      @DaveXiang  9 років тому

      +BOSSDONMAN Hey, check this out www.edx.org/course/introduction-computer-science-harvardx-cs50x Free, completely online, intro level course from Harvard. I think they know what they're doing =P Good luck.

  • @bsratgide1957
    @bsratgide1957 8 років тому

    thank you

  • @MinecraftGamer101010
    @MinecraftGamer101010 9 років тому

    Nice video! :D

  • @htcmlcrip
    @htcmlcrip 8 років тому

    Try make another vid it use 'switch board' to explain processor...
    Maybe a video series as it won't fit to w wideoz but would be cool a series 'from simple switch to a computer'
    At least primitive 'switch based calculator' for starters?

  • @cleito001
    @cleito001 6 років тому

    Of course I’m learning some of the hardest shit to learn from an Asian dude😂

  • @kONEzzer
    @kONEzzer 7 років тому

    But it prints out "Hello world" not just "hello" :D

  • @michaelw7915
    @michaelw7915 8 років тому

    Like your videos but can u please keep your background sound lower?

  • @xiaoyilin9980
    @xiaoyilin9980 4 роки тому

    is there is no background music, this video will be no distraction

  • @neromonez
    @neromonez 8 років тому

    I've a dumbass DSL wifi device runs with a "SIM card" at 5 mb / sec ,but I watched a lot of good videos about home network setup & a lot of AWESOME routers , so I bought a router + modem ( 1 device ) . now how do I run my network without this stupid SIM card >_

  • @harshendubhardwaj5283
    @harshendubhardwaj5283 8 років тому

    awesome

  • @juliousosman1814
    @juliousosman1814 7 років тому

    i tried to understand but understanding is very hard i need like 5 years of schooling to understand this

  • @behemoth2887
    @behemoth2887 5 років тому

    💥

  • @XxxCR1SPYxxX
    @XxxCR1SPYxxX 9 років тому

    math is universal 1010 you should do a video on how to make software or hardware and what companies do it and how they did it how much it costs and the materials needed also how does a computer or phone know to turn on like a lightbulb???its like magic this stuff really is insane lol i wrote this before you said magic happens in the shell what the actual fuck lol

  • @al4nf00te6
    @al4nf00te6 7 років тому

    I think my mind detonates, but thanks for the informative vid anyway

  • @kumaraveldevarajan3581
    @kumaraveldevarajan3581 6 років тому

    It will be more helpfull if it was said in an electronic engineers point of view

  • @minuscolochao1557
    @minuscolochao1557 7 років тому

    i'm doing the plan B ;)

  • @dation0000
    @dation0000 9 років тому +2

    fukkk my mind is blown :O

  • @KennethDiazperlloni
    @KennethDiazperlloni 7 років тому

    I need to watch your video titled why you don't understand things.

  • @aeyacastanares1034
    @aeyacastanares1034 6 років тому

    his eyes is so attractive....

  • @illeone5433
    @illeone5433 6 років тому

    how does it work?

  • @syth406
    @syth406 7 років тому

    A healthy dose of condescension hahaha

  • @kenrenjamriojamir7517
    @kenrenjamriojamir7517 8 років тому

    Right now im learning Java Html so after learning all this can i hack computers?

    • @Polyashenko
      @Polyashenko 8 років тому

      +kenrenjamrio Jamir Yes, HTML is all you need to hack computers.

    • @thesickbeat
      @thesickbeat 8 років тому

      Don't forget about CSS, which is mandatory for hacking. But yeah, first start off with HTML like Kon suggested.

  • @nvrthles
    @nvrthles 7 років тому

    lower the music please

  • @nexusperson4928
    @nexusperson4928 7 років тому +2

    i am a young veiwer draming to be a game developer

    • @ItsBoyRed
      @ItsBoyRed 7 років тому +2

      How original.

    • @DaveXiang
      @DaveXiang  7 років тому +6

      Yes, if you want to do that, go do that.
      DiRT, I don't call out people often, but please don't disparage random people.
      This person is probably in like high-school, or younger, who just has some aspirations for a job. If you need to be sarcastic, you can call me out instead of replying to random people you don't even know.
      Stop being a bitch, or don't comment at all on my videos.

    • @ItsBoyRed
      @ItsBoyRed 7 років тому

      Dave Xiang hmh, i truly enjoy your videos and didnt expect a reply from you : )
      I didnt mean to sound mean but its such a common "dream" and none of them even have the slighest clue to what it even is or what it takes to do so, he/she does mabye not even know if its 2D, 3D, Sound, consept art or codeing he/she wants to do.
      Being a game dev is not a LAN party with friends where you play games all night, its work, ofcourse if he/she wants to play games all day playtesting could be it, but i doubt that is what the dream is, playing the same level over and over again for days.
      Offtopic:
      Im wondering if all you know is "required" to program good programs, i get its a vague question becourse it depends on what the program is designed for but how much of the stuff you talk about on your channel is "super top tier" knowledge that is not important to know for the hobby programmer?
      -In ohter words, how much is learned through education, like a carpenter as an example,
      where i live a carpenter spends 20/40 weeks in a school + 4 years in a real shop to be a real carpenter and doing that time he is learning lots and lots of things and tricks that the normal hobby woodworker might not know or even need.
      I myself dont want to work as a programmer but do it mostly becourse i have an obsession with knowing how things work from the ground up and i spend alot of time on the computer, so having such a "small" grasp of whats going on behind the scences is annoying to me.
      You seem to know ALOT about everything in a computer and i must admit that you impress me with the amount of knowledge you have, not alot of people do that to me on a few topics, and i hope my question made sence, im not sure if i can explain it diffrently.
      Keep doing what you are doing! :)

    • @DaveXiang
      @DaveXiang  7 років тому +2

      Thanks for your reply. Yes, I agree a lot of people want to become a game dev because they like games, and really have no idea what it could be like. I was only worried because short comments like that which you wrote in like 1 minute can really be a bummer to someone who is young.
      As for "super top tier" knowledge, I really don't think the info I'm giving is super top tier at all. I'm a little different perhaps since I majored in electrical / computer engineering which is not very close to software engineering. So I come at it from a different angle. But all the info I give here is really basic. I think most people who know about those topics in details would have much more to say. They'd probably get offended by how much I dumb it down.
      I studied ECE but somehow through work/life... I just started getting into software. You are right in that a lot of this stuff isn't really required to become a programmer. I don't think you really have to understand the ins and outs of a computer to do programming well. My goal is to just give people a little bit of a taste of what else is going on. Hopefully it's interesting or at least makes people curious.

    • @ItsBoyRed
      @ItsBoyRed 7 років тому

      Dave Xiang it atleast did for me, but i spend too much time on the pc :)
      Thanks for the reply btw.

  • @najmlion7129
    @najmlion7129 9 років тому

    gj man

  • @dation0000
    @dation0000 9 років тому

    thanks bro , am looking for inspiration to boost me into computer programming help me plz :)

    • @DaveXiang
      @DaveXiang  9 років тому +3

      +axon magnus Yea no problem dude. I think one key thing to finding inspiration is to use programming to help you do something you really love. Use it to help you with something you already like -- good luck bro

  • @mainedorota9757
    @mainedorota9757 3 роки тому

    Jaja, me encantas, ;)

  • @rd434
    @rd434 8 років тому

    The background music is killing my nerves. Urgh

  • @akmonra
    @akmonra 6 років тому

    Anyone else sent here by Make School?

  • @seanhart3793
    @seanhart3793 5 років тому

    Who else is here bc of Berg

  • @najmlion7129
    @najmlion7129 9 років тому

    FIRST

  • @zebinaxandy9080
    @zebinaxandy9080 4 роки тому +1

    Shit