Improving our application's cross-platform compatibility
Our application does pretty well across platforms, but there are some things we can do to improve it:
- First, our application stores its preferences in the user's home folder, which is not ideal on any platform. Most desktop platforms define specific locations where configuration files should be placed, so we will fix our application to use those for the
abq_settings.json
file. - Second, we're creating our CSV files without specifying any encoding; if a user inserted a Unicode character (say, in the
Notes
field), file saving would raise an exception and fail on non-Unicode platforms. - Finally, the current menu structure does not really come close to following any of the human interface guidelines we've discussed. We'll implement separate menus for each platform to ensure users have a UI that is consistent with their platform.
Let's get started!