0

Baser son activité sur un service tiers est dangereux

tl;dr : Si demain, le service que vous utilisez pour votre business fermait ses portes sans crier gare, que feriez-vous ?

Plus le temps passe et plus mes doutes  sur le risque de faire reposer son activité sur une plate-forme non-maîtrisée s'avèrent justifiés. Il y a quelques années, nombreux étaient les services dont la plus-value reposait essentiellement sur l'API de sites tels que Twitter qui se sont retrouvés le bec dans l'eau. Aujourd'hui, c'est au tour de certains YouTubeurs de s'insurger contre la politique de Google concernant les mises en avant de certaines vidéos. Leur représentant semble tout trouvé en la personne du millionaire PewDiePie qui à sorti un bluff auquel personne n'a cru. Pour information, ce dernier possède la chaîne la plus suivie de YouTube : 50 millions d'abonnés (à l'heure où je rédige ces lignes), rien que ça.

Goldfish bowl with goldfish by garhol

Mais revenons-en à nos moutons. Je prends l'exemple assez parlant de YouTube car la mise en place d'une chaîne y est instantanée. Créez un compte, mettez en ligne une vidéo ou lancez un direct et l'aventure commence. La notoriété du service, beaucoup de talent et une certaine régularité peuvent être un excellent tremplin pour se faire connaître. Après plusieurs années de labeur à faire fructifier sa chaîne, à construire une communauté, Google décide du jour au lendemain que ce que vous produisez ne correspond plus à leur charte d'utilisation. Vous pensiez avoir construit votre nid douillet ? Vous n'étiez en fait qu'un simple résident d'un hôtel de luxe hébergé gracieusement par la direction. Cette dernière a décidé de revoir ses exigences et vous claque la porte au nez sans autre forme de procès. Votre page constituait l'unique moyen pour interagir avec vos fans ? Dommage !

L’algorithme de recommandations est un exemple concret du problème que je viens d'énoncer. Hier chacune de vos vidéos était mise en avant. Aujourd'hui, ce n'est plus le cas et aucun moyen de savoir exactement pourquoi.

Je ne suis pas en train de dédouaner Google pour sa gestion de YouTube. Je souligne simplement l'importance donnée aux endroits où les contenus générant des revenus, ou importants à nos yeux, sont placés est énorme. Medium en est l'exemple le plus récent. Pour ma part, l'indépendance est un facteur capital. La création d'une base d'utilisateurs fidèles relève d'une alchimie complexe. Devoir la faire bouger de ses habitudes est un exercice périlleux qui peut coûter cher.

Quelles implications ?

D'utiliser un service tiers

Points positifs

  • Aller plus vite au démarrage d'un service
  • Profiter de la notoriété du service utilisé
  • Réduire les coûts d'infrastructure, maintenance…
  • Réduire le nombre de compétences techniques requises

Points négatifs

  • Tributaire du moindre changement (passage du gratuit au payant, mise en avant, conditions d'utilisation…)
  • Difficile à faire évoluer dans son sens
  • Aucune maîtrise des données engrangées par le fournisseur (profilage de vos utilisateurs, régies pubs et cookies à gogo)

D'utiliser un service que nous gérons

Pour cette partie, partez de l'inverse des points cités plus haut et complétez avec ce qui suit.

Points positifs

  • Vous êtes chez vous !
  • Vous choisissez complètement l'expérience de vos utilisateurs !
  • Déplacements de serveurs, de noms de domaines… comme vous le souhaitez
  • Possibilité d'ajouter des fonctionnalités manquantes ou supprimer celles qui ne servent pas

Points négatifs

  • Forte contrainte de gestion au quotidien
  • Coûts pouvant être importants (hébergement, nom de domaine, bande passante…)

Conclusion

A minima, multiplier les sources qui servent vos contenus me parait être une position pertinente.  Avoir un chez-soi comme hub central devrait être un des premiers objectifs sur votre liste des choses à faire. Quelle que soit la tactique que vous adoptez, vous ne pourrez plus dire que vous n'étiez pas au courant.

1

GoAccess pour analyser ses logs Apache

Pourquoi utiliser GoAccess ?

Dans mon cas, je souhaite me débarrasser de Google Analytics dont je n'utilise qu'1% des fonctionnalités. Je cède à ce dernier beaucoup trop d'informations concernant les visiteurs de mes sites. L'idée était de continuer à connaître les pages les plus visitées, les erreurs rencontrées et une potentielle chute de fréquentation pouvant provenir d'un problème technique. Quoi de plus fiable que d'analyser des logs en remplacement d'un bout de JavaScript souvent bloqué par UBlock Origin ou Adblock Plus.

En résumé :

  • je donne moins d'informations à Google
  • j'évite le chargement d'un script externe à mes visiteurs
  • je peux quand même continuer à vérifier que tout va bien

La seule contrepartie dans mon cas étant la récupération des logs chez OVH que je pense automatiser dans la foulée.

goaccess-logo

Installation

Un paquet GoAccess est sûrement disponible pour votre distribution Linux ou vous pouvez le compiler depuis les sources. Je vous renvoie pour cela à la documentation d'installation.

Commandes

Dans les exemples suivants, j'utiliserais le fichier de log présent sur mon disque à l'emplacement /var/log/apache2/access.log.

Utilisation de base

goaccess -f /var/log/apache2/access.log

Ignorer les crawlers/bots/spiders avec l'option --ignore-crawlers

goaccess -f /var/log/apache2/access.log --ignore-crawlers

Lire des logs archivées

zcat /var/log/apache2/access.log*.gz | goaccess

Génération d'un rapport au format HTML

goaccess -f /var/log/apache2/access.log --ignore-crawlers -a -o report.html

GoAccess HTML report screenshot

Lancer un tableau de bord d'analyse en temps réel

goaccess -f /var/log/apache2/access.log -o /var/www/report.html --real-time-html

Remplacez /var/www/report.html par un endroit accessible par votre serveur web. Il ne vous restera plus qu'à accéder à ce dashboard via l'adresse https://<votre-domaine>/report.html.

Choisir le bon parseur pour Apache

Il se peut que la commande précédente n'apporte pas le résultat escompté. En effet, les logs peuvent être construits de nombreuses manières. Pour que GoAccess comprenne les données issues du fichiers que vous lui fournissez, utilisez l'option -c.

goaccess -f /var/log/apache2/access.log -c

Un menu va vous proposer les différents parseurs disponibles. Pour d'Apache, nous utiliserons le premier : NCSA Combined Log Format. Le deuxième, NCSA Combined Log Format with Virtual Host, est à sélectionner lors de l'utilisation de virtuals hosts.

Vous pouvez à tout moment éditer les règles de parsing avec les touches suivantes :

  • touche c pour modifier le format du log
  • touche d pour modifier la date
  • touche t pour le temps

Les différentes options disponibles pour ces expressions régulières sont disponible sous l'encart SPECIFIERS du manuel de GoAccess.

0

Extraire un dossier d’un dépôt Git existant en conservant son historique

Au cours de la vie d'un dépôt Git, il peut nous arriver de vouloir extraire un dossier sans perdre l'historique des commits concernant les fichiers se trouvent à l'intérieur. Que ce soit dans un soucis de mutualisation, d'un mauvais choix d'architecture au départ ou encore d'un changement dans notre gestion du dépôt.
Cette opération nécessite une version de Git supérieure ou égale à la 1.7.11.

logo de Git

  1. cd /chemin/base/depot/
  2. git subtree split -P chemin/relatif/dossier -b nomdelanouvellebranche
  3. mkdir /chemin/absolu/nouveaudossier && cd /chemin/absolu/nouveaudossier
  4. git init && git pull /chemin/base/depot/ nomdelanouvellebranche

La branche nomdelanouvellebranche ne contiendra que le dossier que vous souhaitez extraire.

5

Slack, Mattermost, Discord ? Et si nous améliorions plutôt les clients IRC ?

Cela fait plus de quinze ans (point vieux con) que je crapahute sur IRC et voilà quelques temps maintenant qu'on essaie de me hyper sur des outils identiques mais centralisés et fermés sous couvert d'une meilleure UI et d'un tas de fonctionnalités dont je n'ai pas vraiment besoin.

you-shall-not-slack

Quels sont les principaux avantages d'IRC

Quels sont les principales faiblesses d'IRC

  • non-conservation des discussions sur les serveurs les plus utilisés entraînant une complexité pour s'en servir d'archives
  • non-persistance du compte de l'utilisateur lorsqu'il se déconnecte ne pouvant du coup plus être joint par ce biais
  • commandes pas évidentes à prendre en main pour les novices
  • aspect peu intuitif lorsqu'on utilise des clients à l'ancienne

Propositions d'améliorations

Les plus gros problèmes résolus par les applications telles que Slack sont le côté « user friendly » quoi que le concept de liste de salons reste compliqué à aborder pour des novices, l'archivage et la recherche dans les échanges passés. Pour ne manquer aucun échange, il est possible de laisser son client ouvert mais soyons honnêtes, ce n'est pas une solution recommandable. Pour les plus geeks/connectés, il est possible d'utiliser un bouncer comme ZNC qui vient se placer entre le serveur et le client et permet d'afficher les messages lors de la reconnexion de son utilisateur. Vous l'aurez compris, ce n'est pas à la portée de tous.
Des services externes tels que BotBotMe qui agrège les discussions et les rend consultables via un site annexe peut faire office de contournement mais pas de vraie solution.

Ok pour de nouveaux services, mais ouverts et décentralisés s'il vous plaît

Pour ma part, le problème est pris à l'envers. Les développeurs réinventent la roue (IRC et Jabber/XMPP) et proposent ensuite des ponts entre ces « anciens » outils et les leurs là où je trouverais plus pertinent de développer de nouvelles idées sur ces vieilles briques pour les enrichir.
Des clients tels que KiwiIRC vont dans le bon sens en donnant un coup de jeune à l'IRC qui souffre d'une image austère bien méritée par son manque d'innovation et permettent de répondre à des besoins modernes, tels que l'affichage in-app de contenus multimédias ou l'accès simplifié aux commandes.

Pourquoi ne pas appeler XMPP à la rescousse ?

En tant qu'habitué satisfait d'IRC, je ne souhaite pas le remplacer. Cela ne m'empêche pas d'utiliser XMPP (anciennement Jabber) mais je le trouve moins adapté pour des salons de discussions. La création de compte, la demande préalable d'accès à un contact et l'adresse de connexion à un salon sont autant d'obstacles à son adoption là où un webchat IRC permet à un utilisateur de se joindre à une discussion en quelques secondes.
Je suis conscients que des efforts sont en cours (merci Movim et Jappix), mais si tous ces développeurs qui passent du temps et de l'argent sur des nouveautés investissaient sur les technos précédemment citées, nous aurions déjà des applications qui déchirent et satisfont tout le monde tout en étant pérennes.

En conclusion

En partisan de l'open source, je ne veux pas utiliser une solution de communication non libre. Du point de vue de la sécurité, qui me certifie que mes conversations sont bien confidentielles si je souhaite qu'elles le soient ? Du point de vue de la pérennité, qu'adviendra-t-il de ces données lorsque le service utilisé décidera de fermer ses portes ?

Si vous souhaitez (re)tester le monde merveilleux d'IRC, je vous attends sur le chan #welcome du serveur Freenode. N'hésitez pas à me faire signe, pseudo Simounet what else. Quelles sont les features qui vous semblent incontournables sur les outils que je rechigne à utiliser et qui n'existent pas sur IRC (ou ses clients) ? Qu'est-ce qui vous retient d'utiliser IRC ?

2

Her Story, une expérience vidéoludique à essayer

Avec Her Story, jeu indé sorti en juin 2015, Sam Barlow, papa des Silent Hill, nous propose un style différent, loin des sentiers battus. Son gameplay se résume à l'action de taper des mots dans un moteur de recherche. Vous piochez ainsi dans une base de données qui lie ces mots à des vidéos qui nous permettent d'en apprendre plus sur une enquête policière. Je ne vous en dirai pas plus sur l'histoire afin de ne pas en gâcher la découverte mais pour ma part, je me suis pris au jeu.
La durée de vie est raisonnable bien qu'un peu courte. Comptez environ 4 heures pour en venir à bout. Le challenge réside surtout dans notre volonté d'accéder à l'intégralité de la base de données.

Je trouvais important de soutenir ce type d'initiatives créatives. Ce jeu pourrait très bien servir de matière première pour un autre souhaitant aller encore plus loin. Ce système pourrait être intégré à un autre plus vaste permettent d'y ajouter des embranchements, nous laissant maître de la conclusion.
Her Story est disponible sur la plate-forme Humble Store pour 3,59€ jusqu'au 29 janvier 2015 et sinon vous devrez débourser 5,99€.

her-story-sam-barlow

 

Liens utiles :