diff --git a/content/Lectures/2019-09-01-open-space-technology.md b/content/Lectures/2019-09-01-open-space-technology.md index 2130673..2d4d62b 100644 --- a/content/Lectures/2019-09-01-open-space-technology.md +++ b/content/Lectures/2019-09-01-open-space-technology.md @@ -3,6 +3,7 @@ author: Harrison Owen tags: organisation, open-space headline: A User's guide read_on: Septembre 2019 +isbn: 979-10-91772-19-8 ## The invitation diff --git a/content/Lectures/2019-10-01-refuser-detre-un-homme.md b/content/Lectures/2019-10-01-refuser-detre-un-homme.md index 7c5be9c..5542e53 100644 --- a/content/Lectures/2019-10-01-refuser-detre-un-homme.md +++ b/content/Lectures/2019-10-01-refuser-detre-un-homme.md @@ -3,7 +3,7 @@ author: John Stolenberg tags: féminisme, masculinisme headline: Pour en finir avec la virilité read_on: Octobre 2019 -image: https://www.syllepse.net/syllepse_images/produits/refuser_d_etre_un_homme.jpg +isbn: 978-2-84950-381-2 ## Mise en situation historique et politique diff --git a/content/Lectures/2020-01-01-au-dela-de-la-penetration.md b/content/Lectures/2020-01-01-au-dela-de-la-penetration.md index 256b928..9588a1e 100644 --- a/content/Lectures/2020-01-01-au-dela-de-la-penetration.md +++ b/content/Lectures/2020-01-01-au-dela-de-la-penetration.md @@ -2,6 +2,7 @@ title: Au delà de la pénétration author: Martin Page tags: sexualité, féminisme read_on: Janvier 2020 +isbn: 9782371000926 headline: Le livre est une ode aux plaisirs, une proposition de dépasser une sexualité étriquée, renfermée sur des pratiques traditionnelles qui ne sont pas forcement les meilleures en terme de plaisirs. C'est un tout petit livre de 150 pages, découpé en trois parties : une introduction, un recueil de témoignages et enfin quelques remerciements. diff --git a/content/Lectures/2021-01-01-un-feminisme-decolonial-francoise-verges.md b/content/Lectures/2021-01-01-un-feminisme-decolonial-francoise-verges.md index f5426ee..49b2a3d 100644 --- a/content/Lectures/2021-01-01-un-feminisme-decolonial-francoise-verges.md +++ b/content/Lectures/2021-01-01-un-feminisme-decolonial-francoise-verges.md @@ -3,5 +3,6 @@ author: Françoise Vergès tags: sexisme, racisme read_on: Janvier 2021 headline: Un livre qui vient questionner la posture colonialiste dans le féminisme +isbn: 9782358721974 > J'ai aussi appris très tôt que si l'État veut écraser un mouvement, il a recours à tous les moyens, à toutes les ressources qui sont à sa disposition d'une part pour réprimer, d'autre part pour diviser les opprimé·e·s. D'une main il frappe, de l'autre il cherche à assimiler. **La peur est une de ses armes favorites pour produire conformise et consentement**. \ No newline at end of file diff --git a/content/Lectures/2023-03-10-crucial-conversations.md b/content/Lectures/2023-03-10-crucial-conversations.md index a4ed934..798fe2e 100644 --- a/content/Lectures/2023-03-10-crucial-conversations.md +++ b/content/Lectures/2023-03-10-crucial-conversations.md @@ -2,6 +2,7 @@ title: Crucial Conversations author: Kerry Patterson, Stephen R. Covey, Joseph Grenny, Ron McMillan et Al Switzler headline: Un livre qui vient questionner nos manières d'intéragir lors des discussions cruciales de nos vies. Des outils pratiques pour éviter de rentrer dans les conflits. +isbn: 9781260474183 --- *Résumé rapide du livre, pour s'y retrouver*. @@ -76,6 +77,7 @@ Concentrez-vous sur **ce que vous voulez réellement : - Demandez-vous ce que vous devriez faire pour aller vers ce que vous souhaitez réellement ? **Refusez le dualisme** : + - Alors que vous considérez ce que vous voulez, notez quand vous vous piégez vous-même dans un dualisme. - Cherchez comment faire l'un **et** l'autre. - Clarifiez ce que vous ne souhaitez pas, ajoutez le à ce que vous voulez et demandez à votre cerveau de chercher des solutions pour retourner sur un dialogue sain. @@ -87,6 +89,7 @@ Les histoires créent des émotions. Les émotions n'arrivent pas d'elles-mêmes Il peut être utile de séparer les faits des histoires qu'on se raconte pour pouvoir repenser nos émotions. Le schéma peut être le suivant : + 1. Voir et entendre (les faits) 2. Se raconter une histoire 3. Ressentir @@ -109,6 +112,7 @@ Comment se rendre compte que la sécurité est mise en jeu ? Il faut apprendre Pour sécuriser la conversation, il faut réussir à sortir du contenu de la conversation d'abord. L'idée étant de se rendre compte quand les gens deviennent violents ou silencieux, pour renouer le dialogue. Une fois que c'est fait on peut reprendre la discussion. Comprendre ce qui crée un risque pour la sécurité : + - **Objectif commun** : Est-ce que les autres pensent que leurs objectifs sont importants pour vous ? Est-ce qu'ils ont confiance dans mes motivations ? - **Respect mutuel** : Est-ce que les autres pensent que vous les respectez ? @@ -119,6 +123,7 @@ Pour commencer la discussion, **partagez vos bonnes intentions** : qu'est-ce que **Contrastez** pour régler les incompréhensions : Commencez par ce que vous ne voulez pas dire, puis expliquez ce que vous voulez dire. Créez un objectif commun lorsque vous vous rendez compte que les choses sont compliquées : + - Dites que votre objectif est de trouver un but commun. - Reconnaissez les buts derrière les stratégies - Inventez un but commun diff --git a/content/Lectures/2023-05-02-micropolitiques-des-groupes.md b/content/Lectures/2023-05-02-micropolitiques-des-groupes.md index 8df5eaf..8b3e2f6 100644 --- a/content/Lectures/2023-05-02-micropolitiques-des-groupes.md +++ b/content/Lectures/2023-05-02-micropolitiques-des-groupes.md @@ -2,6 +2,7 @@ title: Micropolitiques des groupes author: David Vercauteren headline: Une livre qui vise à créer une culture des précédents dans les collectifs (militants). Plusieurs chapitres et un découpage par sujets. A relire au fur et à mesure des expériences. +isbn: 9782354801786 --- ## Artifices diff --git a/content/Lectures/2023-09-16-eloge-de-lamitie.md b/content/Lectures/2023-09-16-eloge-de-lamitie.md index e36bbdc..9c308e3 100644 --- a/content/Lectures/2023-09-16-eloge-de-lamitie.md +++ b/content/Lectures/2023-09-16-eloge-de-lamitie.md @@ -3,9 +3,9 @@ title: Éloge de l'amitié author: Geoffroy de Lagasnerie headline: Livre où il est question d'amitié, de ce qu'elle signifie dans un monde où le devenir-parent, les sociabilités familiales et le volontaire désintérêt dans les relations est la norme. tags: relations, amitié +isbn: 9782080420015 --- - ## Citations > Lorsqu'elle devient un mode de vie, qu'elle devient l'objet d'une culture spécifique qui occupe le cœur de l'existence, le lien d'investissement des intérêts psychiques et non ce qui reste après la famille, le travail, les voisins, etc., **l'amitié pourrait être interprétée comme la recherche d'un dehors**. diff --git a/content/Technologie/ 2010-06-04-gsoc-distutils-first-report.md b/content/code/ 2010-06-04-gsoc-distutils-first-report.md similarity index 100% rename from content/Technologie/ 2010-06-04-gsoc-distutils-first-report.md rename to content/code/ 2010-06-04-gsoc-distutils-first-report.md diff --git a/content/Technologie/2009-12-17-python-go.md b/content/code/2009-12-17-python-go.md similarity index 100% rename from content/Technologie/2009-12-17-python-go.md rename to content/code/2009-12-17-python-go.md diff --git a/content/Technologie/2010-05-01-a-distutils2-gsoc.md b/content/code/2010-05-01-a-distutils2-gsoc.md similarity index 100% rename from content/Technologie/2010-05-01-a-distutils2-gsoc.md rename to content/code/2010-05-01-a-distutils2-gsoc.md diff --git a/content/Technologie/2010-06-25-use-restructured-text-rest-to-power-your-presentations.md b/content/code/2010-06-25-use-restructured-text-rest-to-power-your-presentations.md similarity index 100% rename from content/Technologie/2010-06-25-use-restructured-text-rest-to-power-your-presentations.md rename to content/code/2010-06-25-use-restructured-text-rest-to-power-your-presentations.md diff --git a/content/Technologie/2010-07-06-a-distutils2-month-pypi-simple-index-ready.md b/content/code/2010-07-06-a-distutils2-month-pypi-simple-index-ready.md similarity index 100% rename from content/Technologie/2010-07-06-a-distutils2-month-pypi-simple-index-ready.md rename to content/code/2010-07-06-a-distutils2-month-pypi-simple-index-ready.md diff --git a/content/Technologie/2010-07-10-a-distutils2-sprint-in-tours.md b/content/code/2010-07-10-a-distutils2-sprint-in-tours.md similarity index 100% rename from content/Technologie/2010-07-10-a-distutils2-sprint-in-tours.md rename to content/code/2010-07-10-a-distutils2-sprint-in-tours.md diff --git a/content/Technologie/2010-08-16-an-amazing-summer-of-code-working-on-distutils2.md b/content/code/2010-08-16-an-amazing-summer-of-code-working-on-distutils2.md similarity index 100% rename from content/Technologie/2010-08-16-an-amazing-summer-of-code-working-on-distutils2.md rename to content/code/2010-08-16-an-amazing-summer-of-code-working-on-distutils2.md diff --git a/content/Technologie/2010-10-06-writing-pelican.md b/content/code/2010-10-06-writing-pelican.md similarity index 100% rename from content/Technologie/2010-10-06-writing-pelican.md rename to content/code/2010-10-06-writing-pelican.md diff --git a/content/Technologie/2010-10-10-php5-nginx.md b/content/code/2010-10-10-php5-nginx.md similarity index 100% rename from content/Technologie/2010-10-10-php5-nginx.md rename to content/code/2010-10-10-php5-nginx.md diff --git a/content/Technologie/2010-10-11-dynamically-change-your-gnome-wallpapers.md b/content/code/2010-10-11-dynamically-change-your-gnome-wallpapers.md similarity index 100% rename from content/Technologie/2010-10-11-dynamically-change-your-gnome-wallpapers.md rename to content/code/2010-10-11-dynamically-change-your-gnome-wallpapers.md diff --git a/content/Technologie/2010-10-21-bebox-reboot.md b/content/code/2010-10-21-bebox-reboot.md similarity index 100% rename from content/Technologie/2010-10-21-bebox-reboot.md rename to content/code/2010-10-21-bebox-reboot.md diff --git a/content/Technologie/2011-01-15-distutils2-paris-sprint.md b/content/code/2011-01-15-distutils2-paris-sprint.md similarity index 100% rename from content/Technologie/2011-01-15-distutils2-paris-sprint.md rename to content/code/2011-01-15-distutils2-paris-sprint.md diff --git a/content/Technologie/2011-01-20-pypioncouch.md b/content/code/2011-01-20-pypioncouch.md similarity index 100% rename from content/Technologie/2011-01-20-pypioncouch.md rename to content/code/2011-01-20-pypioncouch.md diff --git a/content/Technologie/2011-02-08-distutils2-paris-sprint-wrapup.md b/content/code/2011-02-08-distutils2-paris-sprint-wrapup.md similarity index 100% rename from content/Technologie/2011-02-08-distutils2-paris-sprint-wrapup.md rename to content/code/2011-02-08-distutils2-paris-sprint-wrapup.md diff --git a/content/Technologie/2011-03-16-unison.md b/content/code/2011-03-16-unison.md similarity index 100% rename from content/Technologie/2011-03-16-unison.md rename to content/code/2011-03-16-unison.md diff --git a/content/Technologie/2011-04-01-Link-suggestions.md b/content/code/2011-04-01-Link-suggestions.md similarity index 100% rename from content/Technologie/2011-04-01-Link-suggestions.md rename to content/code/2011-04-01-Link-suggestions.md diff --git a/content/Technologie/2011-05-25-un-coup-de-main-memoire.md b/content/code/2011-05-25-un-coup-de-main-memoire.md similarity index 100% rename from content/Technologie/2011-05-25-un-coup-de-main-memoire.md rename to content/code/2011-05-25-un-coup-de-main-memoire.md diff --git a/content/Technologie/2011-06-11-jpype-and-boilerpipe.md b/content/code/2011-06-11-jpype-and-boilerpipe.md similarity index 100% rename from content/Technologie/2011-06-11-jpype-and-boilerpipe.md rename to content/code/2011-06-11-jpype-and-boilerpipe.md diff --git a/content/Technologie/2011-07-25-pelican-status-update.md b/content/code/2011-07-25-pelican-status-update.md similarity index 100% rename from content/Technologie/2011-07-25-pelican-status-update.md rename to content/code/2011-07-25-pelican-status-update.md diff --git a/content/Technologie/2011-08-16-languages-influences.md b/content/code/2011-08-16-languages-influences.md similarity index 100% rename from content/Technologie/2011-08-16-languages-influences.md rename to content/code/2011-08-16-languages-influences.md diff --git a/content/Technologie/2011-10-15-ihatemoney.md b/content/code/2011-10-15-ihatemoney.md similarity index 100% rename from content/Technologie/2011-10-15-ihatemoney.md rename to content/code/2011-10-15-ihatemoney.md diff --git a/content/Technologie/2011-12-07-introducing-cornice.md b/content/code/2011-12-07-introducing-cornice.md similarity index 100% rename from content/Technologie/2011-12-07-introducing-cornice.md rename to content/code/2011-12-07-introducing-cornice.md diff --git a/content/Technologie/2012-04-02-carto-forms-fr.md b/content/code/2012-04-02-carto-forms-fr.md similarity index 100% rename from content/Technologie/2012-04-02-carto-forms-fr.md rename to content/code/2012-04-02-carto-forms-fr.md diff --git a/content/Technologie/2012-04-02-carto-forms.md b/content/code/2012-04-02-carto-forms.md similarity index 100% rename from content/Technologie/2012-04-02-carto-forms.md rename to content/code/2012-04-02-carto-forms.md diff --git a/content/Technologie/2012-04-16-djangocong-2012.md b/content/code/2012-04-16-djangocong-2012.md similarity index 100% rename from content/Technologie/2012-04-16-djangocong-2012.md rename to content/code/2012-04-16-djangocong-2012.md diff --git a/content/Technologie/2012-05-01-refactoring-cornice.md b/content/code/2012-05-01-refactoring-cornice.md similarity index 100% rename from content/Technologie/2012-05-01-refactoring-cornice.md rename to content/code/2012-05-01-refactoring-cornice.md diff --git a/content/Technologie/2012-09-17-pyconfr-circus.md b/content/code/2012-09-17-pyconfr-circus.md similarity index 100% rename from content/Technologie/2012-09-17-pyconfr-circus.md rename to content/code/2012-09-17-pyconfr-circus.md diff --git a/content/Technologie/2012-10-22-cheese-and-code-result.md b/content/code/2012-10-22-cheese-and-code-result.md similarity index 100% rename from content/Technologie/2012-10-22-cheese-and-code-result.md rename to content/code/2012-10-22-cheese-and-code-result.md diff --git a/content/Technologie/2012-12-27-gnome-shell.md b/content/code/2012-12-27-gnome-shell.md similarity index 100% rename from content/Technologie/2012-12-27-gnome-shell.md rename to content/code/2012-12-27-gnome-shell.md diff --git a/content/Technologie/2012-12-27-ssh.md b/content/code/2012-12-27-ssh.md similarity index 100% rename from content/Technologie/2012-12-27-ssh.md rename to content/code/2012-12-27-ssh.md diff --git a/content/Technologie/2012-12-29-status.md b/content/code/2012-12-29-status.md similarity index 100% rename from content/Technologie/2012-12-29-status.md rename to content/code/2012-12-29-status.md diff --git a/content/Technologie/2013-02-04-cornice-cors.md b/content/code/2013-02-04-cornice-cors.md similarity index 100% rename from content/Technologie/2013-02-04-cornice-cors.md rename to content/code/2013-02-04-cornice-cors.md diff --git a/content/Technologie/2014-07-31-hawk.md b/content/code/2014-07-31-hawk.md similarity index 100% rename from content/Technologie/2014-07-31-hawk.md rename to content/code/2014-07-31-hawk.md diff --git a/content/Technologie/2015-04-01-service-de-nuages.rst b/content/code/2015-04-01-service-de-nuages.rst similarity index 100% rename from content/Technologie/2015-04-01-service-de-nuages.rst rename to content/code/2015-04-01-service-de-nuages.rst diff --git a/content/Technologie/2015-04-30-ecosysteme-stockage.md b/content/code/2015-04-30-ecosysteme-stockage.md similarity index 99% rename from content/Technologie/2015-04-30-ecosysteme-stockage.md rename to content/code/2015-04-30-ecosysteme-stockage.md index 83aa192..7bbefe9 100644 --- a/content/Technologie/2015-04-30-ecosysteme-stockage.md +++ b/content/code/2015-04-30-ecosysteme-stockage.md @@ -5,7 +5,7 @@ hésitons à continuer à nous entêter avec notre propre solution de stockage/synchronisation.** Comme nous l'écrivions [dans l'article -précédent]({filename}/technologie/2015-04-01-service-de-nuages.rst), nous +précédent]({filename}/code/2015-04-01-service-de-nuages.rst), nous souhaitons construire une solution de stockage générique. On refait [Daybed](http://daybed.readthedocs.org) chez Mozilla \! diff --git a/content/Technologie/2015-05-01-cliquet-permissions.rst b/content/code/2015-05-01-cliquet-permissions.rst similarity index 100% rename from content/Technologie/2015-05-01-cliquet-permissions.rst rename to content/code/2015-05-01-cliquet-permissions.rst diff --git a/content/Technologie/2015-05-01-stocker-permissions.rst b/content/code/2015-05-01-stocker-permissions.rst similarity index 99% rename from content/Technologie/2015-05-01-stocker-permissions.rst rename to content/code/2015-05-01-stocker-permissions.rst index 1affd60..6d6f0e1 100755 --- a/content/Technologie/2015-05-01-stocker-permissions.rst +++ b/content/code/2015-05-01-stocker-permissions.rst @@ -63,7 +63,7 @@ Obtenir la liste des "principals" d'un ACE d'une ACL (e.g. *modifier un enregistrement*). Avec le `système de permissions choisi -<{filename}/technologie/2015-05-01-cliquet-permissions.rst>`_, les permissions d'un +<{filename}/code/2015-05-01-cliquet-permissions.rst>`_, les permissions d'un objet héritent de celle de l'objet parent. Par exemple, avoir le droit d'écriture sur un *bucket* permet la diff --git a/content/Technologie/2015-05-09-passphrases.md b/content/code/2015-05-09-passphrases.md similarity index 100% rename from content/Technologie/2015-05-09-passphrases.md rename to content/code/2015-05-09-passphrases.md diff --git a/content/Technologie/2015-05-11-keybase.io.md b/content/code/2015-05-11-keybase.io.md similarity index 100% rename from content/Technologie/2015-05-11-keybase.io.md rename to content/code/2015-05-11-keybase.io.md diff --git a/content/Technologie/2015-05-25-pgp-problemes.md b/content/code/2015-05-25-pgp-problemes.md similarity index 100% rename from content/Technologie/2015-05-25-pgp-problemes.md rename to content/code/2015-05-25-pgp-problemes.md diff --git a/content/Technologie/2015-06-01-kinto.1.0-fr.rst b/content/code/2015-06-01-kinto.1.0-fr.rst similarity index 100% rename from content/Technologie/2015-06-01-kinto.1.0-fr.rst rename to content/code/2015-06-01-kinto.1.0-fr.rst diff --git a/content/Technologie/2015-07-01-cliquet.rationale.rst b/content/code/2015-07-01-cliquet.rationale.rst similarity index 98% rename from content/Technologie/2015-07-01-cliquet.rationale.rst rename to content/code/2015-07-01-cliquet.rationale.rst index 970475e..77a658e 100755 --- a/content/Technologie/2015-07-01-cliquet.rationale.rst +++ b/content/code/2015-07-01-cliquet.rationale.rst @@ -18,7 +18,7 @@ Les origines ============ L'objectif pour le premier trimestre 2015 était de construire un service de -stockage et de `synchronisation de listes de lecture <{filename}/technologie/2015-04-01-service-de-nuages.rst>`_. +stockage et de `synchronisation de listes de lecture <{filename}/code/2015-04-01-service-de-nuages.rst>`_. Au démarrage du projet, nous avons tenté de rassembler toutes les bonnes pratiques et recommandations, venant de différentes équipes et surtout des derniers projets déployés. @@ -142,10 +142,10 @@ de *Firefox Sync* pour la gestion de la concurrence et de l'«offline-first». Il est `documenté en détail `_. Dans un monde idéal, ce protocole serait versionné, et formalisé dans une RFC. -En rêve, il existerait même plusieurs implémentations avec des technologies différentes +En rêve, il existerait même plusieurs implémentations avec des codes différentes (Python, Go, Node, etc.). [#]_ -.. [#] Voir notre `article dédié sur les permissions <{filename}/technologie/2015-05-01-cliquet-permissions.rst>`_ +.. [#] Voir notre `article dédié sur les permissions <{filename}/code/2015-05-01-cliquet-permissions.rst>`_ .. [#] Rappel: nous sommes une toute petite équipe ! @@ -220,7 +220,7 @@ mais rien n'empêcherait d'implémenter le stockage dans un modèle relationnel. Comme les composants peuvent être remplacés depuis la configuration, il est tout à fait possible d'étendre *Cliquet* avec des notions métiers ou des -technologies exotiques ! Nous avons posé quelques idées dans `la documentation +codes exotiques ! Nous avons posé quelques idées dans `la documentation de l'éco-système `_. Dans les prochaines semaines, nous allons introduire la notion d'«évènements» (ou signaux), @@ -426,7 +426,7 @@ Quelques questions courantes Pourquoi Python ? On prend beaucoup de plaisir à écrire du Python, et le calendrier annoncé -initialement était très serré: pas question de tituber avec une technologie +initialement était très serré: pas question de tituber avec une code mal maitrisée ! Et puis, après avoir passé près d'un an sur un projet Node.js, l'équipe avait diff --git a/content/Technologie/2015-07-01-whistler-use-cases.rst b/content/code/2015-07-01-whistler-use-cases.rst similarity index 100% rename from content/Technologie/2015-07-01-whistler-use-cases.rst rename to content/code/2015-07-01-whistler-use-cases.rst diff --git a/content/Technologie/2015-08-01-donnees-et-signatures.rst b/content/code/2015-08-01-donnees-et-signatures.rst similarity index 100% rename from content/Technologie/2015-08-01-donnees-et-signatures.rst rename to content/code/2015-08-01-donnees-et-signatures.rst diff --git a/content/Technologie/2015-10-12-webcrypto-distribution-signing.md b/content/code/2015-10-12-webcrypto-distribution-signing.md similarity index 100% rename from content/Technologie/2015-10-12-webcrypto-distribution-signing.md rename to content/code/2015-10-12-webcrypto-distribution-signing.md diff --git a/content/Technologie/2015-11-24-email-doit-il-mourir.md b/content/code/2015-11-24-email-doit-il-mourir.md similarity index 100% rename from content/Technologie/2015-11-24-email-doit-il-mourir.md rename to content/code/2015-11-24-email-doit-il-mourir.md diff --git a/content/Technologie/2016-01-14-atelier-crypto-1.md b/content/code/2016-01-14-atelier-crypto-1.md similarity index 100% rename from content/Technologie/2016-01-14-atelier-crypto-1.md rename to content/code/2016-01-14-atelier-crypto-1.md diff --git a/content/Technologie/2016-02-11-lets-encrypt.md b/content/code/2016-02-11-lets-encrypt.md similarity index 100% rename from content/Technologie/2016-02-11-lets-encrypt.md rename to content/code/2016-02-11-lets-encrypt.md diff --git a/content/Technologie/2016-03-17-ZeroNet.md b/content/code/2016-03-17-ZeroNet.md similarity index 99% rename from content/Technologie/2016-03-17-ZeroNet.md rename to content/code/2016-03-17-ZeroNet.md index 8fe0a9d..c5e503f 100644 --- a/content/Technologie/2016-03-17-ZeroNet.md +++ b/content/code/2016-03-17-ZeroNet.md @@ -112,7 +112,7 @@ est de chiffrer les messages avec la clé du destinataire et de le mettre dans un *pot commun*. Tout le monde essaye de déchiffrer tous les messages, mais ne peut déchiffrer que les siens. -Cela permet de ne **pas** fuiter de méta-données, [à l'inverse de PGP]({filename}/technologie/2015-05-25-pgp-problemes.md). +Cela permet de ne **pas** fuiter de méta-données, [à l'inverse de PGP]({filename}/code/2015-05-25-pgp-problemes.md). Je n'ai en fait pas de réponse claire à donner à cette question: l'auteur de ZeroNet me disait que 10MB (la limite de taille d'un site, par défaut) diff --git a/content/Technologie/2016-03-25-ssl-trust.md b/content/code/2016-03-25-ssl-trust.md similarity index 100% rename from content/Technologie/2016-03-25-ssl-trust.md rename to content/code/2016-03-25-ssl-trust.md diff --git a/content/Technologie/2016-05-31-formbuilder.md b/content/code/2016-05-31-formbuilder.md similarity index 100% rename from content/Technologie/2016-05-31-formbuilder.md rename to content/code/2016-05-31-formbuilder.md diff --git a/content/Technologie/2018-02-25-webnotes.md b/content/code/2018-02-25-webnotes.md similarity index 100% rename from content/Technologie/2018-02-25-webnotes.md rename to content/code/2018-02-25-webnotes.md diff --git a/content/Technologie/2018-03-03-groupement-achats.md b/content/code/2018-03-03-groupement-achats.md similarity index 100% rename from content/Technologie/2018-03-03-groupement-achats.md rename to content/code/2018-03-03-groupement-achats.md diff --git a/content/Technologie/2022-08-29-deploiement-vps.md b/content/code/2022-08-29-deploiement-vps.md similarity index 100% rename from content/Technologie/2022-08-29-deploiement-vps.md rename to content/code/2022-08-29-deploiement-vps.md diff --git a/content/images/isbn-covers/31eql7bSB8L._SL160_.jpg b/content/images/isbn-covers/31eql7bSB8L._SL160_.jpg new file mode 100644 index 0000000..3506984 Binary files /dev/null and b/content/images/isbn-covers/31eql7bSB8L._SL160_.jpg differ diff --git a/content/images/isbn-covers/9781260474183.jpg b/content/images/isbn-covers/9781260474183.jpg new file mode 100644 index 0000000..fa6f267 Binary files /dev/null and b/content/images/isbn-covers/9781260474183.jpg differ diff --git a/content/images/isbn-covers/9782080420015.jpg b/content/images/isbn-covers/9782080420015.jpg new file mode 100644 index 0000000..eae0733 Binary files /dev/null and b/content/images/isbn-covers/9782080420015.jpg differ diff --git a/content/images/isbn-covers/9782354801786.jpg b/content/images/isbn-covers/9782354801786.jpg new file mode 100644 index 0000000..12af4ee Binary files /dev/null and b/content/images/isbn-covers/9782354801786.jpg differ diff --git a/content/images/isbn-covers/9782358721974.jpg b/content/images/isbn-covers/9782358721974.jpg new file mode 100644 index 0000000..1596c73 Binary files /dev/null and b/content/images/isbn-covers/9782358721974.jpg differ diff --git a/content/images/isbn-covers/9782371000926.jpg b/content/images/isbn-covers/9782371000926.jpg new file mode 100644 index 0000000..3506984 Binary files /dev/null and b/content/images/isbn-covers/9782371000926.jpg differ diff --git a/content/images/isbn-covers/9782849503812.jpg b/content/images/isbn-covers/9782849503812.jpg new file mode 100644 index 0000000..8259a35 Binary files /dev/null and b/content/images/isbn-covers/9782849503812.jpg differ diff --git a/content/images/isbn-covers/9782954323701.jpg b/content/images/isbn-covers/9782954323701.jpg new file mode 100644 index 0000000..0399912 Binary files /dev/null and b/content/images/isbn-covers/9782954323701.jpg differ diff --git a/content/images/isbn-covers/9782955678244.jpg b/content/images/isbn-covers/9782955678244.jpg new file mode 100644 index 0000000..57f10e0 Binary files /dev/null and b/content/images/isbn-covers/9782955678244.jpg differ diff --git a/content/images/isbn-covers/9791091772198.jpg b/content/images/isbn-covers/9791091772198.jpg new file mode 100644 index 0000000..bbcd410 Binary files /dev/null and b/content/images/isbn-covers/9791091772198.jpg differ diff --git a/content/pages/projets.md b/content/pages/projets.md index 7dd0e1f..dcc6a23 100644 --- a/content/pages/projets.md +++ b/content/pages/projets.md @@ -119,3 +119,4 @@ même. La maintenance des serveurs fait donc partie du lot :-) - Master's degree in Software Engineering, University of Oxford Brookes. - BTS Informatique et Réseau, Angers. + diff --git a/content/weeknotes/2023-39.md b/content/weeknotes/2023-39.md new file mode 100644 index 0000000..0e623df --- /dev/null +++ b/content/weeknotes/2023-39.md @@ -0,0 +1,36 @@ +--- +date: 2023-09-29 +headline: Une semaine mi-statique, mi mobile. Difficile de trouver un rythme de travail qui me convienne. +--- +# 2023, Semaine 39 + +## Ce qui s'est passé + +Framasoft +: J'ai commencé à travailler sur l'outil de supervision, en partant bille en tête sur une solution qui s'est avérée ne pas être la plus simple à mettre en place. J'ai passé pas mal de temps à questionner mes choix techniques, pour finalement en changer et me questionner sur la partie **metier**, ce qui me semblait plus intéressant. A partir du moment où j'ai arrêté d'essayer d'appliquer une solution « déjà faite » j'ai pu me questionner sur le modèle de données et aller de l'avant. Étrangement c'est quand j'ai produit le moins de code que j'ai trouvé que j'étais le plus productif. + +Notmyidea +: Je n'ai pas trop avancé sur la partie structure juridique, mais les choses décantent et me paraissent plus clair que la semaine passée. Je penche en ce moment pour une solution en auto-entreprise pour les quelques premières missions, quitte à remettre en question ce choix par la suite si je trouve de nouveaux·elles client·es. Je me laisse le temps pour décider. +: J'ai procrastiné passé beaucoup plus de temps que prévu sur la mise en place d'outils utiles pour moi, et à peaufiné mon site web. J'ai maintenant un bouncer ZNC et un VPN fait maison qui me permettent de travailler dans de meilleures conditions. Je suis à la fois content d'avoir pris le temps de mettre en place des outils, et en même temps j'ai une impression de procrastination. + +## Des joies + +- Avoir pris le temps d'aller « à la ville » pour passer du temps avec des amis et sociabiliser. +- M'écouter et décider de dormir sur place pour travailler aussi sur Rennes le lendemain. +- Aller à l'espace de coworkig à côté de chez moi. +- Prendre le temps de faire des choses peu importantes entassées dans ma todolist depuis trop longtemps. +- Récolter des fruits de discussions passées lors d'une soirée. Vive les todo-list ! +- Voir qu'une demande de modifications que j'ai faite soit appréciée et intégrée rapidement. +- Dépanner le serveur de [copanier](https://github.com/almet/copanier), trouver le problème rapidement et le régler facilement. + +## Des peines + +- Je suis retombé malade en fin de semaine, et donc bien fatigué. Ca impacte mon moral et ma capacité de concentration. +- Des discussions compliquées dans mon collectif de vie. Je suis content de poser des limites, mais je sens que je cherche toujours la validation des autres. +- Sentir que ma posture dans les conversations est plus ferme que par le passé. Je suis à la fois content de ne pas **toujours** me remettre en question, mais j'aimerai réussir à faire preuve de plus d'ouverture. Il faut trouver l'équilibre +- Triste de voir des conflits escalader alors que ça pourrait être autrement. + +## Vu, lu, écouté + +- 🎮 J'ai continué [Baba is you](https://fr.wikipedia.org/wiki/Baba_Is_You) avec Arthur. C'était sympa de se faire les reflexions à deux cerveaux. +- ▶︎ [Vu une présentation sur DuckDB](https://www.youtube.com/watch?app=desktop&v=dVzfNZN9NKI&list=PL8uoeex94UhFcwvAfWHybD7SfNgIUBRo-&index=128), une base de données locale et minimaliste qui semble adaptée pour de la visualisation de données à grande échelle. diff --git a/isbn_downloader.py b/isbn_downloader.py new file mode 100644 index 0000000..39f59a5 --- /dev/null +++ b/isbn_downloader.py @@ -0,0 +1,57 @@ +import logging +import os +from pathlib import Path + +import requests +from pelican import log, signals + +log = logging.getLogger(__name__) + + +def check_or_download_image(isbn, output_dir): + log.info(f"Downloading cover for {isbn=}") + + output_dir = Path(output_dir) + # remote_url = f"https://images.isbndb.com/covers/41/83/{isbn}.jpg" + image_relative_path = f"images/isbn-covers/{isbn}.jpg" + image_path = output_dir / image_relative_path + + if image_path.exists(): + return image_relative_path + else: + try: + remote_url = f"https://www.googleapis.com/books/v1/volumes?q=isbn:{isbn}" + api_resp = requests.get(remote_url) + api_resp.raise_for_status() + + returned = api_resp.json() + if returned["totalItems"] > 0: + thumbnail_url = returned["items"][0]["volumeInfo"]["imageLinks"][ + "thumbnail" + ] + response = requests.get(thumbnail_url, stream=True) + + os.makedirs(os.path.dirname(image_path), exist_ok=True) + + with open(image_path, "wb") as fp: + for chunk in response.iter_content(chunk_size=8192): + fp.write(chunk) + + return image_relative_path + except: + log.error( + f"No ISBN cover found for {isbn=}. Look at https://isbnsearch.org/isbn/{isbn}" + ) + return + + +def run_for_each_article(generator): + for article in generator.articles: + isbn = getattr(article, "isbn", None) + if isbn: + isbn = isbn.replace("-", "") + article.isbn_cover = check_or_download_image(isbn, generator.path) + + +def register(): + signals.article_generator_finalized.connect(run_for_each_article) diff --git a/mnmlist/static/css/main.css b/mnmlist/static/css/main.css index e8b0de4..eebde4f 100644 --- a/mnmlist/static/css/main.css +++ b/mnmlist/static/css/main.css @@ -67,6 +67,10 @@ h1 { text-decoration-style: unset; } + h1 small { + font-size: 0.7em; + } + h2 { font-size: 1.3em; } @@ -385,4 +389,39 @@ hr::after { #links ul { padding: 0; +} + +a[data-size]::after { + content: attr(data-size); + vertical-align: super; + font-style: italic; + font-size: 10px; +} + +a[data-size='2'] { + font-size: 1.3em; +} + +a[data-size='3'] { + font-size: 1.6em; +} + +a[data-size='4'] { + font-size: 1.8em; +} + +a[data-size='5'] { + font-size: 2.2em; +} + +#feed img { + weight: 25px; + width: 25px; +} + +.book-cover { + float: right; + padding-right: 1em; + max-width: 128px; + max-height: 192px; } \ No newline at end of file diff --git a/mnmlist/static/rss.svg b/mnmlist/static/rss.svg new file mode 100644 index 0000000..cea21e2 --- /dev/null +++ b/mnmlist/static/rss.svg @@ -0,0 +1,38 @@ + + diff --git a/mnmlist/templates/article.html b/mnmlist/templates/article.html index 95ab51f..52eec75 100644 --- a/mnmlist/templates/article.html +++ b/mnmlist/templates/article.html @@ -4,7 +4,12 @@
{% if article.category == "Lectures" %} -

« {{ article.title }} » par {{ article.author }}

+ {% if article.category == "Lectures" and article.isbn_cover %} +
+ +
+ {% endif %} +

{{ article.title }}
par {{ article.author }}

{% if article.headline %}

{{ article.headline }}

{% endif %} diff --git a/mnmlist/templates/base.html b/mnmlist/templates/base.html index 0b744d7..ee71572 100644 --- a/mnmlist/templates/base.html +++ b/mnmlist/templates/base.html @@ -33,6 +33,9 @@ {% include 'github.html' %} {% block content %} {% endblock %} +
+ +
diff --git a/mnmlist/templates/categories.html b/mnmlist/templates/categories.html index e29be0c..beb9410 100644 --- a/mnmlist/templates/categories.html +++ b/mnmlist/templates/categories.html @@ -1,8 +1,14 @@ {% extends "base.html" %} {% block content %} - + + + {% endblock %} diff --git a/mnmlist/templates/category.html b/mnmlist/templates/category.html index df7dd32..0f46062 100644 --- a/mnmlist/templates/category.html +++ b/mnmlist/templates/category.html @@ -1,7 +1,9 @@ {% extends "base.html" %} {% block content %} {% if category in CATEGORIES_DESCRIPTION.keys() %} -

{{ CATEGORIES_DESCRIPTION[category][0] }}

+

{{ CATEGORIES_DESCRIPTION[category][0] }} + +

{{ CATEGORIES_DESCRIPTION[category][1] }}

{% else %} diff --git a/mnmlist/templates/tag.html b/mnmlist/templates/tag.html index 0118294..21af7c8 100644 --- a/mnmlist/templates/tag.html +++ b/mnmlist/templates/tag.html @@ -1,3 +1,3 @@ {% extends "index.html" %} {% block title %}{{ tag }} - {{ super() }}{% endblock %} -{% block pagetitle %}Posts with #{{ tag }} tag{% endblock %} +{% block pagetitle %}Tag « {{ tag }} »{% endblock %} diff --git a/mnmlist/templates/tags.html b/mnmlist/templates/tags.html index a6011a0..ebcae75 100644 --- a/mnmlist/templates/tags.html +++ b/mnmlist/templates/tags.html @@ -1,8 +1,10 @@ {% extends "base.html" %} {% block content %} +

Voici une liste de tous les tags utilisés sur ce site :

    -{% for tag, articles in tags %} -
  • {{ tag }}
  • + +{% for tag, articles in tags|sort(attribute='articles|length', reverse=true) %} + {{ tag }} {% endfor %}
{% endblock %} diff --git a/pelicanconf.py b/pelicanconf.py index f45247e..3543a28 100644 --- a/pelicanconf.py +++ b/pelicanconf.py @@ -18,9 +18,7 @@ DEFAULT_DATE_FORMAT = "%d %B %Y" LINKS = [] PLUGIN_PATHS = ["."] -PLUGINS = [ - "simplereader", -] +PLUGINS = ["simplereader", "isbn_downloader"] CACHE_OUTPUT_DIRECTORY = "cache" CACHE_DOMAIN = "/cache/" @@ -54,4 +52,8 @@ CATEGORIES_DESCRIPTION = { "Journal", "Quelques pensées partagées, bien souvent sur le monde du travail ou de la technologie.", ), + "notes": ( + "Carnet de notes", + "Prises bien souvent en regardant une vidéo ou un article en ligne. Je les mets ici pour pouvoir les retrouver quand le besoin se fait sentir.", + ), } diff --git a/requirements.txt b/requirements.txt index 6862400..eae436b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,3 +3,4 @@ markdown datefinder typogrify ghp-import +requests