As data accumulates, so do the requirements placed on devices that process them. To make sure we keep the application responsive while user accounts grow, we constantly monitor changes made to the application to keep performance regressions in check.
Since the introduction of Schedule Beta, we’ve focused on performance for mobile devices as our primary target. This means that higher-powered devices automatically perform better, as we set our targets within very narrow performance constraints, including making sure that any feature introduced scales appropriately with the size of the account.
In this context, the performance bottleneck related to filtering projects and clients in the booking editing dialog. For accounts with a large amount of items in the list, filtering on every keystroke with fuzzy matching can be quite expensive and prohibitive on slower devices if you’re not careful. Thankfully, applying a bit of data science helps keep the algorithmic complexity low enough to make real-time filtering possible.
For customers using SSO, we’ve also improved the handling of user permissions and the authentication experience, which should help with some of the edge cases that users have reported so far.
All in all, we’ve deployed 51 changes since our last update and here are the highlights:
- 👓 We tweaked the rendering of the Schedule to improve the sharpness of text while using momentum scrolling. Super green!
- ⚠ We improved validation and time estimation while creating, editing, resizing and moving bookings.
- 🐛 We fixed a bug where archived projects and clients would not be shown as assigned on bookings.
- 📜 We added nested sorting on project and client selectors to make searching more intuitive, and significantly improved performance.
- ⌛ We’ve decreased the refresh time of background data fetching in the Beta.
- 🔄 We fixed handling of concurrent updates to bookings when experiencing high latency and low bandwidth.
- 🔐 We’ve identified and fixed a number of issues when using SSO to manage login and user permissions.
As we continue to close the feature gap between the main application and the new Beta, we’re getting close to announcing the sunset period where Schedule and Schedule Beta will continue to exist side-by-side for a time. You will still be able to use the old version until the sunset period ends, at which point we will be shutting down the old application and Beta will become the main application.
As always, have fun and we’ll see you in the next update!