3 ms·
> It's not like they're implementing thousands of native controls or user interface components This is not true in any way. Slack also have workspaces, channel
by TranquilMarmot 5y ago
> It's not like they're implementing thousands of native controls or user interface components
This is not true in any way. Slack also have workspaces, channels, notifications, video calls, file sharing, admin tools and probably even more features. It's not just IRC.
Maybe writing a web-based app is lazy... except when you have to write native apps for macOS, Windows, Linux, Android, and iOS, and some people still need access via a browser. And each one has different ways of displaying images and videos and doing calls and handling file access. Now you have 5+ apps that you're maintaining, each with their own dedicated team since each one is unique. Want to roll out a new feature? Cool, now you have to write it 5 times across 5 teams. Good look coordinating that.
I know there are technologies that let you share code across all of the different native clients. But a webview wrapped in i.e. Electron handles most of it for you! Why would you do it any other way except to appease people who complain about bloat?
- throw10920 5y agoThis is a bad argument that is factually incorrect in some ways. Slack already has three different clients - a web one (which includes the Electron desktop wrappers), one for Android, and one for iOS. They've already demonstrated that they have the engineering resources and coordination to develop and maintain three completely separate clients (albeit poorly) - so adding a fourth one (native C++ codebase using Qt that would work well on Windows, Mac, and Linux) would not be the Herculean engineering effort required to go from one to five, and your implicit assertions that (1) they currently only have a single client and (2) that a different client would be required for each of Windows, macOS, and Linux are simply false. > But a webview wrapped in i.e. Electron handles most of it for you! Why would you do it any other way except to appease people who complain about bloat? Because (1) performance (2) accessibility and (3) stability - the things that users actually need. Slack's performance is extremely bad and you get people constantly complaining about it; their accessibility is janky and suboptimal because they're reinventing desktop UI controls on the web; and their applications have repeatedly broken (such as the disastrous input box rewrite[1]) because they're trying to do things with the web platform that it wasn't meant to do. (in case you're wondering how using a desktop client would help - you expose a "lite" version of your functionality in the web application and put the full functionality in the desktop tool) You're using "appease" as marketing-speak for "fix the very real problems with their web application that people constantly complain about". Slack should fix their application because it isn't serving the users well. Performance problems are functionality problems. As it stands, Slack is showing us that they aren't even pretending to care about their users - they're just trying to make a buck selling to large organizations. [1] https://news.ycombinator.com/item?id=21589647 https://news.ycombinator.com/item?id=21589647