> Then you weren't interested in hardware programming; not one iota.
That is a bit of a leap. I read what (s)he meant as more "interested in programming hardware" - as in controlling hardware and making it do things. That doesn't mean you need to be interested in the low-level hardware side of things to be interested in making the hardware do stuff.
Failing to learn what it takes to solve a problem you have is not a viable business case. One doesn't simply decide:
"no this product i want to exist is impossible because I can't be bothered learning something new or because I have a non-technical and non-financial hipster-hued-bias against the existing commoditised technologies that lead me be able to solve the problem."
if you have something you need to get done for work or otherwise, you use the most appropriate product.
if you "want to learn about hardware" you use the tools and resources that presently exist or make you own. Otherwise you do not want to learn about anything, you just want to screw around so you can tell your boss you are a hardware expert in ruby or some bollocks.
Ok.
> but always hated the languages I had to learn to do it properly (java, c++, c, assembly, etc.)
Then you weren't interested in hardware programming; not one iota. You were interested in playing around in fashionable languages.