Looking back at 2020
In my list for last year, I focused on timekeeping and time measurement. We did do two out of the four goals I mentioned: the built-in time module now works from a real-time clock peripheral, and I implemented minimal time-zone handling for CircuitPython, though it's not sufficiently polished to add to the community bundle.
Together, these enabled one of my 2020 projects, a CircuitPython clock that is accurate to within better than 1 second per month, handles my local time zone rule, and has a battery back up so it doesn't need to be set after power is lost. I never blogged the full project, but there are bits and pieces scattered about: 1 2 3 4
On the other hand, the things I'm proudest of helping with in 2020 didn't even figure on my list—they were unanticipated. The two items I'm thinking of are bringing Zoltán Vörös's ulab into CircuitPython, and making it much easier for users to contribute to CircuitPython translations by setting up Hosted Weblate.
Looking forward to 2021
This year, I don't want to be so closely focused on features that just a few people may be interested in. Also, many of the 2020 submissions I was most struck by were those that focused more on the human side than on the technical. With that in mind, here are some of the broader goals I think we should set:
- Support at least one new microcontroller family
- Continue to help people grow into the roles of reviewer and contributor
- Spotlight or create more "how to" video content around CircuitPython, especially for the more complex libraries
There are also some pain points that we need to deal with sooner or later, but in many cases the right idea hasn't come up yet. We should keep an eye out for ideas on solving these problems:
- Increasing time & complexity to build CircuitPython core
- Risk of being spread too thin by multiple in-progress ports
- No automatic way to gather items from the Bundle for a particular application
- Wireless-enabled devices deserve a pure Wi-Fi or Bluetooth development workflow
- There's an increasing need for a path manipulation library
- We should standardize the location of common files like fonts, icons, and sounds
- Read/write storage that doesn't interfere with access to CIRCUITPY from a host computer
Finally, some personal goals I have related to CircuitPython and projects in general:
- Add an antialiased font format to adafruit_bitmap_font
- Design and fabricate PCBs for my projects
- Improve my skills at 3D printed enclosure design, including learning FreeCAD
- Share the PCB and 3D printable designs
Spilling the beans on one particular project I'd love to do in 2021, why isn't there a MagTag-like podcast player appliance running CircuitPython? There are a few missing pieces before this becomes possible, but I think we could—and should—do it.
I fully anticipate that once again the best things in 2021 will be the ones I
didn't even imagine. I can't wait to see what this community builds together
in 2021.
Entry first conceived on 2 January 2021, 15:30 UTC, last modified on 2 January 2021, 16:49 UTC
Website Copyright © 2004-2024 Jeff Epler