- Electron est un framework basé sur HTML, CSS et JS qui permet de créer des applications desktop compatibles simultanément avec Windows, Mac et Linux ; de nombreuses applications comme Slack, Discord et VS Code l’utilisent
- Cependant, comme chaque application embarque séparément le moteur Chromium, leur taille est importante, des problèmes de latence et de non-réponse surviennent, et l’intégration aux fonctions de l’OS reste limitée
- Avec l’arrivée des agents de codage, capables de générer du code natif par plateforme à partir de spécifications et de tests, les avantages d’Electron semblent diminuer
- Mais en pratique, les agents ne peuvent automatiser que 90 % du développement, et les 10 % restants liés aux cas d’exception et à la maintenance restent difficiles et dépendent encore fortement de l’intervention humaine
- Ainsi, comme le montre l’application Claude d’Anthropic, il existe toujours des raisons pragmatiques d’utiliser Electron, même avec les progrès des technologies d’agents
Avantages et limites d’Electron
- Electron permet de créer des applications desktop multiplateformes avec des technologies web
- Une seule base de code permet de prendre en charge Windows, Mac et Linux
- Le code d’une application web existante peut être réutilisé, ce qui améliore l’efficacité du développement
- Ses inconvénients incluent une augmentation de la taille des applications et une baisse des performances
- Chaque application intègre son propre moteur Chromium, ce qui porte souvent la taille à plusieurs centaines de Mo
- Cela entraîne des problèmes comme une réactivité moindre et une intégration insuffisante avec les fonctions du système d’exploitation
- Certains de ces problèmes peuvent être atténués par des optimisations propres à chaque OS, mais les avantages structurels d’Electron n’incitent pas réellement à aller dans ce sens
L’émergence des agents de codage et les attentes qu’ils suscitent
- Récemment, les agents de codage ont montré leur capacité à automatiser des implémentations entre différents langages et plateformes à partir de spécifications (
spec) et de tests
- En théorie, un seul ensemble de spécifications et de tests permettrait de générer des applications natives pour chaque plateforme
- Cela ouvre la possibilité pour des équipes réduites et très ciblées de proposer des applications natives hautes performances sur un marché étendu
Le cas de Claude et d’Anthropic
- Anthropic a implémenté, avec un agent de codage, un compilateur C basé sur Rust, mais s’est heurté à des limites dans la phase finale
- Lors de l’ajout de nouvelles fonctionnalités ou de la correction de bugs, des régressions cassaient régulièrement les fonctions existantes
- Le résultat était impressionnant, mais jugé inadapté à un usage réel
- L’application desktop Claude est elle aussi basée sur Electron et est décrite comme une application lente, pleine de bugs et volumineuse
La difficulté des « 10 % restants »
- Les agents de codage peuvent traiter rapidement les 90 % initiaux du développement, mais
la gestion des cas d’exception et la maintenance en environnement réel restent complexes et nécessitent encore une intervention humaine
- Dans un environnement utilisateur réel, les scénarios imprévus s’accumulent et le développement ne se termine jamais vraiment
- Si l’on crée une application distincte pour chaque plateforme, les bugs et le périmètre de support sont multipliés par trois, ce qui alourdit fortement la maintenance
- Electron atténue en partie ce problème grâce à un wrapper commun
Pourquoi Electron continue d’être utilisé
- Même si le développement piloté par spécifications devient possible, le coût des 10 % restants et la charge de maintenance demeurent
- Malgré les progrès des technologies d’agents, l’avantage d’une base de code unique d’Electron reste concrètement valable
- À l’heure actuelle, Electron est encore considéré comme un choix rationnel
- Les agents de codage progressent de manière spectaculaire, mais ils restent encore insuffisants comme solution de remplacement complète
Aucun commentaire pour le moment.