5 ms·
Why are assembly related topics so popular on Hacker News? I don't see pursuit of this topic happening in my anecdata of programmers I interact with in day to d
by djmips 7y ago
Why are assembly related topics so popular on Hacker News? I don't see pursuit of this topic happening in my anecdata of programmers I interact with in day to day life.
- yellowapple 7y agoIntellectual curiosity?
- Chris2048 7y ago> programmers I interact with in day to day life What kind of dev are you, and what kind of dev do you usually interact with?
- vzidex 7y agoAgreed, I think it's somewhat industry-dependent. I work with FPGAs and while we don't deal with assembly on a regular basis I'm confident everyone on my team would be able to develop or debug it.
- stevekemp 7y agoPartly curiousity, also I think there's a lot of nostalgia. Back when I got started with computers it was 1982, and the available programming languages were BASIC and Z80 assembly language. A lot of people growing up around that time did assembly language coding, because they needed the speed, or because (like me) they wanted to hack games for either infinite lives, or to ease copying. Of course assembly language is still used in some areas, it used to be necessary for optimization a lot more than today due to evolving general purpose hardware. But it is still useful for embedded and microcontroller programming. I don't often touch assembly these days because I have a need for it, but do it for fun because it reminds me of simpler times and fewer abstractions. e.g. a recent project: https://github.com/skx/math-compiler https://github.com/skx/math-compiler (Of course these days with microcode, and complex processors, it's not really bare-metal anymore. Not like it used to be. But try telling kids today that, and they won't believe you !)
- commandlinefan 7y ago> Partly curiousity, also I think there's a lot of nostalgia. I think it's deeper than that. I started coding professionally just before the internet took off. Before that I didn't have much interest in computer networks and seemingly overnight I was dealing with a huge new vocabulary of unfamiliar terminology like "port", "peer", "client/server", "protocol", "router", "bridge", "firewall". This wasn't just academic arcana either: whenever I had a problem, the network types would start asking me to check to see if the "firewall" was blocking my "client" from accessing the "port". I found myself able to muddle through by following their instructions, but I felt like a foreigner in a foreign land whenever anything didn't work the way it was "supposed to". Web programming documentation wasn't helpful in navigating this territory; it assumed you either knew all this stuff of somebody else was taking care of it for you. One day I decided to start from "the beginning" and read TCP/IP illustrated and within a few chapters it all came together and I found myself able to troubleshoot problems that sometimes even the networking "experts" couldn't resolve. Learning and understanding assembler is like that: once you understand EXACTLY how a computer works, there's no mystery in whether you coded it wrong or you didn't understand what to expect.
- newswasboring 7y agoAnswered in the very first sentence of the article > Seeing a program you wrote running directly on the bare metal is deeply satisfying to anyone who enjoys writing software. This is it. I have been on this site for over a decade now and most the obscure stuff is popular here because it satisfies this criteria for some people. Its actually different for different people. For some its bare metal programming, for some its obscure languages like K, and for even others its some libraries.
- throw1234651234 7y agoMost people don't do this in real life.
- commandlinefan 7y agosadly.
- rvz 7y ago> Why are assembly related topics so popular on Hacker News? Because there are some engineers perhaps at ARM, Apple, Microsoft, Intel or Google who deal with compilers or operating systems and UEFI booting devices that you're probably currently running or using to either build software or even reply to this thread, who still take interest in reading about blog posts like this. > I don't see pursuit of this topic happening in my anecdata of programmers I interact with in day to day life. Maybe not for you, but it's the reason why you are able to post your message here and browse the web or build software faster thanks to the engineers who did this sort of programming. Sure, general end-users shouldn't care but it's gives me confidence that there are some engineers out there who understand some OS internals to 'make' things happen even at FAANMG companies, rather than doing generic web apps all day long.
- christiansakai 7y agoI'm just your generic line fullstack web engineer. I'm still interested in these kinds of stuffs.
- abnercoimbre 7y agoCame here to say just that, but to also mention I know some web developers who love these topics and are ahead of the game compared to their colleagues. P.S. And if a low-level programmer goes into web, stuff like this [0] happens :-) [0] https://nira.app/ https://nira.app/
- ngneer 7y agoFor me, the desire to better understand the innards.
- NwtnsMthd 7y agoSome of us still write assembly now and then, even if it is for embedded systems and not x86. I found this interesting!
- pjmlp 7y agoAnyone doing compilers, graphics, video or audio codecs, GPGPU, kernel development or OS drivers needs to know Assembly. Maybe you don't do any of this stuff, but there are plenty of engineers that do this daily.
- banachtarski 7y agoWhy are webdev related topics so popular on Hacker News? I don't see pursuit of this topic happening in my anecdata of programmers I interact with in day to day life. Oh right, not everyone is in my field.
- omniscient_oce 7y agoDid you coin the term 'anecdata'. I really like it.
- notadog 7y agoI doubt that they did - its been a term since at least the 1980s https://www.lexico.com/definition/anecdata https://www.lexico.com/definition/anecdata
- nandkeypull 7y agoKnowledge of assembly is also extremely important for computer security related topics such as reverse engineering, malware analysis, and exploit development.