3 ms·
My limited experience with bare metal programming tells me they are not. This is just a different abstraction layer to learn. Often low level abstractions are m
by pkolaczk 7y ago
My limited experience with bare metal programming tells me they are not. This is just a different abstraction layer to learn. Often low level abstractions are much simpler and less broken than high level programming. Even if something goes wrong, you can plug in a logic recorder / oscilloscope / led (!) and in minutes you know what's wrong. But this doesn't work if you have 10 semi-broken layers below.
I have 15+ years of experience in hl programming and almost none in low level, yet I feel like at home with bare metal stuff. And it is a lot of fun as well.
- gdy 7y agoI wholeheartedly agree with you, it surely is fun, especially when it is a toy project! As for the systems programming please see my answer to a sibling comment.
- whateveracct 7y agoThis comment is a lil passive aggressive. "Toy project"
- gdy 7y agoIt isn't, I meant it. And you misuse this word, try googling what it really means.
- ClumsyPilot 7y agoIf I take your statement at face value, it would appear that all the levels of abstraction we have introduced have made life worse?
- pkolaczk 7y agoTo some degree, yes. They allow to write software much faster, but in order to be truly proficient, you need to know a lot of what's in the layers below anyway. And when writing in a high level language, there are many more layers below you than when you write a device driver. So overall you have more things to keep in your head, and more things to learn. But if you do, you gain ability to move faster. So it is not necessarily worse, but just a trade-off. Also, at a high level, you typically solve different, bigger/harder problems. Someone may use Python to build a statistical model, but using a simple language that even kids use at school, doesn't mean the task would be easy. This is also reflected in salaries here where I live - embedded devs don't earn more than application devs.