Bilbiothèques de font libres à utiliser avec @font-face

Aujourd’hui, les services proposant l’hébergement de polices de caractères non standards pour enrichir nos sites web sont de plus en plus présents. Ils permettent généralement d’inclure sur votre site une police (à l’aide d’une API, en achetant une licence, …) non web que vous utiliserez ensuite avec la directive CSS @font-face.

Il existe deux types de services de ce type:

  • Des services (gratuit ou payant) permettant d’utiliser une police à distance sur un ou plusieurs domaines (Google Web Font, Font Spring, …)
  • Des librairies de polices dans lesquels vous choisissez et acheter une police utilisable sur le web (format de fichier compatible, CSS à copier coller, …)

 

De mon côté je m’intéresserai principalement aux premiers…
Ils permettent aujourd’hui d’intégrer des polices non système sur le web et ainsi ouvrir de nouvelles perspectives de design de manière beaucoup plus simple que des librairies comme Cùfon ou Typeface.js. En effet ces librairies permettant l’émulation des polices sont complexes à utiliser sur des textes longs (espacement de caractère, de ligne, hauteur de texte, …) et mettent généralement un certain temps à s’afficher du fait que le texte est remplacer en javascript pendant ou après le chargement de la page.

En utilisant @font-face l’internaute télécharge la police de caractère dans son cache navigateur et le rendu est ensuite instantané lors de l’affichage de la page! Google propose aussi une API (WebFont Loader) permettant d’utiliser la plupart de ces services et charger des polices à distance de manière simple et rapide.

 

Il existe plusieurs site proposant ce système de police, une liste descriptive assez complète a été réalisée sur le blog sprungmarker.de: http://sprungmarker.de/wp-content/uploads/webfont-services/

Plivo: Un framework simple pour intéragir sur un serveur web avec un téléphone

Après avoir créé chacun une application web interagissant avec FreeSwitch (un logiciel gratuit permettant de faire de la VoIP) deux développeurs se sont aperçus qu’il était vraiment très compliqué de créer des applications fonctionnant avec de la téléphonie. Ils ont donc  mis leurs efforts en commun pour créer un FrameWork capable de simplifier ces interactions. Ils se sont alors inspirés de Twilio pour créer un outil pratique et simple…

Cet outil développé en Python s’appelle Plivo et est accessible sur le site officiel http://www.plivo.org. Après installation d’un service de VoIP, il faut lancer l’exécutable Plivo et ainsi pouvoir interagir facilement avec!

 

Un dépôt github permet de récupérer les différentes sources nécessaires au bon fonctionnement (https://github.com/plivo) et un guide de lancement précis permet de démarrer très vite le service (http://www.plivo.org/get-started/)

Ce système ouvre des perspectives de développements intéressantes car il permet à travers des appels REST XML de contrôler des appels téléphonique envoyés au serveur. Par exemple, vous pourriez contrôler des actions sur votre site à travers un simple appel téléphonique.

Pour le moment ce système s’intègre avec FreeSwitch mais à vocation à s’ouvrir et interagir avec XMPP, Asterisk, …

 

De mon côté j’imagine plusieurs applications à ce genre de technologie, et vous seriez-vous prêt à développer des applications utilisant ce genre de FrameWork ?

Comment écrire du code non maintenable

Un développeur a trouvé utile de décrire dans un article une liste de toutes les mauvaises pratique de développement qu’il connait…

Son article est assez complet et les présentes de façon humoristique. Il est toujours utile de se replonger a l’intérieur car même si certaines sont de pures abérations d’autres nous rappellent à l’ordre sur nos façon de faire habituelles. Une bonne remise en question pour progresser, à lire absolument!

Vous trouverez toutes ces informations ici: http://www.thc.org/root/phun/unmaintain.html

L’IPad et les problèmes de redimensionnement des images de fond

Sur plusieurs sites j’ai récemment eu à réaliser des développements de compatibilité IPad.

J’ai rencontré plusieurs problèmes sur des tailles et des positionnements de bloc, des petits décalages, etc. Rien de très complexe et surtout plus facile à corriger que sur Internet Explorer 6 ou 7.

Certaines pages utilisaient une image de fond générale, image apparaissant derrière tout le site. Sur l’IPad je n’arrivais pas à avoir le même rendu que sur mon ordinateur portable et ne comprenait pas pourquoi jusqu’au moment ou j’ai remarqué que l’image de fond était redimensionnée. De façon assez étrange, l’IPad interdit aux éléments visibles de sortir du cadre de vision.
J’ai essayé plusieurs techniques :

  • Un grand div centré sur la page avec taille fixe et image de fond
  • Une image de fond sur le body
  • Une image de fond sur l’élément principal de mon site
  • Une balise image de taille fixe et centrée

Aucune de ces techniques n’a fonctionné. J’ai donc effectué plusieurs recherches et j’ai réussi à trouver la solution!

Il faut donc :

  • s’arranger pour découper son image de fond et l’assembler sans qu’elle ne sorte du cadre
  • utiliser une feuille de style spécifique intégrant une image de fond adaptée (comme la résolution de l’écran est fixe, il est facile de créer une image de la bonne taille). Il n’existe pas de directive en HTML permettant de détecter l’IPad, il faut donc se baser sur la taille d’écran.
    <link rel="stylesheet"
          media="only screen and (max-device-width: 1024px)"
          href="../ipad.css"
          type="text/css"
    />
    
  • utiliser une directive Webkit permettant de spécifier la taille de l’image de fond
    body
    {
        -webkit-background-size: 2000px 1400px;
    }
    

J’ai préféré utiliser la troisième technique qui fonctionne très bien! En tout cas dans mon cas c’était celle qui était la plus rapide et la plus adaptée…

Je n’ai pas eu beaucoup l’occasion de réaliser des compatibilités IPad, dites-moi ce que vous pensez des autres!

Utiliser un serveur OVH pour centraliser ses projets GIT

Comme vous le savez peut être, il est possible depuis déjà un certain temps d’utiliser le système de contrôle de version git sur les serveurs OVH dès lors que l’on a un accès SSH. Git est un outil qui est en train de fortement se démocratiser à travers des plateformes comme GitHub ou BeansTalk qui regroupent les principaux acteurs de projets dans la mouvance web (Facebook, Twitter, Apache, …).

 

Le problème de ces plateformes qui propose à la base un accès gratuit est que cet accès est public. Dès que l’on souhaite créer des dépôts de source privés, il faut payer. Comme la majorité des développeurs aujourd’hui dispose d’un serveur web contenant au moins leur portfolio j’ai trouvé utile de présenter comment déployer nos projets sur notre propre serveur.

J’ai trouvé cette article qui décrit les différentes étapes à suivre : http://blog.touv.fr/2009/06/depot-git-prive-et-personnel-sur.html.

Cette procédure ne fonctionne que pour les serveurs sur lesquels git est installé et disposant d’un accès SSH car les fichiers sont publiés et récupérés à travers ce protocole.

 

Vous trouverez plus d’information sur git sur le site: http://gitref.org/. Ce site présente les principales fonctionnalités de git à travers des explications simples et précises!