En tant que formateur, j’explique régulièrement à mes apprenants (de futurs développeurs web) à quel point il est important de travailler leur présence sur le web. Ceci passe notamment par le fait de partager des tutos, des articles et toutes sortes de ressources. Et quoi de mieux pour cela que de créer son propre site?
Au-delà du portfolio classique, un blog constitue un très bon outil pour un (futur) développeur web. Je vais donc vous en dire un peu plus sur la création et le fonctionnement du présent blog.

Le choix de la techno

C’est souvent le plus long et le plus difficile quand il s’agit de créer son propre site.
La première étape, comme quand on travaille avec un client, est de vraiment bien cerner le besoin. L’objectif est de délimiter le périmètre afin de ne conserver que les fonctionnalités dont on a véritablement l’utilité. On rejoint donc ici la question de l’éco-conception et de la sobriété numérique. Vous vous souvenez de la “douce” époque où tout un chacun voulait absolument un forum? Evitons de retomber dans ces travers.
Dans mon cas, le besoin était simple : pouvoir partager des articles. Facile, non? Mais, dans ce cas, pourquoi ne pas passer par un outil existant comme Medium? Pour mémoire, j’ai utilisé Medium pendant un long moment et force est de constater que ça ne me convient plus du tout. Leur politique économique est désastreuse et l’accès à l’info très laborieux pour ceux qui ne sont pas membres de Medium (gratuits ou pas). Bref, pas pour moi.
En plus de cela, j’étais curieux des générateurs de sites statiques depuis un petit moment déjà. Une petite recherche rapide fait ressortir Jekyll. En plus, cet outil se prête particulièrement bien à l’hébergement via une page github. Dernier point, c’est du Ruby. Même s’il y a peu de chances que j’aie besoin de mettre les mains dans le code, ça peut aussi être l’occasion de m’y mettre si ça finit par arriver. Bref, j’ai l’outil, je sais pourquoi je veux m’en servir et je sais où il sera hébergé. Passons à la mise en place.

Installation et mise en place

Si on en croit le site de Jekyll, c’est on ne peut plus simple.

gem install bundler jekyll

jekyll new my-awesome-site

cd my-awesome-site

bundle exec jekyll serve

Et dans la pratique, c’est vraiment aussi simple que cela.
Une fois tout ceci effectué, il ne reste plus qu’à modifier le fichier _config.yml pour personnaliser un peu tout ça.
Pour tout le reste, la doc semble bien pensée. Et si vous lisez cet article, c’est que ça a marché.

Hébergement

Pour l’hébergement, rien de plus facile.
Tout est dans un repo github.
Une fois que celui-ci a le nom qui va bien (monsite.github.io), il suffit d’aller dans les Settings pour en faire une page Github en un seul clic.

Ajouter des articles

C’est bien beau tout ça mais un blog est prévu pour accueillir des articles, non?
C’est là aussi la beauté de Jekyll : tout se fait en markdown.
Cette syntaxe peut paraître un peu déstabilisante quand on n’a pas l’habitude. Vu que je conçois la plupart de mes supports de formation (projets et autres) sur des wikis github/gitlab voire via des readme.md, je suis déjà passé par là et je sais comment ça marche.
Pour ceux qui ne connaîtraient pas, voici deux petits liens pour découvrir :

Dans Jekyll, donc, il suffit d’ajouter ses articles sous la forme de fichier .md dans le dossier _posts. Le formalisme est parfois un peu retors au début. Attention à bien partir du template d’article pour conserver l’entête du fichier qui contient toutes les infos ainsi que le titre du fichier qui a lui aussi son importance.

Une fois l’article rédigé, il ne me reste plus qu’à le push sur le repo github pour que la magie opère.

Blog collaboratif

Une fois tout ceci mis en place, il est facile de tenir un blog à plusieurs. Il suffit que chacun contribue au repo github (en tant que collaborateur ou via des pull-requests).

TODO

  • Pour l’instant, je suis resté sur le thème par défaut. Il a l’énorme avantage d’être minimal (donc très léger et performant). Peut-être que je me déciderai un jour pour rechercher un autre thème. Mais je sais que ça prendra du temps de trouver un thème léger qui me plaise donc ce n’est pas pour tout de suite.
  • Je migre depuis quelques semaines mes projets de github sur gitlab. Deux principales raisons à cela.
    • gitlab offre plus de fonctionnalités (même si github n’est pas loin).
    • La deuxième, c’est que la politique de github concernant l’utilisation d’énergies renouvelables est à la ramasse. Vu la quantité de contenus présents sur le site, c’est très préoccupant. Au moins, là-dessus, gitlab s’en sort beaucoup mieux.
  • Alimenter le site régulièrement.