Pourquoi faire long et simple quand on peut faire rapide et compliqué
Tous les jours (ouvrés) je poste une de mes photos en ligne. Tous les jours je répète les mêmes gestes simples mais barbants. Tous les jours je me dis qu'il faudrait que je fasse quelque chose pour me faciliter la vie. C'est maintenant chose faite !
Ma routine
Étape 1 : Le choix
Je stocke mes photos exportées et prêtes à être publiées dans un dossier sur le bureau de mon ordi.
Chaque jour je lance dans ce dossier une commande random ./*
(commande de base dans Fish) et je fais ça 5 fois de suite.
J'aime bien choisir une photo au hasard mais je préfère avoir un choix à faire en fonction de mon humeur du jour, donc je choisis une photo parmi ces 5 en faisant des allers-retours entre mon terminal et mon Finder pour voir de quelles photos on parle.
Une fois que j'ai arrêté un choix, je lance dans le terminal un petit script de ma confection pour générer une copie de l'image avec un cadre blanc et un ratio précis.
"Pourquoi" me demanderiez-vous si justement ?
Et bien parce que sur Instagram, pour une raison que j'ignore, quand vous leur dites de garder le format original de l'image, ils crop quand même les photos pour qu'elles rentrent dans leur ratio (maximum j'imagine) défini. Et si je me choisis avec beaucoup de précaution mes cadrages, c'est pas pour que Môssieur Insta prennent des libertés comme ça. Alors juste pour lui, je prépare une image avec un ratio qu'il affectionne tout en gardant mon cadrage d'origine.
Étape 2 : La préparation
Ma philosophie sur la publication de mes photos est orientée POSSE, c'est à dire que ma source première est mon propre site, puis je publie ensuite des copies sur d'autres réseaux.
Et pour publier sur mon propre portfolio, site statique généré avec 11ty et mon template Niepce je dois créer un dossier dont le nom sera aussi l'URL, dans lequel je dois créer un fichier markdown index.md
contenant les infos de base de la photo et enfin la photo en elle-même qui doit être nommée photo.jpg
.
Vu que l'URL est censée être unique et ne jamais changer, il me faut donc trouver un titre original dès cette étape.
S'ensuit ensuite le commit
et push
de cette nouvelle photo avec mise à jour du portfolio automatiquement mais là on s'écarte du sujet.
Étape 3 : La publication
Une fois mon portfolio mis à jour il est temps de s'occuper des réseaux.
Au moment où j'écris ce billet je ne publie que sur 3 réseaux :
Je considère Glass comme le réseau principal, c'est celui sur lequel j'ai le plus d'interactions et il a ceci de particulier qu'il n'y a pas de hashtag, seulement des catégories de photographie alors je poste sur ce réseau en premier.
Puis vient le moment de poster sur Instagram et Pixelfed qui, du fait de leur fonctionnement similaire, utiliseront exactement les mêmes informations de publication.
Sauf peut être la localisation parce que l'outil de localisation de Pixelfed est tellement mal foutu que la moitié du temps je ne le remplis pas.
Quand c'est chose faite, sur mon compte mastodon je retoot la publication Pixelfed (c'est beau le fédivers quand même ♥️), puis sur Instagram je fais une story de ma publication Insta… tout ça pour la visibilité.
Notez que je fais ça sans vraiment savoir pourquoi.
Conclusion
Voilà, je fais ça, tous les jours, depuis des mois. J'en ai eu un peu marre alors j'ai voulu automatiser et simplifier le plus d'étapes possible.
Alors que revoici Alfred
Je vous avais déjà parlé d'Alfred il y a… bientôt 9 ans… ça me rajeunit pas mais au moins ça veut dire que je suis un client loyal d'Alfred. On se rassure comme on peut.
Je sais que les cool kids utilisent Raycast de nos jours mais même après l'avoir testé je n'ai pas trouvé qu'il valait le coup que je change. Vous pensez bien qu'après 9 ans d'habitudes sur un outil, il va me falloir de très bonnes raisons de changer et il n'y en avait clairement pas assez.
De plus Alfred, c'est une toute petite équipe indépendante, non soutenue par des investisseurs (le genre qui te ruine une application parce que ce sont des pompes à fric). Mine de rien ça pèse aussi dans la balance.
Bref, pour résoudre mon problème de "productivité", j'ai donc décidé de me faire un workflow personnalisé avec Alfred.
Mais qu'est-ce qu'un workflow me demanderiez-vous l'air hagard ?
Et bien c'est "simplement" un système de suite d'actions automatisées géré par alfred. Et cette suite d'actions peut avoir différents type de "triggers" mais en très bref un trigger lance une action.
Évidemment ça c'est la version simple. Je suis allé un peu plus loin que ça.
Spoiler alert : in fine mon workflow ressemble à ça :
Étape 1 Le choix
Désormais pour choisir une photo il me suffit d'ouvrir Alfred, taper pick X
(X étant le nombre de photos que je souhaite afficher ou bien par défaut il en affichera 6), puis je clique sur l'image de mon choix qui sera dupliquée avec un contour.
Et voilà c'est tout. Je viens de faire l'étape 1 en quelques secondes.
En détail, sur la deuxième ligne, voici ce que j'ai fait :
- je choisis un mot clé
pick
comme trigger - je lui applique un argument optionnel, le nombre de photos à afficher
- si je ne donne pas d'argument je vais montrer 6 photos par défaut
- je dis dans quel dossier regarder
- je mélange le contenu du dossier aléatoirement
- je prends les 6 ou X premières photos du dossier mélangé (s'assurant ainsi que l'aléatoire ne m'affichera pas 2 fois la même photo)
- puis je les affiche dans une grille
- en sélectionnant la photo, je l'envoie au script qui va créer la copie avec cadre
- puis pour finir j'envoie une notification pour attester que le boulot est fait
J'ai aussi rajouté une petite action sur fichier qui me permet, lorsque j'ai un fichier sélectionné, de directement l'envoyer au script pour en faire une copie avec cadre. Ça m'arrive d'avoir ce besoin ponctuel.
Même action finale, juste un trigger différent.
Étape 2 la préparation
Pour la préparation, c'est le mot clé create
que j'ai choisi auquel s'ajoute l'argument obligatoire du nom du dossier.
kebab-case
pour avoir de belles URLs mais j'aurais très bien pu rajouter une étape pour forcer le formatage attendu aussi.
En détail :
- je choisis un mot clé
create
comme trigger suivi du nom du dossier - je vérifie si ce dossier existe déjà ou non avant de faire quoique ce soit parce que je n'aurais pas de d'erreur remontée par Finder si c'est le cas
- si le dossier existe déjà, j'arrête tout et j'envoie une notification d'erreur
- s'il n'existe pas alors je crée le dossier
- puis dans ce dossier je crée un fichier
index.md
vide - finalement j'envoie une notification de succès
Je sélectionne donc le fichier, je lance l'action sur fichier Copy & rename
qui va demander ensuite dans quel dossier déplacer la copie et voilà la copie est déplacée et bien nommée.
En détail :
- en tapant
⌥ ⌘ :
sur mon mac je lance un action sur fichier nomméeCopy & rename
- je vais ensuite afficher un champ de recherche de fichiers (et dossier) pour trouver le dossier dans lequel copier
- je copie d'abord le fichier dans ce dossier
- puis je renomme le fichier en
photo.jpg
- enfin j'envoie une notification de travail terminé
Étape 3 La publication
C'est là que ça pêche…
Je ne sais pas comment automatiser cette partie mais ce ne serait sûrement pas avec Alfred.
Je pense qu'il doit y avoir moyen de faire quelque chose avec des outils comme Zapier ou IFTTT mais leur version gratuite ne suffira clairement pas et je trouve leurs options payantes très vite chères pour le besoin que j'ai.
Si vous avez des recommandations d'autres solutions je suis évidemment preneur.
Conclusion
Grâce à Alfred j'ai pu "automatiser" 2 étapes sur 3 et j'en suis bien content. Et ce n'était pas si compliqué que ça. Bien évidemment ça m'a pris un peu de temps pour comprendre en profondeur le fonctionnement mais une fois le principe assimilé ça va assez vite.
Je pourrais partager le workflow si ça intéresse des gens mais vu que c'est un besoin très personnel je n'ai pas jugé ça utile.
@GoOz j'ai plus ou moins le même process (tiens tiens, je comprends pas pourquoi) donc ça m'intéresse.
@nicosomb ça t'intéresse que je partage le workflow ?
@GoOz c'est gentil mais je fais partie des cool kids.
@nicosomb ah ok :p mais c'est quoi qui t'intéresse du coup ? j'ai pas compris.
@GoOz d'adapter ton worflow avec mes outils.
@GoOz ça me donne quelques idées pour le webdev egalement avec notre inséparable ami Alfred :)