In this meeting, the State Changers troubleshoot an issue with a chart that is displaying incorrect data, potentially due to a 'race condition' within the code. The issue was found with the value 'days present' which was showing up as -999, instead of the expected value of 6. A race condition happens when the behavior of the software depends on the relative timing of events, such as the receipt of data requests.
The issue appeared to be arising from the fact that the 'days present' value was only being updated at a certain point in the code. It was dependent on two inputs, the order of which couldn't be guaranteed. To solve this, they discuss adding a check for both dependencies, and updating the data only after both have returned.
They touch on the use of the Xano database in addressing this issue, discussing how the data is organised and queried. They also considered the hierarchical structure of the code, data dependencies, variable values, and how code responses are triggered.
In addition, best practices for creating clear and effective data charts were discussed, with a recommendation to read Edward Tufte's book "The Visual Display of Quantitative Information" for more insight into data visualization best practices.
This meeting would be useful for someone looking to understand race conditions in code and how to avoid them, as well as those interested in data visualization best practices.
(Source: Office Hours 9/19/2023 )