Taking a look at the recent commit history, it's obvious that I've been finding a ton of bugs. Most have been very simple and easy to fix, but considering how many I've run into without actually doing any formal inspection of any code other than controller and nav, it seems implausible that there aren't significantly more bugs in the codebase that I haven't exercised.
If our on-bot time (like this afternoon) is going to be productive, we need to have significantly more verification of our code. Full-system tests are very hard to write, but unit tests for your individual functions aren't. Most of the bugs I've fixed would have been found simply by executing the code at all, which even the most basic unit tests would accomplish.
I know everyone's busy, but obviously we all really want to have the best possible bot when we get to SECon, so please, go all-in on this final push with us and let's write software that can make our hardware successful.
Taking a look at the recent commit history, it's obvious that I've been finding a ton of bugs. Most have been very simple and easy to fix, but considering how many I've run into without actually doing any formal inspection of any code other than controller and nav, it seems implausible that there aren't significantly more bugs in the codebase that I haven't exercised.
If our on-bot time (like this afternoon) is going to be productive, we need to have significantly more verification of our code. Full-system tests are very hard to write, but unit tests for your individual functions aren't. Most of the bugs I've fixed would have been found simply by executing the code at all, which even the most basic unit tests would accomplish.
I know everyone's busy, but obviously we all really want to have the best possible bot when we get to SECon, so please, go all-in on this final push with us and let's write software that can make our hardware successful.