Muitas apps de Mac estão a ser construídas com Electron
Muitos utilizadores de Mac estão frustrados porque apps de desktop populares como Slack, WhatsApp e Teams são construídas com Electron, argumentando que estes invólucros baseados na web são pesados, demoram a arrancar e desperdiçam RAM em comparação com software nativo do macOS. Outros contrapõem que o Electron reduz drasticamente o custo de desenvolvimento, permite paridade de funcionalidades entre Windows, macOS, Linux e a web, e muitas vezes representa a única forma viável de uma empresa lançar um cliente de desktop. A discussão levanta questões mais amplas sobre se as plataformas devem priorizar eficiência e UX nativa, investir em melhores toolkits multiplataforma, ou aceitar apps cada vez mais centradas na web como o padrão prático.
O Propósito e os Compromissos do Electron
- Muitos argumentam que o Electron é aceitável ou até essencial: permite apps multiplataforma e versões web com código partilhado, especialmente para startups e empresas financiadas por VC.
- A formulação comum: escolha dois de três — preço baixo, paridade de funcionalidades, desempenho. Para apps como Slack, Discord, Spotify, WhatsApp, utilizadores e empresas têm, na maior parte, escolhido preço + paridade em vez de desempenho.
- Outros contrapõem que esta mentalidade de “bom o suficiente” normaliza o excesso e uma UX fraca, forçando os utilizadores a comprar máquinas cada vez mais rápidas para acompanhar.
Desenvolvimento Nativo vs Multiplataforma
- Apps nativas de Mac são elogiadas por serem mais rápidas, mais leves e mais integradas (BBEdit, iTerm, Transmit, clientes nativos do Telegram).
- Mas construir e manter apps nativas separadas por plataforma é descrito como muito caro e organizacionalmente complexo; a mudança de plataformas na Apple (Toolbox/Carbon/AppKit/SwiftUI, Objective-C/Swift) piora isto.
- Toolkit alternativos (Qt, wxWidgets, QML, Avalonia, Flutter, Godot) são mencionados como um “meio-termo”, com alguns a afirmar que podem parecer modernos e ser altamente eficientes, e outros a dizer que ainda “são maus, só menos” do que o Electron.
Desempenho, Uso de Recursos e UX
- Os relatos variam entre WhatsApp a arrancar em ~1 segundo em Macs recentes e demorar 16 segundos ou vários minutos a sincronizar históricos grandes. Uns culpam a app, outros o hardware ou a configuração.
- O Electron é criticado pelo overhead de múltiplos processos e pelo elevado uso de RAM/CPU; as contracríticas observam que algumas apps nativas são igualmente pesadas e que o Electron nem sempre é o gargalo.
- Exemplos: o novo Teams é percebido como extremamente lento; Slack e Outlook são vistos como aceitáveis; Apple Music é criticado como uma app nativa lenta e com bugs, em comparação com o Spotify baseado em Electron.
Separadores do Browser, PWAs e “Use Só a Web”
- Alguns preferem executar serviços como Slack/WhatsApp em separadores do browser por causa das extensões, do fluxo de trabalho em separadores e para evitar instalações de apps de várias centenas de MB.
- Outros valorizam apps de desktop pelos ícones no dock, alternância Cmd-Tab, gestão de apps ao nível do sistema operativo, badges e notificações.
- As PWAs dividem opiniões: o conceito agrada, mas alguns veem-nas como algo que mina ambientes de browser controlados pelo utilizador e que ganha APIs exclusivas. A remoção do suporte a PWA no Firefox é referida com frustração.
Economia e Incentivos de Negócio
- Vários comentários sublinham que apps Electron muitas vezes “competem com não existir de todo”, especialmente no macOS e Linux.
- Coordenar equipas nativas em paralelo, manter paridade de funcionalidades e lidar com diferenças entre plataformas é retratado como grande overhead comparado com uma única stack Electron/Web.
- Alguns sugerem que a Apple poderia atenuar isto tornando Swift/SwiftUI mais multiplataforma, mas duvidam que a Apple o faça.
APIs e Clientes Nativos de Terceiros
- Uma linha de argumento: os serviços não deviam lançar apps nativas de todo; deviam expor APIs completas e deixar programadores independentes construir clientes nativos.
- Exemplo histórico: o ecossistema de apps de terceiros do Twitter floresceu antes de ser restringido pela empresa.
- Objeções: essas apps “wrapper” são aborrecidas, difíceis de monetizar em escala e podem ser prejudicadas quando as plataformas mudam regras de autenticação ou banem clientes não oficiais. Um cliente leve de Slack/Discord descontinuado é citado como vítima tanto da economia como da política da plataforma.
Críticas ao Artigo e à Apple
- Alguns veem o artigo como “boosterismo” tendencioso de nativo para Mac, especialmente por estar alojado no blogue de uma app só para Mac e comparar um editor de texto local com um mensageiro rico e sincronizado na cloud.
- Outros acusam a Apple de máquinas caras e com pouca RAM que tornam os utilizadores invulgarmente sensíveis ao excesso, e notam que as próprias apps nativas da Apple (p. ex., Music, Reminders) muitas vezes parecem lentas ou mal construídas.
- Ainda assim, um subconjunto insiste que a UX nativa é claramente melhor, mesmo que as forças do mercado façam com que muitas apps nunca sejam nativas.