Workplace productivity tool Slack has released an update for its macOS desktop app that boasts a number of performance improvements, including launching 33% faster than previous versions, while also using as little as 50% of the memory to run.
Slack has become a major component of work communications, with it installed on countless desktops, notebooks, and mobile devices around the world. On Monday, the team behind the tool started rolling out the update that includes a rewrite of sections of the app's code to make it work faster while consuming fewer resources.
The latest edition, which is available to download from Slack's website but will be rolling out to users in the coming weeks, features a major rewrite of the user interface elements and other improvements that were worked on over the last two years.
Originally built using HTML tables that required manual rewriting whenever there were any changes in data. Under the new version, the use of the JavaScript framework React now means changes are automatic, and potentially less prone to errors.
Another major improvement revolves around Electron, an open-source GIU framework, and its use in multiple workspaces, as each required a new Electron instance and required more memory. Prompting a complete client rewrite, the new "multi-workspace aware" client now creates containers for each workspace without containing the Electron process itself, minimizing the amount of duplication of Electron processes.
Slack is still an Electron-based app, but the migration to Electron-Webpack helps adjust how it uses resources and eliminates the need to run multiple full Electron instances, making the app less demanding on the system.
Memory usage graphs for earlier Slack versions (left) and the new client under various instance loads
As a result, Slack requires less memory to introduce more workspace instances to the client, allowing it to use up only half the memory of earlier releases. The UI changes also allowed for the startup time to improve by 33%, as well as making it ten times faster to start calls with other users.
The way Slack caches conversations has also changed, with clients retaining more of earlier conversations. In earlier versions, the conversations weren't retained for very long, leaving some users from being able to see threads from earlier sessions when hamstrung with intermittent internet access, but now the client holds more session data.
The update is not universally available. It will take several weeks for all clients to get the update.