Skip to main content

HTML Import

Comment sont créées les pages HTML ?

Lors de la conception d'un site web, on utilise le langage HTML pour créer les pages. Dans les sites, il y a souvent de nombreuses pages similaires, avec des éléments graphiques identiques: une entête avec le logo, un menu, un pied de page avec les copyrights, etc.

Ces éléments graphiques peuvent être amenés à changer: nouveau design, nouvelles couleurs, texte différent. Toutes les pages devront alors être modifiées.

Si les pages sont hébergées sur un serveur web, ce n'est pas un gros problème car elles sont souvent générées dynamiquement (Common Gateway Interface); on modifie le code qui génère ces pages, à un seul endroit.

Mais dans le cas où on n'a pas de serveur web, on parle alors de pages statiques.

Dans ce cas, le développeur qui veut modifier un élément graphique commun à plusieurs pages, par exemple le texte d'un bas de page, doit corriger toutes les pages contenant cet élément. HTML prévoit des mécanismes d'inclusion de différents éléments (feuilles de styles, images, audio, vidéos, code javascript ou ASP), mais pas d'autres éléments HTML.

Web Components

W3C, le World Wide Web Consortium qui définit les normes propres au web, dont HTML, a bien proposé depuis 2011 un mécanisme d'inclusion de HTML appelé Web Components, mais la majorité des fureteurs refusent encore de s'y conformer !

Il est possible que la situation s'améliore, poussée par les nouveaux fureteurs, mais actuellement la situation est confuse pour le développeur.

Pourquoi tant de retard ?

Web Components est partie d'une initiative de Google. Et devinez quoi ? Si les autres vendeurs de fureteurs trainent des pieds pour s'y conformer, c'est qu'ils boudent pour ne pas avoir consultés. On en est là ! Si cette attitude peut s'expliquer de la part d'entreprises commerciales (suivez mon regard vers Microsoft et Apple), c'est plus incompréhensible de la part de Mozilla (Firefox).

Pour faciliter la transition, Google a proposé une série de fonctions en javascript (polyfills), webcomponents.js, supportés par la majorités des fureteurs. C'est mieux que rien, mais ce n'est pas la panacée non plus, parce que du code interprété sera toujours plus lourd et plus lent que du code natif intégré dans le moteur du fureteur.

Donc, tant que ces petites guéguerres ne seront pas calmées, les développeurs devront se contenter de patchs ou de construire les pages web par des outils externes, et les utilisateurs auront des pages qui s'afficheront plus lentements !

Comments

Popular posts from this blog

Drive replacement for Fostex DMT8-vl

The IDE hard drive on my Fostex DMT8-vl multitrack recorder shows signs of its imminent death; when getting hot, I could not record anymore. Must be said this drive comes from an old Sun Station, and has been replaced because I/O failures were detected by Solaris. It worked at least 5 years in my recorder: not so bad. However, time is now to replace it. The DMT8-vl is not able to handle drives bigger than 8.4 GB. Well, it is able to (the current drive is 15 GB), but only 8.4 GB will be usable. My tought was to use a 8 GB CompactFlash; having no moving parts means no noise, which is quite temptating for a music recording device. I purchased a CompactFlash-IDE adapter on the internet (8$) and I had to build a male-male IDE cable adapter (4$). Unfortunately, this doesn't work. The drive is correctly discovered by the operating system, which proposes to format it ("format IDE?"). After answering "yes", the formating runs pretty fast (faster than on a real drive), ...

Samba: Clients get "system error 1223" (or 123) after a server reboot

Facts: a Linux+Samba server shares anonymously a folder. After a reboot, Win clients could not attach the share drive anymore. C:\>net use \\mylinux\folder Enter the user name for 'mylinux': System error 1223 has occurred. The operation was canceled by the user. C:\>net view \\mylinux\ System error 123 has occurred. The filename, directory name, or volume label syntax is incorrect. The process are present, and tcpdump doesn't provide much information. What's going on? After hours of headscratching, the light came: the firewall was on and no rules for the Samba protocol! Grrr!

Emulation of Fujitsu MB8877 Floppy Disk Controler with Arduino

Update This project was never finished. My initial motivation was that I only had one 5"1/4 floppy disk. Since then, I have been given about thirty floppy disks whose halves are new. The other reason is that my prototype was never recognized by the QX1; the sequencer was simply not booting up. Since I had other sequencers to play with (PC with 2 x MOTU MTPAV USB + MidiSport 4X4 = 20 inputs, 20 outputs, 320 channels), I gave up for now and put back the controler and floppy drive. However, I'm still studying the possibility of completely replacing the motherboard with a Raspberry Pi: check this llink . Context I have a Yamaha QX1 MIDI sequencer from 1984. The backup medium is 5"1/4 floppy disks. This project is an attempt to replace the floppy drive (Canon MF-221) and the Floppy Disk Controler (Fujitsu MB8877a) with an Arduino. Documentation Yamaha QX1 Operating Guide.pdf Yamaha QX1 Reference Manual.pdf Yamaha QX1 Overall Circuit Diagram Part 1...