1. 3
  1.  

  2. 15

    Radical idea not mentioned: build a client using something other than a web browser runtime?

    1. 3

      My exact thought.

      I think web has become so ubiquitous that many FE engineers wouldn’t even consider writing a GUI in anything other than html/js/css. The popularity of tools, frameworks, conventions, experience, docs, community, etc all built around web far outweigh native as far as I can tell. On the other hand, projects like React Native help to bridge this gap, so I’m not sure what the reasoning is.

      1. 2

        Some is just ease of cross platform support I think. If they were writing for one platform it’s not clear they’d pick the web stack just for its tools/community. But Slack supports six client platforms: Windows, Linux, Mac, Android, iOS, and webapp. The solutions for that are either to write six different native apps, or use web tech, more or less. There’s also, conceptually, the category of cross-platform GUI toolkits that compile to code native for each platform, but those projects seem to be far from healthy these days (Tk? wxWindows?) and I don’t believe any has been extended to support all six of those platforms.

        1. 2

          I can appreciate the time savings of just doing things once, but for a company like slack, they should be able to toss a few billions at another dev team or six.