Making Slack Faster By Being Lazy: Part 2
Feb 2, 2017

Summary
This post details the refactoring of the Slack desktop client to implement lazy loading of message history, avoiding the need to fetch all messages upfront. It also discusses the lessons learned from aggressive caching in LocalStorage, highlighting its synchronous blocking I/O, storage size limitations, potential for database corruption, and added complexity from compression and web workers. The post concludes that LocalStorage was ultimately detrimental to performance and led to increased complexity, prompting the decision to ditch message history from LocalStorage and store only ephemeral, user-created data.