Live data from Hacker News

Low-Level Programming University – A roadmap to becoming a low-level programmer

github.com

41–50 of 168 posts

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#41

Don't go there. There's really not a lot of work. But if you must, low level is more a calling than a learned skill. You probably shouldn't be learning assembler. First, compilers are really quite good. Yes, it's possible to beat them (I do) but generally not by much. And not by much ain't gonna put bacon on the table. You can probably get what you need from gcc inline asm() calls. Take a look at the linux sources an…

To add to this, most micros these days are ARM based which are specifically designed to not need assembly in their boot code. I basically never use it anymore. That said, you should have some understanding of what C code will map to what assembly for the purposes of memory management and performance.

Also: to say its a calling is accurate. I love what I do because what I create is physical and interacts with the physical world. I can hold my projects in my hands and say "I made this". I've done web and desktop stuff and can say that this work is significantly more fulfilling to me.

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#42

Don't go there. There's really not a lot of work. But if you must, low level is more a calling than a learned skill. You probably shouldn't be learning assembler. First, compilers are really quite good. Yes, it's possible to beat them (I do) but generally not by much. And not by much ain't gonna put bacon on the table. You can probably get what you need from gcc inline asm() calls. Take a look at the linux sources an…

Good stuff.

I'll add that while full-time native work may be in short supply, it's an awesome skill to have in your belt. You many not need it often but when you're suddenly up against limits where current technology doesn't suffice(Java/Python/Ruby/etc) it can seem like magic to break down into the lower stack and get 10-50x performance boost.

Having that escape hatch available is incredibly valuable and for me distinguishes the engineers I hold in high regard.

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#43
post #36

Earlier quoted context omitted.

>"Yeah, unfortunately there are people behind the scenes pumping out a whole lot of BS and aggressively manipulating the dev ecosystem with VC dollars" Can you elaborate on this? This intrigued me but I didn't follow your arguments after. Can you give a concrete or specific example?

Yeah OP seems to be indicating that VC or some other actor is influencing the developer "market" to deflate salaries by inflating the supply of devs, at least that's what I'm reading it as, and I'd be very curious to learn more.

I wasn't referring to the wage market, I was referring to the market for developer tools.

However, VCs do deviously manipulate the wage market in early startups by pumping a false narrative about how it takes young (read: naive, as these are virtual synonyms) people to innovate, and how when the company gets really super duper big, the equity will make up for the crappy salary. This trick is used to get young people to accept an apartment split with 6 other "founders" and some ramen, or in the case of early employees, a salary 40%-60% below market, in exchange for a pull on the VC slot machine.

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#44

Don't go there. There's really not a lot of work. But if you must, low level is more a calling than a learned skill. You probably shouldn't be learning assembler. First, compilers are really quite good. Yes, it's possible to beat them (I do) but generally not by much. And not by much ain't gonna put bacon on the table. You can probably get what you need from gcc inline asm() calls. Take a look at the linux sources an…

If one wants to learn to reverse engineer software what choice is there but to learn assembly?

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#45
post #19
post #7

Low level programmer here. This is great but the job market for low level programmers is very small. Recently, while interviewing, I described a thread safe, concurrent queue implementation to a hiring manager and he asked me -- "so how does this relate to big data and ML"?

I struggle to find good low-level devs. It is surprisingly hard to find good C / kernel / network programmers.

And, just out of curiosity, where are you?

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#46

Earlier quoted context omitted.

Yeah, unfortunately there are people behind the scenes pumping out a whole lot of BS and aggressively manipulating the dev ecosystem with VC dollars. You have to wonder what percentage of devs are jumping on these trains out of naivete and what percentage are jumping on out of cynicism, as both are good explanations. The explanation that rarely applies is "this is the best way to solve our problem". None of us should…

>"Yeah, unfortunately there are people behind the scenes pumping out a whole lot of BS and aggressively manipulating the dev ecosystem with VC dollars" Can you elaborate on this? This intrigued me but I didn't follow your arguments after. Can you give a concrete or specific example?

I doubt there's any intentional manipulation going on behind the scenes. It's just VCs throwing their money at the potential next big thing, which is almost never at something low level. That's where the money is, and the tooling + community follows. The rest is just network effect.

Just a few years ago, jquery was huge, and many companies were just starting to hop on the web bandwagon. Many frontend developers who didn't even know javascript could get better paying jobs than low level programmers. I thought that was a sad state of affairs, but that was just where the market was at.

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#47

Don't go there. There's really not a lot of work. But if you must, low level is more a calling than a learned skill. You probably shouldn't be learning assembler. First, compilers are really quite good. Yes, it's possible to beat them (I do) but generally not by much. And not by much ain't gonna put bacon on the table. You can probably get what you need from gcc inline asm() calls. Take a look at the linux sources an…

I agree not to go into low level programming expecting a wealth of job opportunities to suddenly open up, but I wouldn't tell people not to go there at all. Not only is assembly really fun to play around with, I feel like I've gotten a lot out of the bits of assembly I've read/written. Even though I've never written assembly code for work, being able to read the disassembly in gdb has come in handy before. Also, a lot of the subtleties of C/C++ never quite clicked for me until I had an idea of how the generated assembly would work.

It's similar to learning a functional language. I have no idea if I'll ever use Haskell professionally but learning a bit of it has been a good way to see problems and logic differently. I think both assembly and Haskell have made me a better programmer, even if I never become truly proficient in either or use them directly in my job.

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#48
post #21

About career, is low level programming job market that small we see in this threads comments ? I want to be C/C++/Rust programmer. This is quite frightening.

Embedded systems and the Internet of Things need a lot of low-level programming. It's a small job market compared to programming as a whole, but it's not shrinking, and it pays better than web programming.

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#49
post #21

About career, is low level programming job market that small we see in this threads comments ? I want to be C/C++/Rust programmer. This is quite frightening.

It is location dependent. That said, as I mentioned elsewhere in this thread, there's money to be made. Everything has a microcontroller and someone needs to program it. You don't need all the processor architecture knowledge that they're talking about, just a willingness to learn along the way. If you think you like the work, stick with it. Building real things is deeply satisfying.

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#50
post #35
post #6

As someone who can code in C/C++ and was recently looking for work, I don't think someone should learn low level programming for a career. What I would consider simple PHP jobs were easily paying more than C++ jobs. If you look at everyone reinventing the wheel in electron and not caring about performance I don't think the situation is going to get better anytime soon.

This is mostly true for remote jobs.

Yea, it's hard to work remote when you occasionally need $100K in test equipment to do your job
Post reply on HN