Depuis quelques semaines, je me suis mis à l’apprentissage de Go. Et pour accélérer cet apprentissage je me suis mis en tête de refaire mon serveur de fichiers statiques (celui qui sert les pages de ce blog). Il était fait en Ruby avec Sinatra, j’en parlais ici.
Première version
Go possède déjà pas mal de bibliothèques pour tout ce qui est networking et serveurs. Le module http possède une méthode FileServer qui peut-être utilisée en tant que serveur de fichiers statiques.
package main
import "net/http"
func main() [...] Lire la suite
Suite du précédent article sur le développement web avec Python & Flask, nous allons voir comment afficher nos différentes pages. Assembler du HTML tend à être fait avec un moteur de templates. Il en existe plusieurs sous Python, mais nous allons nous intéresser uniquement à Jinja2 étant donné qu’il est fourni de base avec Flask. Bien sûr Flask ne vous force pas non plus à l’utiliser et rien ne vous empêche d’en prendre un autre.
Logique du code dans les templates
Si vous avez déjà utilisé des templates dans d’autres langages, vous
savez qu’il faut limiter la complexité du code à l’intérieur de ceux-ci.
Les templates proposent des opérateurs de base pour gérer des boucles ou
des conditions, [...] Lire la suite
J’avais envie depuis quelques jours de faire une série d’articles sur Python et le développement d’applications web. D’une part pour montrer que ce n’est pas plus compliqué qu’un projet PHP et d’un autre côté pour montrer qu’on perd moins de temps pour faire quelque chose de propre (pas besoin de palier aux bizarreries du langage).
Si vous n’avez jamais rien testé d’autre que PHP comme langage de programmation (back-end), faites-vous une faveur et sortez de votre zone de comfort. Il n’en sortira que du bon, c’est promis.
On va débuter, dans cet article, par mettre en place son projet de la meilleure façon qui soit. Et d’autres [...] Lire la suite
Les variables CSS sont apparues il y a quelques jours dans le dépôt Webkit et devraient être utilisables dans les dernières nightlies de Safari. La norme CSS continue de se doter de fonctionnalités permettant d’avoir un code plus facilement maintenable.
Don’t repeat yourself they said
À l’heure actuelle, sans variables, la duplication de code est inévitable sur des projets de taille moyenne ou plus. Imaginons une palette de 5 couleurs sur un site, si on vous demande d’en changer une sur les 5, vous devez faire un rechercher/remplacer sur les fichiers .css. Alors qu’avec les variables vous n’avez qu’une ligne à éditer.
Syntaxe de la spécification
-webkit-var-foreground: red;
-webkit-var-background: rgb(255, 255, 255);
-webkit-var-fontsize: 1.5em;
color: -webkit-var(foreground);
background-color: [...] Lire la suite
La migration du blog vers Jekyll était une première étape nécessaire pour une migration complète vers une solution gratuite – ou presque. Quand le site web n’est plus qu’une collection de fichiers statiques, l’hébergement devient vraiment simple.
Heroku
Heroku est une plate-forme cloud qui peut faire tourner des applications Python, Ruby, Scala etc. Le déploiement d’une app n’est pas plus compliqué qu’un git push heroku master. J’utilise la solution gratuite qui est amplement suffisante pour ce blog. Et si un jour ce blog devient extraordinairement populaire, je pourrai scaler simplement avec ps:scale web=x.
Amazon S3
J’en avais déjà parlé sur l’article précédent, les images et les uploads divers des articles sont tous stockés [...] Lire la suite
Les polices au format OpenType ont pour avantage de prendre en charge un jeu de caractères étendus et offrent plus d’options au niveau de la présentation. Par exemple on peut gérer les ligatures discrètes, les fractions, les petites capitales… Les graphistes ont longtemps été seuls à pouvoir jouer avec ces fonctionnalités, mais savez-vous que vous pouvez faire la même chose avec un peu de CSS3 ?
Exemple des ligatures
Prenons par exemple les ligatures. C’est une des choses que je voulais depuis longtemps et qui est maintenant possible sur une page web. Le but d’une ligature est de rendre le texte plus lisible et plus beau aussi, comme en évitant une transition grossière entre un f et un i. Les ligatures fusionnent deux caractères et le résultat est vraiment considéré comme un seul.
fleurs, fille, [...] Lire la suite
Cela fait plusieurs mois que j’en avait envie, je l’ai finalement fait ce week-end : une migration complète de mon blog Wordpress vers Jekyll. Vous ne devriez pas voir énormément de différences… Non, la différence est surtout pour moi, l’écriture et la gestion du site.
Je n’étais pas vraiment malheureux avec Wordpress, non. Seulement embêté par certaines fonctionnalités. Par exemple l’édition d’articles est juste infâme, je finissais souvent par utiliser l’éditeur HTML en fait. La performance de Wordpress est minable sans plugin externe (cache), car il fait les mêmes requêtes SQL à chaque pages vues. On ne sait jamais, peut-être que l’article change toutes les 5 minutes ?
Bref, je m’égare en trollant, parlons un peu de cette [...] Lire la suite
Le css permet de définir des styles au travers d’un langage déclaratif, de sélecteurs, propriétés et valeurs. Le tout saupoudrée d’une notion d’héritage basique. Ce qui peut amener certains problèmes sur le long terme : répétition de code et complexification du fichier CSS où les relations entres nos éléments du DOM ne sont pas forcément claires.
Sass étend les capacités du css en rajoutant la possibilité d’utiliser des variables, des fonctions, l’héritage de sélection… Tout un tas de choses qui permet non seulement de simplifier le code mais aussi, selon moi, de rendre plus logique les feuilles de styles. La structure du dom saute facilement aux yeux.
Installation
On installe sass [...] Lire la suite
Rien à voir avec les spams de Viagra. Non. Sous ce titre un peu malicieux, je tenais à vous parler d’une chose que je ne supporte plus : les tailles de texte minuscules dans les pages html. Cette impression d’avoir sous les yeux le dictionnaire Édition Larousse en lisant un article de blog.
Pourtant je ne pense pas qu’il soit plus difficile de lire sur un écran que de lire un livre. Il suffit de copier la façon dont les livres mettent en page le texte.
Pour être un peu plus précis, le problème se situe souvent sur le nombre de caractères que contient une ligne de texte. La taille de la police sera donc à priori proportionnelle à la largeur de son conteneur.
Être lu comme on lit un livre
Partons d’un constat simple : je suppose que pour vous aussi il est plus facile de lire un bouquin que de lire pendant pas mal de temps sur votre écran [...] Lire la suite
Après un premier article sur les polices de types serif, je continue sur ma lancée avec cette fois-ci les sans-serifs. Ce type de police n’a pas d’empattements, d’où leur nom. En français on les appellent aussi polices linéales. Elles ont été longuement privilégiées pour le corps de texte sur les écrans, car à l’époque les écrans analogiques et la basse résolution ne rendaient pas l’affichage d‘une serif optimale. La nature simple des polices linéales fait qu’elles sont mieux lisibles sur ce type d’écran. De nos jours avec nos écrans LCD, l’antialiasing etc., ce n'est plus vrai je trouve.
Aujourd’hui je vais donc [...] Lire la suite