← Back to context

Comment by trsohmers

16 hours ago

Software people, in my very direct experience, are terrible at hardware... While in jest, I do think most software engineer's understanding of hardware abstractions is pretty poor and does disservice to the hardware they run on.

I know between Moore's Law and Gate's Law which one I would prefer to be the industry standard... https://en.wikipedia.org/wiki/Andy_and_Bill%27s_law

Generally speaking, I think both are true. Most people seem to have an affinity for either hardware or software, but rarely for both. Those who do are extremely unique. I don't mean that as an insult to anyone, just as an observatin having worked in both (and personally am much better at software than hardware, even though I enjoy both).

  • Hardware and software have VERY different deployment cost functions and lifecycles. Having "affinity" for one requires a mindset not really suitable for the other and being able to juggle mindsets, especially short vs long term focus is rare in itself.

  • I agree - at university there were software people and hardware people and a small number who studied mechatronics (hardware and software). But even the mechatronic people were really hardware people who just tolerated software.

  • I find both interesting but have been working in software for over a decade now.

    Honestly, the thing that pushed me into software dev was the fact that hardware tools were absolutely garbage. Verilog felt like a joke of a language designed to torment rather than help the user.

    • Verilog is not the best and that’s not even the worst part - tools like ISE/Vivado and Quartus are even worse!

      It’s really amazing that at least there are some fully open flows for FPGAs these days, unfortunately they don’t support system Verilog. (I think this is still the case?)

    • Yeah at university we had to do some hardware stuff in our software course. I know there were better debug tools available as some students purchased them but playing with microprocessors was no fun.

I am deeply aware of software people being crap at hardware having worked in embedded for much of my career.