La voie du libre

Tags:: linux :: web :: 3d

Je m'amusais à développer une petite librairie permettant de dessiner et manipuler des éléments vectoriels dans une page HTML. L'idée étant de pouvoir, à terme, créer des diagramme interactifs en ligne (UML, base de données, interfaces web...) contrôlés par Javascript (via Mootools. J'ai donc eut deux choix: SVG et Canvas. Vous allez voir à quel point 3 systèmes propriétaires vont me rendre quasiment dingue... Internet Explorer, Adobe et NVIDIA.

Le premier est un langage XML créé par Adobe mais largement implémentés sur différents navigateurs et logiciels de dessins. Seulement Internet Explorer ne le gère pas du tout à moins d'utiliser le plugin Adobe ASV... mais on y reviendra dans quelques paragraphes.

L'autre option, canvas, est une balise prêt à l'emploi et extrêmement rapide... encore une fois Internet Explorer ne le gère pas. Heureusement une solution permet de palier au problème: excanvas pour IE qui est une librairie Javascript permettant de gérer la balise canvas en la transformant en VML (uniquement supporté par IE).

Heureux que je suis, je me dis que canvas est certainement le plus optimal dans mon cas puisque plus largement implémenté dans les navigateurs. Je commence un test simple: créer 2 éléments que l'on peut déplacer et les lier par une courbe de bézier. L'implémentation reste simple à mettre en place, je la teste, elle fonctionne sur IE, Opera, Firefox... Je jubile, je me dis que je pourrais continuer mes travaux chez moi, sur mon PC.

Arrive le soir... je récupère mon test, et je vérifie le fonctionnement. Et là, mon dieu, sitôt que je déplace un élément je vois Firefox ramer. Ce que je n'avais pas remarqué, c'est que mon PC complet commence à ramer. Xorg est à la limite du crash, je vérifie l'état du CPU et je vois un chiffre affligeant: 99% utilisé par Firefox.

Loin de me douter de la raison pour laquelle tout à coup ça ne marche pas, je mets tout sur le dos de Fedora. Étant donné que sur ma Ubuntu au boulot il n'y avait pas de soucis, j'arrive sur le canan IRC #fedora-fr (irc.freenode.net) en grognant que ça marchait très bien sur Ubuntu. Je montre l'exemple en ligne http://blobsallad.se/ en leur disant "non ce n'est pas du flash, c'est canvas ". Choc brutal, la plupart me répond que ça marche très bien chez eux, et 3 autres personnes me disent "ha ouais effectivement moi j'ai le CPU à fond et ça rame".

Investigation, je me pose la question du matériel... et je mets le doigt sur le soucis. Les 3 personnes qui ont le même souci que moi utilisent le pilote propriétaire nvidia. Les autres utilisant soit le pilote "nv", soit "nouveau", soit ils ont une carte autre que NVIDIA. Pour me rendre compte du problème, je passe mon pilote en "nv" et je retourne voir le test... et effectivement ça fonctionne. Plus de 3D, mais ça fonctionne.

Je me dis alors que je vais finalement retourner sur SVG qui, lui, ne fait pas ramer mon PC. Sauf que je sais pertinemment que Internet Explorer ne gérera pas du SVG facilement à moins d'utiliser le plugin Adobe "ASV". Et oui mais voilà, Adobe a arrêté de supporter leur plugin depuis le 1er janvier 2008. Ce qui est fou c'est que SVG a été créé par Adobe.

La raison ? Adobe voulait contrer Flash avec SVG à l'époque où Macromedia était encore concurrent. Sauf que Adobe a racheté Macromedia... et donc SVG passe à la trappe. Façon de parler... puisque Adobe continuera à créer des logiciels qui généreront du SVG. Seul le plugin est abandonné. Dans leur FAQ, Adobe vous annonce en plus de l'abandon qu'ils préféreraient que vous utilisiez Flex (qui est une technologie SWF donc Flash) au lieu d'utiliser SVG, mais en plus qu'ils ne fourniraient pas les sources du plugin ASV.

Voici donc les 3 comparses qui viennent m'empêcher de faire une librairie aisément: Internet Explorer, Adobe et NVIDIA. 3 systèmes propriétaires, fermés, mal fait qui ralentissent le développement de technologies évoluées.

A cause des ce genre de systèmes nous somme en train de perdre des années d'évolution. Étant donné l'en fermement des positions de Microsoft, Adobe, Nvidia etc... nous n'avons pas de pilote digne de ce nom sur Linux pour les cartes Nvidia, pas de possibilité de faire des sites évoluée à cause de Internet Explorer, et nous ne savons pas comment implémenter SVG dans IE à cause de Adobe.

Alors que dois-je faire ? suivre la voie du Libre. Si tous le monde faisait des sites évolués avec des technologies libres, standard et puissantes cela forcerait un peu les éditeurs à suivre le mouvement. Adobe fermant les specs de SWF et ne développant plus de plugin SVG, ils s'assurent de contrôler les technologies multimédia internet. Pourquoi ce serait eux qui contrôleraient ces technologies ?

Pour ma part, j'utilise le PNG depuis des lustres, ne me souciant pas de Internet Explorer 5 et 6 qui ne savait pas utiliser le canal alpha (transparence). Je m'en fichais complètement, je ne voyais pas pourquoi j'allais me priver de cela parce que Microsoft n'était pas fichu de le gérer. Opera, Firefox, Konqueror, Safari... le géraient très bien...

Résultat des courses, beaucoup ont fait comme moi... et aujourd'hui Internet Explorer gère le PNG transparent. Ce n'est pas la raison qui a poussé IE à le gérer, mais au moins on avait raison :)

Alors faisons de même pour le SVG. Développeurs et designers, utilisez le SVG qui est géré partout sauf sur Internet Explorer. Utilisez Canvas, utilisez aussi Firefox, Opera, Linux et arrêtez de tenter de faire du Flash pour une simple animation. Vous n'empêchez pas les gens d'utiliser vos développement et vos design, vous les orienter à utiliser des plateformes plus fiables et plus évoluées. Proposer à vos utilisateur d'installer FireFox, OpenOffice et arrêtons de nous formaliser à "oui mais tout le monde utilise Internet Explorer et MS Office". Ce genre de pensé nous amène à l'enfermement technologiques et l'absence d'évolution. Jamais Microsoft n'aurait décidé de faire un Vista en 3D si Mac et Linux n'avaient pas montré Beryl et Compiz. Jamais il ne s'inquiéterait de leur navigateur mal développé et déciderait de vite développer une version 8 si Firefox n'avait pas 20% de marché (et en constante progression).

Si vous faites cela ,un jour ou l'autre, IE supportera le SVG, soyez en sûr.

Et je souhaite de tout mon coeur que le projet de pilote libre pour nvidia, le projet "nouveau", arrive à ses fins et que plus jamais les distributions Linux ne propose le module propriétaire nvidia.

Je commence sérieusement à en avoir assez de Flash, de .net, de Windows, de Adobe, etc... honnêtement, j'en ai marre.

Ressources:
http://www.adobe.com/svg/eol.html - fin du support Adobe ASV
http://www.adobe.com/svg/pdfs/ASV_EOL_FAQ.pdf - la FAQ de la fin du support ASV
http://nouveau.freedesktop.org - "Nouveau", pilote nvidia libre
http://www.mozilla.org/projects/svg/ - SVG sur les projets Mozilla, Firefox et autres.

Utilisez le code barre pour ouvrir le ticket dans votre mobile:
This ticket on you mobile

Pas de commentaire pour le moment

Ajouter un commentaire
Veuillez répondre à la question suivante : Indiquez mon prénom, Patrice, avec une majuscule en première lettre

Trackbacks

Pour ajouter un trackback (retrolien) sur ce ticket, utilisez cette adresse: http://www.metal3d.org/index.php/trackback/default/tb?id=blog%2F98

Tags

Blog Copix Communication PC Config Fedora Vidéo Humour Autre Web Materiel Informatique PHP Développement Mootools HTML Linux WEB IE CSS Vista Microsoft Sympa XHTML Quizz Widget Klik CWE Voeux Bonne année Musique CCRMA Son Audio MAO Reconnaissance vocale Windows Mac Compiz MacOS Mysql Sun Base de données BD Screenlets Screenlet RPM compiz Ubuntu Live FireFox Derambarsh Facebook media informations Sécurité javascript SSH Commande Marketing concours ipod wii QT Trooltech Nokia Libre Logiciels GPL Attali Gnome Dock Compiler Bench undelete reiserfs recovery recover Thread Serveur Optimisation Server Apache Album RSS Flash Air XML Firefox Blender Opensource Orange Internet LiveBox Animaux Droits Logiciels Libres Google Loi RBS netcat Bash Téléphone Spam 3D NIDIA Standards Widgets Merise UML Streaming Developpement Perl MySQL Firewall Parfeu Bayes Novell Réseau Python LVS Salon FTP Dedibox Chrome Administration IRC Gentoo troll video Nouveauté Finance Etudiant spéctacle OpenOffice Javascript Java Info Eclpise ATI design mootools KDE Bureau Design GNU C Pages Jaunes Fun Bijoux Art mail Admin vmware fedora linux VirtualBox VMWare Qemu KVM vim Grep Fglrx Webkit GTK google web JQuery Coup de gueule coup de gueule Lois SVG Raycaster Canvas Hadopi Desktop Jeux Les Sims développement astuces Screen firefox Mobile Safaru Wine bash commande astuce Wave ooc C++ C# Netbook Hercules Bureautique Twitter Safari W3C chrome kazehakaze midori navigateur gecko webkit Links Liens Pyhon Nouvelles Metal Perso Conférence JDLL PCC Roadsend OOC News Acteur Cinéma Chanteur Seven windows orthographe pcc php jdll Slide Application mysql Html twitter python screen curses SVN Android Gphone iPhone OpenGL MindMap Projet Javascrtip Ajax Guitare Tab Tablature JSON firebug Chromium Iphone Titanium music sound android ogg ogv streaming Arkyne svn subversion gnome VLC Tv encoder ffmpeg Cryptage apple microsoft HTML5 Max Apple code youtube quvi git uzbl webgl chromium

  Catalogue professionnel de musique libre


  • twitter entries...
follow me on Twitter

Valid XHTML 1.0 Strict

tumblr visitor