3 ms·
I remember when the Arduino became popular, my first reaction was "why do I need all these extra layers, just let me program my ATMEGA328 in good ol' C and call
by allo37 5y ago
I remember when the Arduino became popular, my first reaction was "why do I need all these extra layers, just let me program my ATMEGA328 in good ol' C and call it a day".
I guess it all boils down to finding the right level of abstraction that you're comfortable with.
- guitarbill 5y agoI largely agree, but I think Arduino is (largely) good because it removed complexity, and not necessarily on the coding side. E.g. pretty sure you can still just write C for a specific chip with Arduino. I've dropped back to reading an input register directly, either because `digitalRead`/`digitalWrite` is slow, or I want to read multiple inputs in parallel. So maybe here, the layers can be a hindrance, sometimes (but it's certainly more complex). I also remember the development experience before Arduino. Proprietary compilers/toolchains, awkward programmers and ISPs, and expensive eval boards or the xtal being weird on breadboard. To think AVR chips were some of the easiest to get into. I'll take a Mini/Micro/Teensy + Arduino any day for casual projects, despite some of the extra layers.
- allo37 5y agoYeah the Arduino libraries are a big help and let you get off the ground quickly. But the point I'm trying to make is that unless you're manually translating assembly instructions into opcodes, you're relying on some layer of "magic" somewhere to make your life easier. I don't really consider it "less complex" so much as "hiding complexity that most mere mortals won't care about".