Sunfox

Le journal de Sunny Ripert


Photos Flickr

Mes dernières photos


Journal Wordpress

Derniers articles de mon blog

Rails et Emails

Il y a 2 semaines, 4 jours en fin d'après-midi, 1 commentaire.

parisrb

À la dernière conférence Paris.rb je présentais 6 choses à arrêter de faire si vous envoyez des emails avec votre application Ruby on Rails.

Suite de l’article…

Comment j’ai rendu mon blog responsive

Il y a 1 mois, 2 semaines de bonne matinée, 5 commentaires.

L’HTML et le CSS de ce blog ont été écrits en 2006. En années Internet c’est comme si je l’avais fait y a 3042 ans.

À cette époque l’iPhone n’existait pas encore et on ne se préoccupait pas de savoir si un site fonctionnait sur son assistant personnel ou pas. La première mention de Responsive Web Design date de 2010 (il y a 520 ans environ). Essentiellement il s’agit de transformer un site pour qu’il puisse s’adapter de façon fluide à toutes tailles d’écrans.

Transformer quelque chose qui n’a pas été pensé mobile first n’est pas chose facile, alors un vieux site au CSS croupissant, cela paraît insurmontable.

Suite de l’article…

En CSS, n’utilisez que des classes

Il y a 1 mois, 2 semaines le soir, 2 commentaires.

Photo de la mer

CSS permets d’utiliser plein de sélecteurs raffinés pour ajouter du style à vos éléments. Je soutiens qu’il faut éviter autant que possible d’utiliser quoi que ce soit d’autre que le sélecteur de classes (.foo).

Pour que vos styles soit réutilisables et ne soit plus aussi liés à votre HTML fini donc d’utiliser des sélecteurs d’identifiants, de balises, d’attributs ou de parenté.

Voici pourquoi.

Suite de l’article…

Ajoutez la couleur dominante derrière vos images

Il y a 1 mois, 4 semaines en fin de matinée, 1 commentaire.

Si vous pouvez extraire la couleur dominante d’une photo, une petite touche sympa à ajouter sur votre site est de se servir de celle-ci tant que votre image n’est pas chargée.

Voici un exemple sur cults3d.com :

Chargement d'une page sur Cults 3D

Suite de l’article…

EasouSpider le robot qui ne sait pas parler l’utf8

Il y a 2 mois de bonne matinée.

Photo de Mathieu mangeant une araignée

Ces derniers jours je recevait une trentaine d’emails par jour m’indiquant qu’une erreur avait éclatée sur cults3d.com. Ces exceptions provenaient toutes d’un robot chinois, EasouSpider, qui parcoure le Web pour remplir son moteur de recherche.

Ce robot ne sait pas parler l’unicode comme tout le monde et envoie dans les formulaires des valeurs mal encodées, ce qui fâche Ruby on Rails. Le problème est surtout que Rails ne traite l’erreur que bien trop tard, lorsqu’on essaie de lire les paramètres de la requête. Et là l’erreur est une incompréhensible ArgumentError :

invalid %-encoding (Q/B0*ÜHܘ0ÅÅ1 0 U GB1 0 U.…

Suite de l’article…

Retrouver les clefs de localisation facilement avec Rails

Il y a 2 mois, 1 semaine en début d'après-midi, 2 commentaires.

Photo de Drapeaux Lego

J’utilise Locale avec Ruby on Rails pour permettre à n’importe qui dans l’équipe de modifier les textes d’un site quelle que soit la langue.

Néanmoins, ce n’est pas évident pour celui qui n’a pas le code sous les yeux de retrouver quel texte correspond à quelle clef.

Suite de l’article…

ActionMailer n’aime pas vos URLs (par défaut)

Il y a 2 mois, 1 semaine à l'heure du goûter.

Faire un lien dans un email dans une application Ruby on Rails devrait être aussi simple que de faire un lien dans le reste de l’application, non ?

Photo of a miniature train, by Sunny

Suite de l’article…

Liens de partage sans JavaScript vers Facebook, Twitter, Google Plus, Pinterest et email

Il y a 7 mois, 2 semaines le soir, 1 commentaire.

Exemple de boutons de partage de Cults3d.com

Parce que vous voulez inclure des liens de partage sans que ça ne vienne importer 1 Mo de JavaScript sur votre page, voici des liens de partages. Sans balise script. Rien que des liens. Simple.

Ne pas oublier d’URL-encoder chaque paramètre, comme dans les exemples.

Suite de l’article…

Favicon dynamique

Il y a 1 an, 3 mois le soir, 1 commentaire.

Capture d'écran de favicônes toutes identiques
Sites sans favicon : Boo!

Le favicon est un endroit assez délaissé dans une page Web alors que c’est parfois la seule indication visuelle permettant aux utilisateurs de de se retrouver dans ses onglets.

Edith

Sur Edith j’ai choisi de représenter la page en cours directement dans le favicon, en le mettant à jour à chaque caractère tapé.

Capture d'écran montrant la modification en temps réel de la favicon
favicon qui change à la volée sur Edith

JavaScript

Trop facile.

  1. Créer un canvas de 16×16 et colorier ses pixels via JavaScript
  2. Appeler sa méthode toDataURL() pour transformer le canvas en data:image/png;base64,iVBORw0…
  3. Placer dans le DOM dans le <link rel="icon" href="…" /> de la page en cours.

Noter que pour qu’il soit mis à jour instantanément Firefox a besoin qu’on supprime et qu’on recréer la balise link.

Exemple dans le CoffeeScript utilisé sur Edith.

Can I Use?

Fonctionne là où canvas et les datauri fonctionnent, soit IE9+.

Erreurs 404 dynamiques dans Rails 3

Il y a 1 an, 10 mois de bonne matinée.

Utiliser un fichier statique public/404.html dans Rails est très vite limitant. Si on veut utiliser le layout normal de l’application, des informations dynamiques comme des menus, le nom de l’utilisateur courant ou un formulaire de recherche il faut rendre ces erreurs dynamiques.

Pour ça il faut intercepter deux erreurs qui produisent des 404 : les infos nos trouvées dans la base via ActiveRecord::RecordNotFound et les routes qui n’existent pas avec ActionController::RoutingError.
Suite de l’article…


Recherche

Rechercher dans mon journal


:D Sunny Ripert

est un développeur web vivant à Paris.

CV, me contacter


Textes et contenus sous licence Creative Commons.
Site crée par mes soins et propulsé par WordPress.