I am looking for advice on how to promote libraries I write for Arduino, as I believe they would benefit the community.
I am looking for how to find people interested to get them reviewed, critiqued, and vetted if reviewers agree they're among the better alternatives, and finally promoted so the community can find and use them, and hopefully contribute to them too.
I've been playing with AVR Arduino for 5+ years and making code optimized libraries for myself and tiny communities. I am a comparch engineer but my carreer has been in non-public domain programing so I have not yet figured out how to effectively contribute and advertise in the public domain.
About my goals:
Being idle with Covid-19, I've decided to write a library to simplify hooking up devices and sensors to the Digital I/O pins to get back in coding for Arduino. This means a simple interface to support all switches, knock sensors, ultrasonic sensors, encoders, with or without interrupt handlers and debounce logic. I write with the mindset the Library user's code should be obvious to read. I also performance oriented. Since I care a lot about minimal memory footprint for my projects, I code those libraries with compiler constant folding in mind to minimize program and RAM space usage. For example the library has an AVR mode that accesses ports directly instead of arduino pin numbers going through PROGMEM tables that don't optimize away causing code bloat and slower performance.
So right now, I'd like to promote this library: https://github.com/sonyhome/DigitalIO
Before, my main focus has been on writing a programmable LEDs library focussed for optimal memory management since I play a lot with AtTiny85 chips, and got some use through the LED community. However I'm interested in how to promote less fan-based libraries to AVR and Arduino communities, as I have made a few already (task manager, Serial console menu manager, LED library, etc.) and plan to do more of the same, next being Analog I/O devices. Simple Digital and Analog device support are warm up exercises to get back into writing better code, better documented and presented libraries before I tackle bigger libraries, like a revamp of my LED library and a PWM motor framework for cosplay builds (another attempt to make a simple framework).
I got into writing libraries because I have found that the libraries available on Arduino are often any combination of narrow scoped, kludgy, or inefficient code. There is merit in having so many contributions and working code for almost any chip or device. However, the end result is you often have to hack up code together for projects or scale up to more power hungry controller boards.
Engineers, even in my circle often solve scaling issues with bigger hardware instead of better software, because nobody wants to spend the time to optimize code. Hobbyists in my circle seem to rarely make reusable code and focus on slapping stuff together for one build. As I make projects I like to design for reuse hence why I make libraries. I'd love to see them used by others, and maybe have people contribute.
Anyways I would appreciate any help because I'd love to see this work taken advantage of more broadly. :)