Vision d'une application Web de CAO à code source ouvert
Aujourd'hui, le marché des logiciels de CAO (conception assistée par ordinateur) pour l'architecture est essentiellement fermé et présente une structure oligopolistique. Quelques grandes entreprises dominent le marché. Dans cet article, j'ai l'intention de présenter une vision alternative de l'avenir d'un écosystème open source.
Marché de la CAO architecturale
Aujourd'hui, le marché des logiciels de CAO architecturale est dominé par des sociétés à code fermé comme Autodesk ou Nemetschek. Ils sont chers, difficiles à utiliser et ne fonctionnent souvent que sous Windows. Outre les frais d'abonnement élevés, les utilisateurs doivent être formés de manière approfondie. Les logiciels de CAO professionnels sont donc hors de portée de nombreux architectes plus pauvres, notamment dans les pays en développement.
Technologies Web habilitantes
Ces dernières années, les navigateurs ont été améliorés avec de plus en plus de technologies qui sont essentielles pour offrir une bonne expérience utilisateur dans une application de CAO Web.
Ces technologies sont les suivantes :
-
WebGL: WebGL (Web Graphics Library) est une API JavaScript permettant d'obtenir un rendu graphique 3D et 2D très performant. Elle est essentielle pour offrir une expérience utilisable dans le navigateur. En particulier, lorsque l'utilisateur a des cartes GPU installées, les performances de rendu des graphiques dans le navigateur peuvent être bonnes avec l'aide de WebGL.
-
WebAssembly: WebAssembly est un langage de type assembleur de bas niveau pour le navigateur. Il permet de programmer les parties du programme de CAO dont les performances sont critiques dans un langage de bas niveau, par exemple C++ ou Rust. Cela permettra d'accélérer les performances de l'application de CAO.
-
Websockets: Les websockets permettent d'ouvrir une communication interactive bidirectionnelle entre le client et le serveur. Cela permet de créer des fonctions de collaboration où plusieurs utilisateurs peuvent travailler ensemble sur une conception en même temps.
-
Web Workers: Web Workers peut exécuter des scripts en arrière-plan. Cela pourrait être utilisé pour des calculs complexes où l'interface utilisateur reste réactive.
-
SVG: SVGs (Scalable Vector Graphics) est un langage de balisage pour décrire des graphiques vectoriels bidimensionnels. Cette norme pourrait être utilisée pour importer et exporter des dessins.
Vision de l'avenir
J'envisage un produit de CAO open source basé sur le Web qui deviendrait la base d'un écosystème de modules complémentaires. Ces modules complémentaires pourraient suivre la philosophie de Linux, qui consiste à ne faire qu'une seule chose et à la faire bien.
Mon point de référence ici est l'excellente application Blender, une application de bureau 3D à code source ouvert. Les utilisateurs peuvent adapter et créer des modules complémentaires, ce qui a donné lieu à un vaste marché d'extensions. De même, une application de CAO basée sur un navigateur pourrait facilement permettre cette extensibilité.
En outre, il pourrait y avoir une place de marché comme Google Play pour les extensions du programme de CAO. Les logiciels de CAO open source sont particulièrement adaptés aux utilisateurs des marchés en développement qui ne peuvent pas se permettre les prix élevés des logiciels propriétaires.
Conclusion
J'espère qu'avec cet article, il est devenu clair que le temps est venu de changer le marché de la CAO architecturale. Si vous êtes d'accord, laissez-moi un message.
Références
-
Blender: https://www.blender.org
-
WebGL: https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API
-
WebAssembly: https://developer.mozilla.org/en-US/docs/WebAssembly
-
Websocket API: https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API
-
Web Workers: https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers
Photo de couverture : Photo par Scott Webb sur https://unsplash.com/photos/-udZnjsCzsE
Publié le
7 janv. 2023