3 ms·
I think is time to get a different class of this kind of devices. In the software world we have packages/libraries for pretty much everything. In the hardware w
by pbalau 4y ago
I think is time to get a different class of this kind of devices. In the software world we have packages/libraries for pretty much everything. In the hardware world, in the hobby prototyping part, we have these "monstrosities" that can do everything, but not that great. I want a barebone arduino: a connector for power (let me deal with providing clean 5v), a connector for programming the mcu, a connector for external clock and a built in resonator/quartz. Make this in a easily breadbord-able package and off I go.
Obviously I could "build" the barebone arduino on a breadboard, but that means I have to redo the same thing every time I need to add a new mcu to my prototype. Or I could design and build the thing myself. I did this in the past, I've spent quite a few evening designing the thing, then ordered parts from China, then spent even more time soldering the things together. Just to piss off my cat that took a very long wee in the box I was storing the boards.
- rollcat 4y agoI think the success of Arduino in the hardware world can be explained in a similar way, as the relative success of "command line app frameworks" like Click[1], or even much lighter-weight libraries like argparse[2]. You absolutely can get away with using just getopt[3] (and people experienced with it will likely strongly prefer it). However certain factors such as a more declarative API, a nice logo, the existence of an ecosystem (even if you're not actively drawing from it), an official "branded" forum, etc can all play into picking a more complex solution, with more baggage you don't need, certain oddities that may throw users off, etc. [1]: https://click.palletsprojects.com/ https://click.palletsprojects.com/ [2]: https://docs.python.org/3/library/argparse.html https://docs.python.org/3/library/argparse.html [3]: https://man.openbsd.org/getopt.3 https://man.openbsd.org/getopt.3, https://linux.die.net/man/3/getopt https://linux.die.net/man/3/getopt