Slack gives desktop app performance-driven makeover


Bobby Hellard

23 Jul, 2019

Slack has unveiled a new version of its desktop app that’s reportedly faster and more efficient thanks to a complete rebuild of the platform’s underlying technology.

This will be rolled out to users in an update for Slack’s Windows and macOS desktop app. It promises big performance improvements, such as loading 33% faster and using 50% less RAM use than before, according to the company.

Over the course of 2018, Slack worked on shifting the web and desktop clients – which essentially use the same codebase – to a modern stack and away from jQuery and other technologies it used when first launched in 2012. The result is that Slack will no longer create a standalone copy for each workspace and take up RAM for each instance.

There’s a bit of risk-taking in this update as rewriting or changing the code of a platform can be extremely problematic. The desktop version of Slack is its oldest client, and as such, a few internal cracks were starting to show in the foundation, according to Slack engineers Mark Christian and Johnny Rodgers.

“Conventional wisdom states that rewrites are best avoided, but sometimes the benefits are too great to ignore,” the pair wrote in a blog post. “One of our primary metrics has been memory usage and the new version of Slack delivers…”

“These results have validated all of the work that we’ve put into this new version of Slack and we look forward to continuing to iterate and make it even better as time goes on,” the engineers continued. 

Part of the update included adopting React, a popular JavaScript, as Slack’s original user interface (UI) was built using HTML templates. These often need to be manually built whenever underlying data changed and the engineers said it was a “pain” to keep both data model and UI in sync.

The new update has kept the existing codebase but created a more modern section of it that the engineers have called “future-proof” and has been added incrementally. All UI components have been built with React and this code is both “multi-workspace aware” and also loads lazily, without adding unnecessary data – which is why the loading speed has improved.

Since launching, Slack has become the go-to comms app for startups and is often accused of enabling an ‘always-on’ work culture. Such is its popularity, the company recently went public and has become a key rival to some of the biggest tech companies around.

Currently, its main competitor is Microsoft Teams, which recently overtook Slack in terms of users, hitting 13 million – three million more than Slack.