Making Slack Feel Like Slack
Jun 2, 2016

Summary
This post details the introduction of libslack, a C++ library designed to consolidate client-side logic for caching, syncing, and hiding latency. It describes how libslack is being integrated into mobile (Android, iOS) and desktop clients, and how a server version of libslack is being deployed in edge POPs to act as an application-aware cache. This enables a unified communication protocol between clients and the edge, and between the edge and the mothership, improving caching strategies and reducing round-trip times. The post also discusses the challenges of managing diverse client codebases and the benefits of strong typing and asynchronous APIs provided by libslack.