▲ 206 ▼ I Started Programming When I Was 7. I'm 50 Now and the Thing I Loved Has Changed (www.jamesdrandall.com) submitted 6 months ago by codeinabox@programming.dev to c/programming@programming.dev 80 comments fedilink hide all child comments cross-posted from: https://lemmy.bestiver.se/post/917810 Comments
[–] Ajen@sh.itjust.works 4 points 5 months ago (1 child) You think people writing C(++) for baremetal systems don't understand how their hardware works? permalink fedilink source parent hideshow 2 child comments replies: [–] queerlilhayseed@piefed.blahaj.zone 15 points 5 months ago (1 child) I don't think it's a binary switch between "understanding" and "not understanding". I have the basic gist of how semiconductors and logic gates work, I know a little about how CPUs and assembly work, and I can work with assembly if I have to, but those aren't my areas of expertise. I know enough about floating point arithmetic that I can identify floating point errors as floating point errors, but I don't claim to have anything close to the fluency in those systems that I do for higher-level languages. The ability to specialize makes it possible to make fantastic machines like the global Internet even though no one person on earth understands all the sub-components to the degree that a specialist in a particular sub-component does. I'm not saying that there aren't some computing systems that are fully comprehended by a single person, but the ability to specialize increases the scope of what is collectively possible. permalink fedilink source parent hideshow 2 child comments replies: [–] Ajen@sh.itjust.works -2 points 5 months ago (2 children) OK, but that doesn't really answer my question, and I'm getting the sense you don't know how deeply some engineers understand how the hardware works. Plenty of embedded programmers have EE degrees, and can write VHDL just as well (or just as badly) as they can write C and ASM. permalink fedilink source parent hideshow 4 child comments replies: [–] queerlilhayseed@piefed.blahaj.zone 8 points 5 months ago To answer your question: no, I don't think that. I know there are some areas of computing where having a deep understanding of the entire system is critical, like embedded systems. I mean, that necessity of deep understanding doesn't have to apply to every domain of computing, and creating abstractions is a useful way of dividing the work so we can make more complicated systems than one person could if they needed to understand every part. permalink fedilink source parent [–] obbeel@lemmy.eco.br 3 points 5 months ago (1 child) A "EE" degree won't get you into poking the right things into memory using BASIC. How about your "EE" programmers try that understanding of hardware? permalink fedilink source parent hideshow 2 child comments replies: [–] Ajen@sh.itjust.works -2 points 5 months ago BASIC? That's cute. If you don't think EE students learn how circuits (including ICs) work, what exactly do you think they're doing while they're in school? permalink fedilink source parent
[–] queerlilhayseed@piefed.blahaj.zone 15 points 5 months ago (1 child) I don't think it's a binary switch between "understanding" and "not understanding". I have the basic gist of how semiconductors and logic gates work, I know a little about how CPUs and assembly work, and I can work with assembly if I have to, but those aren't my areas of expertise. I know enough about floating point arithmetic that I can identify floating point errors as floating point errors, but I don't claim to have anything close to the fluency in those systems that I do for higher-level languages. The ability to specialize makes it possible to make fantastic machines like the global Internet even though no one person on earth understands all the sub-components to the degree that a specialist in a particular sub-component does. I'm not saying that there aren't some computing systems that are fully comprehended by a single person, but the ability to specialize increases the scope of what is collectively possible. permalink fedilink source parent hideshow 2 child comments replies: [–] Ajen@sh.itjust.works -2 points 5 months ago (2 children) OK, but that doesn't really answer my question, and I'm getting the sense you don't know how deeply some engineers understand how the hardware works. Plenty of embedded programmers have EE degrees, and can write VHDL just as well (or just as badly) as they can write C and ASM. permalink fedilink source parent hideshow 4 child comments replies: [–] queerlilhayseed@piefed.blahaj.zone 8 points 5 months ago To answer your question: no, I don't think that. I know there are some areas of computing where having a deep understanding of the entire system is critical, like embedded systems. I mean, that necessity of deep understanding doesn't have to apply to every domain of computing, and creating abstractions is a useful way of dividing the work so we can make more complicated systems than one person could if they needed to understand every part. permalink fedilink source parent [–] obbeel@lemmy.eco.br 3 points 5 months ago (1 child) A "EE" degree won't get you into poking the right things into memory using BASIC. How about your "EE" programmers try that understanding of hardware? permalink fedilink source parent hideshow 2 child comments replies: [–] Ajen@sh.itjust.works -2 points 5 months ago BASIC? That's cute. If you don't think EE students learn how circuits (including ICs) work, what exactly do you think they're doing while they're in school? permalink fedilink source parent
[–] Ajen@sh.itjust.works -2 points 5 months ago (2 children) OK, but that doesn't really answer my question, and I'm getting the sense you don't know how deeply some engineers understand how the hardware works. Plenty of embedded programmers have EE degrees, and can write VHDL just as well (or just as badly) as they can write C and ASM. permalink fedilink source parent hideshow 4 child comments replies: [–] queerlilhayseed@piefed.blahaj.zone 8 points 5 months ago To answer your question: no, I don't think that. I know there are some areas of computing where having a deep understanding of the entire system is critical, like embedded systems. I mean, that necessity of deep understanding doesn't have to apply to every domain of computing, and creating abstractions is a useful way of dividing the work so we can make more complicated systems than one person could if they needed to understand every part. permalink fedilink source parent [–] obbeel@lemmy.eco.br 3 points 5 months ago (1 child) A "EE" degree won't get you into poking the right things into memory using BASIC. How about your "EE" programmers try that understanding of hardware? permalink fedilink source parent hideshow 2 child comments replies: [–] Ajen@sh.itjust.works -2 points 5 months ago BASIC? That's cute. If you don't think EE students learn how circuits (including ICs) work, what exactly do you think they're doing while they're in school? permalink fedilink source parent
[–] queerlilhayseed@piefed.blahaj.zone 8 points 5 months ago To answer your question: no, I don't think that. I know there are some areas of computing where having a deep understanding of the entire system is critical, like embedded systems. I mean, that necessity of deep understanding doesn't have to apply to every domain of computing, and creating abstractions is a useful way of dividing the work so we can make more complicated systems than one person could if they needed to understand every part. permalink fedilink source parent
[–] obbeel@lemmy.eco.br 3 points 5 months ago (1 child) A "EE" degree won't get you into poking the right things into memory using BASIC. How about your "EE" programmers try that understanding of hardware? permalink fedilink source parent hideshow 2 child comments replies: [–] Ajen@sh.itjust.works -2 points 5 months ago BASIC? That's cute. If you don't think EE students learn how circuits (including ICs) work, what exactly do you think they're doing while they're in school? permalink fedilink source parent
[–] Ajen@sh.itjust.works -2 points 5 months ago BASIC? That's cute. If you don't think EE students learn how circuits (including ICs) work, what exactly do you think they're doing while they're in school? permalink fedilink source parent