Electrons, Holes, and other wacky thoughts.

AFT Stereo Camera

For the last 5 years, I was a co-founder at Advanced.farm. One of the most rewarding experiences was building the vision system for our fruit harvesting robots. This was a challenging, multi-disciplinary project that required clever solutions to meet the demanding needs of life on a farm.


Firefox Customization - URL Bar

Firefox allows customization of the browser’s look and feel. The userchrome.org has a bunch of content about how to make this change. See this page for creating a userChrome.css file. Don’t forget to enable customization by setting toolkit.legacyUserProfileCustomizations.stylesheets configuration to true. Add content to the userChrome.css file. For example, increasing the size of the URL bar’s font. #urlbar {font-size: 20pt !important} How to find more information about what can be tweaked?


Firmware Testing

Continuous integration (CI) is the gold standard for most software development processes today. This generally means that for every change made to a piece of software, an automated build and test sequence is performed and the results are published for all team members to see. This extremely useful for catching and correcting many bugs before they get to production.

For most of my career in embedded systems, achieving CI for firmware source code has been challenging. Unit and integration testing has always required speciallized hardware and software. It has often been flaky, incomplete, and/or expensive.


Firmware Debugging

Firmware - like most software - tends to require testing to shake out all the bugs. While a typical software developer might reach for a container, a fuzzer, debugger, and/or their favorite mocking framework to begin testing an application, testing firmware tends to require more finesse.


Carl Allendorph is an electrical engineer in San Diego, CA.