remove nec (use an other repo)

This commit is contained in:
rick 2023-12-15 18:37:58 +01:00
parent 5dc8aca35b
commit 0902251a66
Signed by: Rick
GPG key ID: 5CBE8779CD27BCBA
16 changed files with 9 additions and 1434 deletions

View file

@ -46,7 +46,6 @@ destination ($target par défaut).
Options :
-h génère ce message et arrête le script
-c nettoie les fichiers générés
-o génère les fichiers org
-t lance un docker pour pouvoir tester le site
Les options suivantes seront codées dans un futur proche :
@ -54,6 +53,7 @@ Les options suivantes seront codées dans un futur proche :
fr par défaut
-n génère la langue dans le nom du fichier et non dans le chemin
(example.org/fr/index.html -> example.org/index.fr.html)
-o génère les fichiers org
EOF
}
@ -258,5 +258,5 @@ ln -s $pathLinks $target
if [ $org -eq 1 ]
then
echo "Generate org files..."
emacs -u $USER --script publish.el
#emacs -u $USER --script publish.el
fi

View file

@ -3,4 +3,10 @@
<!--<p>Vous pouvez ici retrouver des liens vers des pages contenant parfois certaines pensées fugaces et autres (d'où le nom, habile). Comme ce format se rapproche presque du blog, j'ai préféré les écrire et générer ces pages avec OrgMode, afin d'avoir une lecture plus fluide (et moins de choses à écrire).</p>-->
<p>The <a href="about.html">about</a> page contains externals sources which I use on my site. They can be under other licences than GPL3 (unlike the code).</p>
<h2>Reverse WriteUp</h2>
<p>You can find some write ups about crackmes I wrote in French and English.</p>
<ul>
<li><a href="/org/reverse.html#org3d3e6e6">some WUs</a></li>
</ul>
</div>

View file

@ -6,7 +6,7 @@
<h2>Prises de notes</h2>
<p>J'ai pu suivre quelques MOOCs ou conférences en ligne (et je prévois de continuer). Je prends des notes et j'essaie de faire des résumés ensuite de ces prises de notes. Vous pouvez retrouver ici des résumés de ces conférences.</p>
<ul>
<li><a href="/nec/sitemap.html">résumés & cheatsheets</a></li>
<li><a href="/org/notes.html">mes notes</a></li>
<li><a href="livres.html">critiques de livres</a></li>
<!--<li><a href="autres/gpg.html">Clés GPG</a></li>-->
<!--<li><a href="inspiration.html">inspiration</a>: pourquoi avoir fait ce site comme ça ?</li>-->

View file

@ -1,99 +0,0 @@
#+title: Au delà des couleurs, des interfaces adaptées au daltonisme
#+date: <2021-10-22 ven.>
#+html_link_up:../roadmap.html
* Introduction
[[https://devfest2019.gdgnantes.com/sessions/au_dela_des_couleurs__des_interfaces_adaptees_au_daltonisme/][Conférence DevFest 2019]] - [[https://twitter.com/Laoraw][Twitter]]
Conférence faite par Laura Wacrenier, UX Designer chez SonarSource (éditeur de SonarQube).
* Le daltonisme
Le daltonisme touche 8% de la population masculine caucasienne, 7% et 4% dans les populations asiatique et africaine. Seul 0.5% des femmes sont touchées par le daltonisme.
Cela s'explique par le fait que le gêne responsable du daltonisme est le gêne X.
Dans un oeil normal, des connes bleu, vert et rouge tapissent le fond de la rétine. Le daltonisme va faire muter ou disparaitre un ou des connes.
La forme de daltonisme la plus courante est celle qui affecte le conne vert: enrivon 6% des hommes dans le monde sont touchés.
Les couleurs vertes se fondent avec les couleurs jaunes et rouges, le violet disparait aussi.
* Bonnes pratiques
** Contrastes
*** Des textes
**** C'est quoi ?
Le contraste est la différence de couleur entre la couleur du texte et celle de son arrière plan.
Il existe des recommendations pour l'accessibilité: les WCAG (Web Content Accessiblity Guidelines). Ils ont fait plusieurs notes pour savoir si un site est accessible:
- A :: note minimum pour avoir un texte lisible
- AAA :: tout le monde peut lire le texte
**** Les outils
Il existe de nombreux sites web qui permettent de voir le contraste sur son site:
- webaim color contrast checker
- tanaguru contrast finder : conseille des palettes
- les outils intégrés aux navigateurs
- plugins pour les outils de design
*** Des éléments non textuels
Il est aussi possible de s'appuyer sur les WCAG en utilisant 2 couleurs proches. Un bon exemple est les routes sur l'interface de GMaps (bande de couleurs collées les unes aux autres).
Pour se rendre compte rapidement si des éléments non textuels sont accessibles, il suffit de mettre l'interface avec un filtre noir et blanc. Si on ne s'y retrouve plus, il n'y a pas
assez de contraste. Il existe aussi des outils pour ce faire:
- plugins pour les outils de design
- Let's get colorblind :: plugin FireFox
- Color Oracle :: logiciel pour passer l'interface du PC en noir et blanc (a aussi des filtres pour les différents types de daltonisme)
*La couleur n'est qu'une information supplémentaire et ne doit pas la contenir.*
*** Des Formes
Rajouter des formes pour préciser des informations, mettre le bouton en valeur avec une icone et un fond. Exemples:
- Spotify et le cercle en dessous du mode aléatoire s'il est sélectionné.
- SonarQube et les espaces blancs entre 2 couleurs sur des diagrammes camemberts
** Iconographie
Mettre une icone symbolisant l'action / le message. Rajouter du texte pour expliquer en cas de soucis et non pas juste encadrer le soucis en rouge.
** Labels / Description de couleur
Mettre la légende du graphique directement dans les parties concernées. Rajouter /le nom basique/ de la couleur sous celle-ci lorsqu'on peut en choisir plusieurs.
** Web 2.0
Le standart du web 2.0 souhaite qu'on souligne les liens. Cela permet de les rendre plus visibles.
** Le mode spécial daltonien
Il ne devrait pas exister ou du moins être activé par défaut. Les daltoniens n'ont pas forcément le temps / envie de chercher dans les paramètres.
** En conclusion
- contraste texte minimum AA
- ne pas utiliser les couleurs comme signifiant
- utiliser la texture, icones, labels, contraste de formes à la place
- liens soulignés
* Comment convaincre l'équipe
Les personnes en situation de handicap sont une minorité, cela peut freiner les supérieurs à faire des aménagements pour moins de 5% des utilisateurs. Cependant,
*ces améliorations sont bénéfiques à tout le monde*. Personne ne se plaint d'un site web trop facile à lire.
#+BEGIN_QUOTE
Solve for one, extend to many. ---Microsoft Inclusive Design
#+END_QUOTE
Exemples de cas où une interface accessible bénificie à tout le monde:
- handicape temporaire (cataracte...)
- indiquation de la couleur pour la chemise noir et bleue foncée pour éviter de se tromper avec une mauvaise luminosité
- contraste fort sur gmaps pour pouvoir voir rapidement l'application lorsqu'il y a beaucoup de soleil
*Tout le monde peut-être distrait ou impatient. Tout le monde vieillit.* La mise en place d'un standart maintenant permet de nous faciliter la vie dans plusieurs années.
Les designs trop simples sont l'équivalent d'un auto-sabotage.

View file

@ -1,46 +0,0 @@
#+title: Promouvoir son projet open-source comme une rock star !
#+date: <2021-10-25 lun.>
#+html_link_up:../roadmap.html
* Introduction
[[https://devfest2019.gdgnantes.com/sessions/promouvoir_son_projet_open_source_comme_une_rock_star__/][Conférence DevFest 2019]] - [[https://github.com/zenika-open-source/promote-open-source-project][Slides et cheatsheet]] - [[https://twitter.com/tbetous][Twitter]] - [[https://twitter.com/FranckAbgrali][Twitter]]
Conférence résumant ce que les auteurs ont vécu pour promouvoir leur projet. (@tbetous @FranckAbgrali).
* Le README
Le nom du projet ne doit pas être trop long ou avoir trop de "buzzname" dedans.
On peut ajouter la licence à la fin du README et *le structurer avec des éléments de formatage* du Markdown (ou autre format utilisé pour le fichier). Cela permet d'avoir
un README plus attractif et jolie. *Il est aussi recommandé de faire des sections* afin de pouvoir guider facilement l'utilisateur. L'ajout d'un GIF de démo est aussi utile
pour montrer comment utiliser le logiciel.
Les badges permettent aussi d'indiquer rapidement des informations.
** La documentation
Ajouter la documentation dans le README peut s'avérer lourd sur le long terme. Il vaut mieux utiliser un service externe (wiki de GitHub, Vuepress avec Netifly, Docz, Docusaurus...).
* Les stars
Le nombre de stars influence indirectement l'avis des utilisateurs (plus de stars = bonne santé du projet).
1. Communiquer le projet aux proches / collègues afin d'avoir une première base de stars
2. Communiquer ensuite le projet aux autres via des canaux de communications comme Reddit, HackerNews, Human Coders, Decto, ProductHunt...
3. Communiquer sur toutes les plateformes d'un coup pour profiter d'un coup de buzz
4. Ne pas négliger les petits canaux de communications
La meilleure période de la semaine pour communiquer se situe entre mardi et jeudi.
Comme pour les recommandations Youtube, GitHub Trending met en avant des projets via un algorithme (qu'on ne connait pas).
* Et après ?
Pour continuer à communiquer sur le projet, il faut faire:
- faire des articles (sur les technos du projet, quel problème il résout...)
- faire des conférences dessus
- des mises à jours régulières (pour montrer que le projet est actif)
- *organiser les issues pour permettre aux personnes de voir facilement comment contribuer*
- *remercier les contributeurs (tweet, section dans le README...)*
- construire sa communauté sur Slack, Discord... pour pouvoir mieux communiquer avec les utilisateurs et contributeurs

View file

@ -1,118 +0,0 @@
#+title: Le sommeil, à la recherche du temps perdu
#+date: <2021-10-21 jeu.>
#+html_link_up:../roadmap.html
* Introduction
[[https://devfest2019.gdgnantes.com/sessions/le_sommeil__a_la_recherche_du_temps_perdu/][Conférence DevFest 2019]] -- [[https://github.com/joow/sommeil][Dépôt Git de la conférence]]
Cette conférence n'a pas été faite par un professionnel mais se base sur les travaux scientifiques les plus récents sur le sommeil.
* Qu'est ce que le sommeil ?
Le sommeil est un état physiologique où on perd la notion du monde extérieur. C'est une état partagé par la quasi totalité des espèces.
Il permet de récupérer aussi bien au niveau physique que mental.
* Pourquoi on s'endort ?
** La Synchronisation
*On s'endort afin de synchroniser notre horloge interne.* Notre corps base sa synchronisation sur la lumière, c'est l'équivalent du [[https://fr.wikipedia.org/wiki/Network_Time_Protocol][protocole NTP]] pour les humains.
Au XXe siècle, 2 scientifiques se sont enfermés dans une installation sans lumière. Ils ont commencé à avoir un cycle de sommeil de 15h et 9h d'éveil.
Le rythme circadien humain est basé sur un cycle de 24h et la lumière permet de resynchroniser ce cycle.
Environ 40% de la population se couche tôt et 30% se couche tard. Cette particularité est génétique et héréditaire.
Si on se réveille avant l'heure de fixé par notre système, le cerveau n'est pas encore complètement allumé. Certaines parties peuvent ne pas "marcher", par exemple: le controle des émotions.
** La Molécule
Le corp génère une molécule tout au long de la période d'éveil: *l'adénosine*. À partir d'une certaine concentration, cela signale au corp qu'il faut aller se coucher.
*C'est un moyen de pression pour aller dormir.*
* Les différentes phases du sommeil
Il existe 2 grandes phases:
- sommeil lent (NREM[fn:1])
- sommeil paradoxal (REM[fn:2])
Le sommeil est découpé en cycle durant lesquels on passe du sommeil léger à profond puis à nouveaux léger avant de passer en sommeil paradoxal.
On a entre 3 et 6 cycles par nuit de ce type.
** Sommeil lent
Il se déroule en 3 phases:
1. endormissement (5 à 20 minutes)
2. sommeil léger (50% du temps de sommeil[fn:3])
3. sommeil profond (la phase qui nous permet de récupérer le plus)
*** Sommeil profond
Cette phase permet de consolider sa mémoire.
L'humain a une RAM qui stocke toutes les informations de la journée: l'hippocampe. L'équivalent du disque dur, la mémoire à long termes, est le cortex.
Losque l'on dort, cela permet de vider sa RAM dans son disque dur et de se souvenir des différents éléments de la journée.
*Ne pas dormir assez empeche de vider complètement la RAM.* Certaines informations seront perdues en plus parce qu'elles ne seront pas stockées dans le cortex.
De plus, on va pouvoir retenir moins de choses pendant la journée parce que la RAM est déjà en partie remplie.
** Sommeil Paradoxal
Lors de cette phase, le corp est paralysé et les yeux bougent sous les paupières. Il y a une forte acitvité cérébrale, parfois plus intense qu'en journée. Cela est dû aux nombreuses
communiquations qui se font entre les différentes parties du cerveau.
C'est aussi durant cette phase qu'on fait des rêves. Freud était le premier a avoir émis l'hypothèse que le cerveau produisait les rêves.
Si l'on pensait avant que les rêves étaient constitués des différents moments de la journée, des études récences ont montré qu'ils sont en fait constitué des émotions ressenties
mis en scène dans des situations différentes.
Cela permet d'évacuer les émotions de la journée et de créer de nouvelles connexions synaptiques.
* Combien de temps doit on dormir ?
Il faut dormir entre *7 et 9 heures*. Le meilleur temps de sommeil est 8 heures. Il faut bien sûr plus de temps pour les enfants et encore plus pour les nourrissons.
Si on ne dort pas assez, cela génère *une dette du sommeil* qui n'est pas récupérable (cf. [[*Sommeil profond]]).
** Et la sieste ?
La sieste est une bonne béquille si on dort bien. La NASA a autorisé la sieste pour tout son personnel. Elle ne sert cependant à rien si le sommeil est mauvais.
* Comment bien dormir ?
Si on dort mal, il faut aller voir le médecin mais éviter de prendre les somnifères s'il en prescrit. Il est préférable de suivre une thérapie comportementale.
Il faut :
- avoir des heures régulières de couchés (même le week-end)
- avoir une activité physique régulière
- se détendre
- ne pas prendre de caféine ou d'alcool
- pas de lumières, d'appareil électronique (la lumière bleue..)
* Et l'informatique ?
Il faut faire des applications avec moins de notifications. Utiliser les capteurs et les maisons connectées pour détecter le meilleur moment pour aller dormir.
Cela permettrait de réguler la température et la luminosité pour optimiser le sommeil.
* Ressources pour aller plus loin
** Livre
Un livre est recommandé à la fin de la conférence: *The Sleep Solution*.
** Liens
Ces liens sont disponibles en fin de slides.
- [[https://peterattiamd.com/matthewwalker1/][Why we sleep (podcasts)]]
- [[https://arxiv.org/abs/1805.02544][Need for Sleep: the Impact of a Night of Sleep Deprivation on Novice Developers' Performance]]
- [[https://qz.com/1301123/why-eight-hours-a-night-isnt-enough-according-to-a-leading-sleep-scientist/][Why eight hours a night isnt enough, according to a leading sleep scientist]]
- [[https://www.inserm.fr/dossier/sommeil/][Faire la lumière sur notre activité nocturne]]
* Footnotes
[fn:1] Not Rapid Eye movement
[fn:2] Rapid Eye Movement
[fn:3] Il ne précise pas s'il s'agit du temps total de sommeil ou juste de cette phase

View file

@ -1,83 +0,0 @@
#+TYP_TODO: TODO VU EnCours SansVideos | DONE PasDeNotes
Fichier contenant les différentes conférences et vidéos que je prévois
de regarder. Elles sont triées par ordre d'importance et par
évènements. Les codelabs ou les conférences sans vidéos sont indiquées
"SansVideos" et listées à la fin des journées.
* DevFest
** 2019
*** 21 octobre
**** PasDeNotes [[https://devfest2019.gdgnantes.com/sessions/comment_j_ai_fini_par_deployer_a_2h_du_matin_une_application_sur_aws_pour_piloter_des_voitures_electriques_avec_un_velo_d_appartement_/][Comment j'ai fini par déployer à 2h du matin une application sur AWS pour piloter des voitures électriques avec un vélo d'appartement.]]
**** EnCours [[https://devfest2019.gdgnantes.com/sessions/privacy_granted_by_maths/][Privacy granted by maths]]
**** DONE [[file:2019/opensource_promotion.org][Promouvoir son projet open-source comme une rock star !]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/success_in_programming/][Success in Programming]]
**** VU [[https://devfest2019.gdgnantes.com/sessions/pair_design___un_moyen_de_concevoir_a_deux_ou_plus/][Pair Design : Un moyen de concevoir à deux ou plus]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/le_web__ses_frameworks_et_ses_standards___deconstruire_pour_mieux__re__construire/][Le Web, ses frameworks et ses standards : déconstruire pour mieux (re?)construire]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/duniter___la_blockchain_ecolo/][Duniter : la blockchain écolo]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/tu_packages__comment___bazel_bazel_bazel___/][Tu packages comment ? Bazel bazel bazel !]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/null__undefined_and_maybe__a_tale_of_uncertainty/][# Null, undefined and maybe, a tale of uncertainty]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/gpgpu__utiliser_la_carte_graphique_pour_accelerer_vos_applications_/][GPGPU: Utiliser la carte graphique pour accélérer vos applications!]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/l_epopee_des_polices_css_de_comic_sans_aux_fontes_variables/][L'épopée des polices CSS de Comic Sans aux fontes variables]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/dr_gopher__anatomie_du_scheduler_golang/][Dr Gopher, Anatomie du Scheduler Golang]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/performance_tuning_of_go_applications_in_cloud/][Performance tuning of Go applications in Cloud]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/interactive_web_animation_with_svg/][Interactive web animation with SVG]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/les_specificites_des_jeux_de_societe_numeriques/][Les spécificités des jeux de société numériques]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/react_en_2019/][React en 2019]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/go_serverless_with_cloud_functions_for_firebase/][Go “serverless” with Cloud Functions for Firebase]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/docker__kubernetes___istio___tips__tricks___tools/][Docker, Kubernetes & Istio : Tips, tricks & tools]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/make_your_data_fabulous/][Make Your Data FABulous]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/project_fugu__reaching_parity_with_native/][Project FUGU, reaching parity with native]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/la_guitare_lag_hyvibe/][La guitare Lâg HyVibe]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/kubernetes_enfin_ultra_simple_et_leger_avec_k3s/][Kubernetes enfin ultra simple et léger avec K3S]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/le_futur_de_la_gestion_des_dependances_node/][Le futur de la gestion des dépendances Node]]
**** DONE [[file:2019/sommeil.org][Le sommeil, à la recherche du temps perdu]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/building_a_complex_application_with_web_components_and_litelement/][Building a Complex Application with Web Components and LitElement]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/developper_une_api_cloud_ready_avec_quarkus/][Développer une API Cloud Ready avec Quarkus]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/react_native___comment_reussir_son_application_mobile/][React Native : comment réussir son application mobile]]
**** DONE [[file:2019/daltonisme.org][Au delà des couleurs, des interfaces adaptées au daltonisme]]
**** SansVideos [[https://devfest2019.gdgnantes.com/sessions/understand_your_code_with_machine_learning_on_source_code/][Understand your code with Machine Learning on Source Code]]
**** SansVideos [[https://devfest2019.gdgnantes.com/sessions/le_graal_d_aws___decouverte_et_prise_en_main_de_chalice/][Le graal d'AWS : Découverte et prise en main de Chalice]]
**** SansVideos [[https://devfest2019.gdgnantes.com/sessions/workshop___kotlin_multiplatform___mutualiser_du_code_sur_ios_et_android/][Workshop - Kotlin Multiplatform : mutualiser du code sur iOS et Android]]
**** SansVideos [[https://devfest2019.gdgnantes.com/sessions/decouvrez_micronaut__le_framework_qui_va_faire_du_bien_a_la_jvm__/][Découvrez Micronaut, le framework qui va faire du bien à la JVM !]]
**** SansVideos [[https://devfest2019.gdgnantes.com/sessions/creer_votre_device_iot_connecte_en_quelques_heures/][Créer votre device IoT connecté en quelques heures]]
**** SansVideos [[https://devfest2019.gdgnantes.com/sessions/apprenez_a_securiser_votre_cluster_kubernetes_par_la_pratique/][Apprenez à sécuriser votre cluster kubernetes par la pratique]]
*** 22 octobre
**** TODO [[https://devfest2019.gdgnantes.com/sessions/dis_moi_doc__quelle_it_en_2025__/][Dis moi DOC, quelle IT en 2025 ?]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/comment_le_projet_euler_m_as_donne_envie_de_refaire_des_maths/][Comment le projet Euler m'a donné envie de refaire des Maths]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/the_web_is_on__f_i_r_e________conference_/][The Web is on 🔥 F.I.R.E. 🔥 !!!]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/lucy_in_the_sky_with_ml__building_the_ultimate_beatles_tribute_app/][Lucy in the Sky with ML: Building the Ultimate Beatles Tribute App]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/building_better_products_faster__devux_is_the_new_devops/][Building better products faster: DevUx is the new DevOps]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/back_in_black_hat___comment_se_faire_pogoter__hacker__bien_comme_il_faut_/][Back in Black Hat : Comment se faire pogoter (hacker) bien comme il faut!]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/how_to_build_cloud_native_ci_cd_pipelines_with_tekton_on_kubernetes/][How to Build Cloud-Native CI/CD Pipelines with Tekton on Kubernetes]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/ai___robot_cat___a_smart_cat/][AI + Robot Cat = A Smart Cat]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/storybook_pour_votre_design_system__un_conte_de_fees__/][Storybook pour votre design system, un conte de fées ?]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/premiers_pas_avec_un_microcontroleur_et_google_cloud_iot_core/][Premiers pas avec un microcontrôleur et Google Cloud IoT Core]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/bootiful_testing/][Bootiful Testing]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/cloud_rocks_my_si/][Cloud ROCKS my SI]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/core__le_principe__dans_le_doute_reboot__applique_a__net/][Core, le principe "dans le doute reboot" appliqué à .NET]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/svelte__la_nouvelle_revolution_des_applications_web/][Svelte, la nouvelle révolution des applications web]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/knative__a_kubernetes_framework_to_manage_serverless_workloads/][Knative: A Kubernetes Framework to manage Serverless Workloads]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/apache_pulsar_101__architecture__concepts_et_comparaison/][Apache Pulsar 101: architecture, concepts et comparaison]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/fpga__creer_du_materiel_en_programmant/][FPGA, créer du matériel en programmant]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/data___art/][Data + Art]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/_brancher_sa_guitare_a_son_navigateur___et_le_web_deviens_rock_n_roll____/][🤘🎸 Brancher sa guitare à son navigateur : Et le web deviens rock'n'roll ! 🤘🎸]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/game_development_with_unity_from_an_android_point_of_view/][Game Development with Unity from an Android Point of View]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/build_your_own_knowledge_graph_with_weaviate_on_gcp/][Build your own Knowledge Graph with Weaviate on GCP]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/parcel_js___le_bundler_dont_vous_reviez___/][Parcel.js : le bundler dont vous rêviez ;)]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/infrastructure_as_code__il_n_y_a_pas_que_terraform_dans_la_vie/][Infrastructure As Code, il n'y a pas que Terraform dans la vie]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/webauthn__le_renouveau_de_l_authentification/][WebAuthn: Le renouveau de l'authentification]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/swift_superpowers/][Swift Superpowers]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/vega_au_secours_de_vos_visualisations_de_donnees/][Vega au secours de vos visualisations de données]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/informatique_quantique__je_suis_non_binaire/][Informatique quantique, je suis non binaire]]
**** TODO [[https://devfest2019.gdgnantes.com/sessions/jamstack__ou_comment_faire_des_sites_statiques_modernes_et_rapides/][JAMstack, ou comment faire des sites statiques modernes et rapides]]
**** SansVideos [[https://devfest2019.gdgnantes.com/sessions/creons_notre_premiere_api_avec_nestjs/][Créons notre première API avec NestJS]] *les slides du codelab sont disponibles*
**** SansVideos [[https://devfest2019.gdgnantes.com/sessions/il_faut_sauver_lora/][Il faut sauver LoRa]] *Code Github*
**** SansVideos [[https://devfest2019.gdgnantes.com/sessions/developper_de_nouvelles_applications_avec_docker_app/][Développer de nouvelles applications avec Docker App]]
**** SansVideos [[https://devfest2019.gdgnantes.com/sessions/una_gitlab__le_tp_a_roulette__/][Una-Gitlab, le TP à roulette !]]
**** SansVideos [[https://devfest2019.gdgnantes.com/sessions/les_mains_dans_le_cambouis_avec_webassembly/][Les mains dans le cambouis avec WebAssembly]]

View file

@ -1 +0,0 @@
Vous pouvez retrouver ici mes notes issues de conférences.

View file

@ -1,95 +0,0 @@
#+title: Un numérique accessible pour les personnes handicapées, cest pour quand ?
#+date: <2023-06-24 ven.>
#+html_link_up:../roadmap.html
* Introduction
[[https://video.passageenseine.fr/w/kxUFpG2JhNcvbY4Aw3ZKfH][Rediffusion]] - [[https://fr.slides.access42.net/passageenseine2023/][Transcription]]
Conférence faite par Sylvie Duchateau, aveugle et consultante en
accessibilité numérique depuis plus de 20 ans. Membre de [[https://access42.net/][Access42]], une
SCOP de consultants en accessibilités.
* L'accessibilité
Définition générale : le fait de permettre aux personnes handicapées de
jouir de leurs droits.
Définition numérique : garantir le même accès aux personnes handicapées
que quiconque.
* Les handicaps
1 personne sur 7 en France est handicapé. 6% de la population déclare
ne pas l'être mais a de fortes difficultés à effectuer certaines
tâches.
Ces statistiques sont à prendre avec des pincettes, toutes les
personnes handicapées ne se manifestant pas. Ces chiffres sont plus
importants en réalité.
Les handicaps sont très variés et sont aussi bien mental que
physique. Certains sont invisibles (être sourd). On ne naît pas
toujours avec un handicap et il peut évoluer au cours de la vie.
Le taux de chômage des personnes handicapés est de 15%. C'est aussi un
risque de licenciement en plus et il s'agit de la première cause de
discrimination auprès du Défenseur des droits.
Exemple de discrimination : les chiens guides peuvent aller *partout*,
mais les établissements disent qu'ils font "une exception" en laissant
ces chiens entrer.
* La législation
Inscrit dans la loi depuis 2005, l'accessibilité numérique est
obligatoire pour les institutions publiques et pour les sociétés
privées chargées d'une mission d'intérêt publique, comme les
transports.
[[https://accessibilite.numerique.gouv.fr][Le RGAA]] est le référentiel français pour faire des sites accessibles.
* Et le numérique ?
Le numérique était une promesse d'émancipation mais le rendez-vous est
manqué. Les logiciels ne sont pas tous accessibles et plus de 80% des
sites sont inaccessibles (chiffre avancé lors de la conférence, pas de
source).
Pour pouvoir lire le contenu du site, les personnes mal voyantes et
les aveugles utilisent certains outils mais qui peuvent être très cher
(plage braille) et qui restent insuffisants à cause de la manière dont
sont fait les sites. D'autres solutions sont moins onéreuses et
souvent intégrées dans l'OS (synthèse vocale, changement de police ou
de contraste...) mais souffrent des mêmes problèmes.
Word a de bons outils pour vérifier si un document est
accessible. Windows est aussi plus inclusif que Linux... pour
l'instant ?
** Les erreurs des développeurs et comment les éviter
Ces exemples sont tirés de sites webs.
- le texte est une image :: impacte les mal voyants, les dyslexiques,
les aveugles et les personnes qui utilisent un lecteur d'écran de
manière générale. La solution : HTML et CSS.
- les formulaires :: les questions peuvent ne pas être liées aux
réponses ou avoir des champs similaires. Cela rend la tâche plus
longue pour les lecteurs d'écrans (ajout d'une manipulation
supplémentaire). Une bonne utilisation de [[https://developer.mozilla.org/en-US/docs/Web/HTML/Element/fieldset][balises HTML]] suffit à
rendre un formulaire accessible.
- captcha :: illisible. Les captchas audios peuvent être très
mauvais. L'envoie de code par mél ou SMS voir un numéro de
contact pour pouvoir activer son compte.
- les documents téléchargeables :: un PDF accessible devient
inaccessible après un scan. Il n'est pas possible d'adapter la
police au texte. [[https://fr.wikipedia.org/wiki/Reconnaissance_optique_de_caract%C3%A8res][La ROC]] (ou /OCR/) n'est pas toujours suffisant et
rajoute une action en plus de toutes les autres. Il faut envoyer un
fichier HTML ou un PDF lisible (donc non scanné).
Il faut prendre en compte l'accessibilité *au début* du projet, afin
de l'inclure dans les tests (notamment avec des personnes concernées).

View file

@ -1,55 +0,0 @@
#+title: Les langages exotiques ludiques : Le cas du Baguette#
#+date: <2023-06-23 ven.>
#+html_link_up:../roadmap.html
* Introduction
[[https://video.passageenseine.fr/w/1n6FvveENXyrvTCj7NWALm][Rediffusion]] - [[https://baguettesharp.nwa2coco.fr][Site]]
Conférence faite par Charlotte Thomas, étudiante en Licence 2 à
l'ISTIC et en stage au sein de l'IRISA/INRIA.
* Les langages exotiques
Un langage exotique, ou [[https://esolangs.org/][esolang]] en anglais, fait partie de
*l'informatique récréative*. On fait ça pour s'amuser et n'a pas
vocation à être utile.
Le langage exotique le plus connu : le brainfuck.
D'autres langages rigolos : [[https://esolangs.org/wiki/Befunge][Befunge]] (programmation 2D), [[https://esolangs.org/wiki/2014][2014]] et [[https://esolangs.org/wiki/2017][2017]]
qui, comme leurs noms l'indiquent, ne fonctionnent qu'en 2014 et 2017.
Le principal intérêt de ces langages est *pédagogique*. On apprend à
faire un langage simple. Baguette# était au début un simili-Basic,
dont l'interpréteur est écrit en Ocaml. Il a été codé sans
connaissance d'algorithme d'analyse syntaxique, ce qui a été entre
autres appris lors de la réalisation de ce projet.
* Baguette#
Ce langage n'a aucun intérêt si ce n'est apprendre (et être invitée à
PSES). Les mots clés sont pertinents avec le nom, tournant autour de
la pâtisserie (=PARIS BREST= pour ouvrir un guillemet...).
Il n'a pas d'opération infixe, ne sachant pas les réaliser à
l'implémentation de l'interpréteur. Il faut écrire les opérations de
la manière suivante : =+ 2 2=[fn:1].
Particularité : il n'a pas de boucles, il faut utiliser des =goto=.
Le langage peut être écrit avec des émojis : c'est grâce à *une
propriété d'Ocaml*. Les chaînes de caractères sont *encodées en
UTF-8*, il est donc possible de faire du /pattern matching/ dessus.
Le langage a un manageur de paquets, comme =pip= ou =npm= et s'appelle
*Boulangerie*. Il s'adapte selon la langue locale : en français les
commandes sont en anglais et vice-versa. L'interpréteur et le manageur
de paquets ne sont disponibles que sur MacOS et Linux, à cause d'une
bibliothèque utilisée qui n'existe pas sur Windows.
Il n'y a pas de mode Emacs... pour l'instant.
* Footnotes
[fn:1] Cela me fait penser au Lisp où l'addition est =(+ 2 2)=.

View file

@ -1,154 +0,0 @@
#+title: Ne vous lamentez pas, organisez-vous !
#+date: <2023-06-25 dim.>
#+html_link_up:../roadmap.html
* Introduction
[[https://video.passageenseine.fr/w/4veBETxmYAAx9LLkyxXiRF][Rediffusion]] - [[https://onestla.tech/][Site internet]]
Conférence faite par 2 développeurs travaillant dans des Coopératives.
* État des lieux de l'économie
En 2005, les plus grandes entreprises à la bourse sont très
variées. En 2022, l'économie tourne autour de l'informatique. Là où
est l'argent est le pouvoir et on retrouve les grosses boîtes
d'informatique (Alphabet, Meta...) dans la communication : pub,
manipulation de l'information via les bulles de filtres...
La tech va régner sur un monde où :
- nous avons atteint les 6 premières limites planétaires sur 9
- 30 à 40% des colonies d'abeilles ont disparu
Aujourd'hui, 46% de la population mondiale vie avec 5.50$ par
jour. Les 10% les plus riches captent 52% du revenu mondial, sans
compter les dividendes.
En France, 17% de la population et 26% de la population étudiante
vivent sous le seuil de la pauvreté.
** Et le logiciel libre ?
Le logiciel libre est un bien commun. Il a permis de faciliter les
communications là où ça n'était pas possible sans avoir de gros
budgets. Il permet, avec le chiffrement, de protéger les opprimés et
les journalistes et d'éduquer la population. Mais l'État n'est pas
toujours d'accord avec ça (cf. Aaron Schwartz, l'État n'a abandonné
aucune poursuite).
Est-ce qu'avec le logiciel libre, on peut éviter les soucis précédents
?
** Logiciel libre et GAFAMs
Les GAFAMs se basent sur du libre (serveurs sous Linux,
bibliothèques...). C'était un moment un argument de recrutement, mais
ils ont eu un changement de politique (utilisation de la publicité,
entre autres) parce qu'ils n'ont pas réussi à faire de l'argent
dessus.
Ils se sont tournés vers l'économie de plateforme (type Uber), où les
utilisateurs deviennent dépendants de la plateforme.
On en est arrivé là grâce *au capitalisme*.
Il s'agit du paradigme actuel : faire du profit. Cela engendre des
problèmes écologique et sociaux, comme la destruction du service
public. Ces services sont justement des *services* et n'ont pas pour
vocation de faire du profit.
Dans ce paradigme, les êtres humains ont de la valeur grâce à 3
choses :
- l'argent
- le temps
- les données personnelles
Pour pouvoir changer ce paradigme, il faut faire une lutte des
classes.
** Les dernières nouvelles du milieu de la tech
L'économie de la tech est en déclin en 2022. Les flux financiers
diminuent, 150 000 licenciements ont lieu dans le milieu dont 60 000
parmi les GAFAMs au premier semestre de 2023 (souvent licencié par
mél).
* La responsabilité des développeurs
Au travail, nous sommes soumis à des ordres qui détruisent la planète,
à cause du paradigme actuel.
La technologie doit redevenir solidaire avec le reste des métiers,
puisqu'elle est partout. Le terme /tech clash/ désigne les
développeurs qui ne sont pas d'accord avec ce qu'ils font et décident
de démissionner ou de faire la grève.
Les développeurs ne peuvent pas dire "je ne savais pas" lorsqu'ils
développent quelque chose (ex. Pegasus).
Ceux qui développent ont la main : le fait d'ignorer le RGAA
(référentiel d'accessibilité) engendre des discriminations et c'est un
choix de l'ignorer. Mais ils n'ont pas le pouvoir ! Sauf dans les
coopératives.
* Un ancien modèle d'entreprise d'actualité
Une coopérative est un modèle social de société qui se rajoute
au modèle habituel. La plus-value générée par l'entreprise est
partagée entre les employés. Une SCOP (Société COopérative et
Participative) est un modèle particulier de coopérative.
L'entreprise appartient à ses employés, pas de PDG ou de conseils
d'administration. Les employés votent pour accepter les vacances des
autres employés. Ils peuvent élire un représentant de l'entreprise
pour être le visage de l'entreprise.
Idée reçue : seulement 8% sont des coopératives agricoles !
Particularités :
- meilleur taux de survie que les autres formes d'entreprises
- impossible de l'acheter ou de la vendre
- aucun intérêt à investir dedans : 1 personne = 1 voix et aucun
dividende pour les actionnaires (l'argent est intégralement reversé
aux employés[fn:1])
Une coopérative peut ensuite rejoindre un réseau de coopératives :
cette idée est celle du *fédéralisme*. C'est un écosystème constitué
de personnes qui veulent coopérer. Le mouvement syndicalisme rejoint
cette idée.
* Un projet de société
Les problèmes du quotidien ne sont pas gérés par le Président mais par
les personnes qui habitent le quartier. Ce sont eux qui doivent le
gérer.
Cela apporte plus de choses de faire partie d'initiatives locales
plutôt que d'aller à l'Élysée.
Ces idées sont *le municipalisme libertaire* et *le communalisme*.
Le capitalisme prend les ressources et les épuise en les utilisant,
comme il le fait avec l'Homme. Il faut changer notre rapport avec le
temps, l'argent, le travail, l'accumulation de choses. Cela permet
d'aboutir à une consommation raisonnée et à *l'écologie sociale*.
* "On est la tech"
C'est un mouvement pour pouvoir se retrouver dans une idée politique,
en manifestation, comme les autres corps de métiers.
Débuté avec un appel à se mobiliser dans le monde de la tech, le texte
a reçu un énorme soutien. Cela montre la force de frappe de ce corps de
métier.
Le collectif fait partie de [[https://offensive.eco/][l'Offensive]]. Il promeut la mise de côté de
la pureté et de faire des rencontres avec des personnes ayant les
mêmes idées pour pouvoir avoir un meilleur futur.
L'Offensive promeut l'écologie sociale.
* Footnotes
[fn:1] Qui, souvent, mettent une partie des profits en trésorerie d'un
commun accord.

View file

@ -1,40 +0,0 @@
#+title: Share-ring, prêt dobjets et coups de main
#+date: <2023-06-24 ven.>
#+html_link_up:../roadmap.html
* Introduction
[[https://video.passageenseine.fr/w/pkxZXzFrxBwgHXJwg9aDvS][Rediffusion]] - [[https://framagit.org/Mindiell/share-ring][Dépôt du projet]] - [[https://mamot.fr/@Mindiell][Mastodon]]
* Contexte
Nous consommons et jetons rapidement ou n'utilisons que très rarement
des produits que l'on achète. Par exemple, une perceuse qui n'est
utilisée que 10 minutes au cours de sa vie.
D'après [[https://www.ademe.fr/][l'ADEME]], en moyenne, un objet a besoin de 18 fois son poids en
matière première pour être fabriqué. Seulement 1/3 des déchets
plastiques sont recyclés. Certains objets sont quasiment impossibles à
recycler à cause du trop grand nombre de matériaux : le téléphone avec
ses quelque 70 matériaux différents, par exemple.
La solution pour palier ces problèmes :
- réparer (cf. [[https://www.repaircafe.org/fr][les repair cafes]])
- partager (3 perceuses pour 100 personnes dans un immeuble) :
solution à laquelle va répondre Share-ring
- recycler (pour de vrai) : nécessite de faire une sélection en amont
pour prendre les meilleurs produits qui peuvent l'être
* Le logiciel
Logiciel *libre* écrit en *Python*, utilisant *Flask*. Le but est de
s'inscrire dans une communauté, de préférence locale, pour pouvoir
voir des petites annonces d'échanges de biens et de services.
Les fonctionnalités :
- système fédéré : pour pouvoir être installé par n'importe qui
(CHATONS local, municipalité, syndicat...)
- gestion de communautés : une ville pourrait avoir une instance avec
une communauté par quartier
- se veut très libre sur les annonces
- bientôt : possibilité de demander une caution

View file

@ -1,54 +0,0 @@
#+TYP_TODO: TODO VU EnCours SansVideos | DONE PasDeNotes
Fichier contenant les différentes conférences et vidéos que je prévois
de regarder ou que j'ai vu. Elles sont triées par ordre d'intérêt et
de priorité pour la mise au propre des notes. Les ateliers ou les
conférences sans vidéos sont indiquées "SansVideos" et listées à la
fin des journées.
* PasSageEnSeine
** 2023
*** 15 juin
**** TODO [[https://video.passageenseine.fr/w/8vkg3ZnCRoMfKaMj7Knct2][Le RGPD en 2023, où en est-on ?]]
**** TODO [[https://video.passageenseine.fr/w/8eSDrWs1PE5ys237SNhPVX][Informatika Ady Gasy]]
**** TODO [[https://video.passageenseine.fr/w/aWkaQ9J6JoYaqwctKYoN8H][Nextcloud - le cloud de lhygiène numérique]]
**** TODO [[https://video.passageenseine.fr/w/hjuhHSeqivhgka5fR8ysYq][Podcasting 2.0: Une affaire dinteropérabilité]]
**** TODO [[https://video.passageenseine.fr/w/hqjstyBzznTPArmURyhqsv][Présentation de Librezo, le Chaton sauvage à domicile]]
**** TODO [[https://video.passageenseine.fr/w/kRbU3g4CMFWz3NmSbqbUvB][J'ai passé un an à former des Conseillers Numériques France Service, retour dexpérience.]]
**** DONE [[file:2023/organisation.org][Ne vous lamentez pas, organisez-vous !]]
**** SansVideos [[https://mamot.fr/@passageenseine/110581547632894579][La bérésina de lagile et pourquoi sen émouvoir.]]
La vidéo a été supprimée et je n'ai pas pu prendre de notes.
*** 16 juin
**** TODO [[https://video.passageenseine.fr/w/pzGEvUSjtNsuESmzs7TXhA][5 ans sans téléphone : le bilan]]
**** DONE [[file:2023/baguette.org][Les langages exotique ludique : Le cas du Baguette#]]
**** DONE [[file:2023/accessibilite.org][Un numérique accessible pour les personnes handicapées, cest pour quand ?]]
**** VU [[https://video.passageenseine.fr/w/iobm6i6TSzdSRvt7c4E697][IA Générative : état, histoire, enjeux, futur]]
**** VU [[https://video.passageenseine.fr/w/47z9ZnTPEwqudmDozQHToG][Covid-19 et libertés numériques : quel bilan après 3 ans de pandémie ?]]
**** VU [[https://video.passageenseine.fr/w/bXx4LJn83TSXgDL1pjBMYD][Promesses et (dés)illusions : une introduction technocritique aux blockchains]]
**** TODO [[https://video.passageenseine.fr/w/dxwg54S38BKPcNPKTWKiFa][Libervia : lécosystème de communication universel]]
**** DONE [[file:2023/share-ring.org][Share-ring, prêt dobjets et coups de main]]
**** TODO [[https://video.passageenseine.fr/w/okhAZF2L9hhNs3mqautUVY][Bob, un logiciel de transfert de fichiers en peer to peer sécurisé et universel en OCaml]]
**** TODO [[https://video.passageenseine.fr/w/hQnVtXDUGgpZwKZ1DxaLTS][Surmonter les difficultés de lauto-hébergement ensemble avec Garage]]
**** PasDeNotes [[https://video.passageenseine.fr/w/26yLJvrEpf4StXTATdKVCZ][Auditons le design de vos sites web !]]
**** SansVideos Fresque de la microélectronique
**** SansVideos Imaginons les numériques essentiels en 2030
*** 17 juin
**** TODO [[https://video.passageenseine.fr/w/3B64pxmXMx5cL1Av4nLTXd][En route vers la dystopie]]
**** TODO [[https://video.passageenseine.fr/w/pcbbNpEaq2GRKbnjdEZamB][Le biohacking, le biopunk, le Do it yourself : petites histoires de libertés dans la cité]]
**** VU [[https://video.passageenseine.fr/w/1HAEJwaTwK9HT31UxJhcFf][Faut-il pucer ses enfants ?]]
**** TODO [[https://video.passageenseine.fr/w/qfZDpDuPNAiyF98Es6MVGw][Hacker le système !]]
**** VU [[https://video.passageenseine.fr/w/qAygBuy2mCSHR5yhK2i573][Réflexions autour de lécoconception, de lévolution technique, et son écosystème]]
**** TODO [[https://video.passageenseine.fr/w/v1CAV1oV41W2LwF39RmWK4][Quels rapports entre numérique et changement climatique ?]]
**** TODO [[https://video.passageenseine.fr/w/1wUetzXPztKJp8jDAGgGyX][Ces plate-formes du Libre qui soutiennent les communautés.]]
**** TODO [[https://video.passageenseine.fr/w/h32H1WCmsVqTznAofA8LXC][Contribuer au Libre (même sans savoir coder)]]
**** TODO [[https://video.passageenseine.fr/w/78dH7zRm2HpMhpEiZabcc3][Je dépose ma 1ère plainte à la CNIL]]
**** TODO [[https://video.passageenseine.fr/w/6z6kywndfNypKd1Kbigeh3][Partagez vos livres avec Inventaire]]
**** SansVideos Jenregistre mon premier Podcast
**** SansVideos Initiation à laudit de sécurité de son matériel (crochetage)

View file

@ -1,336 +0,0 @@
#+title: Étrangeté numérique : Voyage dans les espaces liminaux et autres analog horror
#+date: <2023-06-23 dim.>
#+html_link_up:../roadmap.html
* Introduction
Intervenants : [[https://invidious.fdn.fr/channel/UC1KxoDAzbWOWOhw5GbsE-Bw][ALT 236]] , [[https://nitter.lacontrevoie.fr/_DollyWood_/status/1434786027521118209][Dollywood]], Faé, [[https://nitter.lacontrevoie.fr/DrHercouet][Thomas Hercouët]] (journaliste
Brut et animateur du podcast [[https://invidious.fdn.fr/channel/UCmPWgb_IBUXUUVD27I_Ej0w][Les Nouilles Rampantes]]).
Ce résumé n'est pas forcément organisé comme la conférence (qui était
plus une discussion organisée). J'ai essayé de faire un travail de
synthèse sur mes notes pour réorganiser les idées qui fusaient dans un
ordre qui me convenait.
Il y a eu [[https://nitter.lacontrevoie.fr/Sophiebarel/status/1659995051387244544][une suite]] à cette conférence, mais je n'ai pas pu y aller. Si
vous avez pu vous y rendre et prendre des notes, je serai heureux de
rajouter un lien ici vers la synthèse de ces dernières.
Certains liens sont directement cités dans la conférence, d'autres ont
été rajoutés par mes soins pour rediriger les personnes intéressées
vers d'autres ressources.
* Définitions
Définitions basiques de ces grands thèmes avant de rentrer dedans plus
en détail durant la conférence.
** Liminal
Du latin /liminalis/, seuil, ce terme indique un espace de transition
(escalier, couloir...). Il a été créé en 1992 comme une notion
d'urbanisme pour indiquer *un "non-lieu"* (gares, aéroports,
centres commerciaux...). Ce sont des endroits où l'on passe pour aller
autre part, pas pour y rester.
Avec le temps, il a évolué pour désigner un ressenti, une émotion, un
sentiment de *désorientation*, une notion de "ce n'est pas censé
être utilisé comme ça".
On conscientise un espace où on ne doit pas être.
Il existe *des moments liminaux*, comme le crépuscule : c'est la
transition entre le jour et la nuit.
*Sujet à creuser et plus vaste non abordé dans la conférence* : cela
peut être rapproché de notre rapport aux ruines dans le monde moderne.
** Backroom
Univers fictif créé à partir d'un post 4Chan, l'image qui lui a donné
naissance est apparue dans un autre thread où l'auteur cherchait
d'autres images dans le même thème, en 2019.
Il s'est calqué sur l'univers de la fondation SCP[fn:1] (univers
étendu et très vaste).
Il existe plusieurs Wiki autour de l'univers des backrooms, qui sont
un peu tous en compétition. Ce format de Wiki rajoute un côté ludique
au développement de ce genre d'univers : tout le monde peut y
contribuer facilement ou créer le sien.
** Analog Horror
Ce terme englobe de manière générale la technologie dans l'horreur. Le
style du /found footage/ (Blair Witch), par exemple, est inclus dedans.
Aujourd'hui, beaucoup de chaîne Youtube reprennent ce format à leur
sauce, en ajoutant une narration souvent assez alambiquée, avec des
effets de vieilles VHS sur les vidéos, etc.
Une autre question soulevée par l'analog horror est "est-ce que la
technologie va nous dominer ?".
Shin Megami Tensei est jeu vidéo japonais d'analog horror puisqu'on
utilise des démons technologiques pour combattre. C'est un mélange
entre le quotidien banal avec notre technologie et l'horreur.
* Les espaces liminaux et les backrooms
Les *backrooms* sont donc des *espaces liminaux* dans lesquels se
passent de l'*analog horror*.
** Une nouvelle approche
Les espaces liminaux sont une nouvelle approche originale de
l'horreur : *l'horreur par le vide*. Il n'y a rien qui fait peur sur les
photos d'espaces liminaux si ce n'est l'absence de quelque
chose. Chacun met un peu de soi, un peu de sa peur dans ces images
(une photo de parking vide ne va pas éveiller la même peur chez 2
personnes différentes).
Les espaces liminaux peuvent avoir un apaisant et méditatif au
début. La possibilité de respirer dans des endroits souvent remplis et
stressants. Mais, plus on passe dans ces endroits vides, plus cela
devient étrange et anormal, et la méditation est remplacée par
l'inquiétude.
** Pourquoi un sentiment de malaise ?
Les espaces liminaux sont des espaces de transitions (cf. définition
d'urbanisme), qui sont en bon état. Cela implique forcément une
présence humaine, mais il n'y a personne. 2 alarmes sonnent dans notre
cerveau :
- il y a des gens qui y habitent (les lieux ne sont pas abandonnés)
- il n'y a personne (c'est un fait)
Ces espaces enlèvent nos référentiels habituels. On peut y voir le
vide existentiel qu'il y a après nous (relation avec les ruines).
Les grands espaces, tel que les rues, ne sont pas pensés / fait pour
être vide. Notre cerveau s'attend à voir du monde dans ces espaces
sociaux. Cette solitude nous questionne : qu'est-ce qui s'est passé ?
Pourquoi n'y a-t-il personne ? L'imagination fait le reste. Le
spectateur se sent vulnérable, ce qui le piège dans un état de
malaise.
Les dimensions de ces espaces *ne sont pas normales*, elles sont
intermédiaires. Les pièces sont trop petites pour être un salon mais
trop grande pour être un simple couloir, etc.
Il y a aussi une combinaison de plusieurs styles. Les dimensions sont
disproportionnées ou trop petites. Cet amalgame d'idées architecturales
déformées créé un sentiment de malaise.
Mais tout ça n'est pas nouveau. C'est *l'inquiétante étrangeté* qui
était déjà présente bien avant.
On peut faire un parallèle avec les légendes urbaines, qui étaient de
la tradition orale avant d'évoluer sur les forums (creepy
pasta...). Ce partage est nécessaire : avoir peur en groupe, c'est
plus facile que tout seul.
*** Aparté nostalgie
Dans la VaporWave, il y a une forte notion de nostalgie des années
80/90 et de son esthétisme. La nostalgie est un état dont on ne s'en
rappelle pas mais dans lequel on se remet.
Anemoia : nostalgie d'une époque inconnue (les 2000 avec les années
80, par exemple).
** Un regard sur la société
Dans ces grands espaces vides, comme les bureaux, on peut voir une peur
dans le capitalisme, vu comme un monstre qui retire l'humanité de
toute chose.
Les univers collaboratifs de fictions sur Internet permettent un peu
de prendre la température de son époque :
- SCP :: la politique états-unienne des années 2000 (Patriot Act) et
l'idée / la peur de grandes entreprises secrètes
- Backrooms :: s'est surtout développé pendant le confinement, en
questionnant notre rapport avec le monde qui nous entoure et celui
du travail (cf. les open spaces vides); on retrouve aussi une
dimension écologique
Il faut s'attendre à un nouvel univers étendu d'ici quelques mois,
voire années, développant une nouvelle forme d'horreur dans
l'informatique. Peut-être sur l'IA et les questions éthiques que son
utilisation soulève ?
La société actuelle est très individualiste et la peur est une forme
de communication, on souhaite la partager. C'est pour ça qu'on partage
les histoires d'horreur et qu'on a envie de partager des petits coups
de flips du quotidien (photo étrange, histoire ancrée dans la
réalité...).
* L'analog horror
L'horreur dans la technologie ou "ghost in the machine"; exemple avec
The Ring. L'horreur vient de la technologie que l'on maîtrise qui
contient quelque chose qui nous dépasse. Lorsqu'on fait des robots qui
nous mettent mal à l'aise, ils sont dans [[https://fr.wikipedia.org/wiki/Vall%C3%A9e_de_l%27%C3%A9trange][la vallée de l'étrange]] :
mi-humain; mi-machine. Les backrooms sont en quelque sorte dans la
vallée de l'étrange architecturale.
Cette peur vient de la culture cyberpunk, avec cette peur de se faire
dépasser par la technologie et perdre la domination.
On retrouve cette idée avec les générateurs d'images. On lui donne un
prompt dit négatif : on lui demande ce qu'on ne veut pas voir. Au fur
et à mesure des générations, on retrouve toujours la tête de la même
femme. Pourquoi est-elle là et revient sans cesse ?
Notre cerveau est fait pour reconnaitre des motifs (note personnelle :
LOSS, Among Us...). L'IA aussi mais pas de la même façon, cela
explique pourquoi la génération d'images se fait d'une certaine
manière. Nous sommes perturbés par cette autre vision du monde.
Il faut faire de l'éducation aux médias aux plus jeunes; par rapport
aux problèmes éthiques des IAs qui tournent souvent autour de la perte
des métiers des illustrateurs. Ils jouent sur cette peur par "hype".
* Pourquoi ça marche ?
Les Creepy Pasta ont très bien marché pour une raison similaire. C'est
*l'implication du spectateur*. Le récit est écrit *à la première
personne*, se déroule dans un environnement familier (un quotidien
que tout le monde connaît) et va finir par /shift/ dans l'horreur avec
un élément perturbateur.
Ces histoires jouent avec *le flou* entre réalité et fiction. On se
demande si c'est vrai. Peut-être que c'est faux, peut-être que c'est
vrai; et si ça l'est, c'est horrible.
Une mauvaise creepy pasta souhaite souvent mettre un monstre, ou n'a
pas assez confiance en son histoire en y mettant un climax et
satisfaire le lecteur.
Une bonne creepy pasta est sous la forme de témoignage; c'est un post
sérieux sur un forum. Lorsqu'on lit un livre, un film, on est isolé en
tant que spectateur. On sait qu'on lit une fiction. La forme de post
sérieux nous *enlève cette barrière*.
Ce flou, cet entre-deux, cette incertitude sur la véracité du poste a
une *notion liminale* : nous sommes sur le seuil de la vérité.
Cette forme de post sérieux sur un forum, un réseau social (Twitter,
TikTok...) entretient aussi ce flou. On est "cueilli au vol", entre 2
status sur l'actualité. Il n'y a pas cette impression de lire un
livre ou voir un film. On n'est pas préparé mentalement.
C'est une autre façon de surprendre le spectateur. Notre cerveau est
habitué au schéma classique de l'horreur : les personnages vont dans
un lieu horrifique et tout se passe là-bas (par ex. un lieu
hanté). Une histoire qui ne va pas suivre cette trame va nous
surprendre et nous allons être davantage dans l'histoire (ex. on
s'arrête sur la route vers le château au lieu d'y aller).
** Une horreur de la jeunesse
Il y a une différence générationnelle. Ce n'est pas la même chose de
naître avec une technologie et assister à son arrivée. Pour les jeunes
générations, c'est normal d'utiliser les réseaux pour se faire peur.
Cela répond aussi à une question : quelle est l'aventure de cette
nouvelle génération ? Avant, c'était l'Orient, les Amériques,
etc. Après, ce sera l'espace. Aujourd'hui, c'est Internet : *le monde
cyber* (les réseaux sociaux entre autres).
Tout le monde a un appareil photo et une caméra dans la poche. Il n'y
a plus la protection des médias qui va bloquer les informations
choquantes. Une famille en vacance peut filmer un meurtre. Note
personnelle : cf. [[https://fr.wikipedia.org/wiki/Vol_US_Airways_1549][l'avion échoué dans l'Hudson]] qui a été en premier
posté sur Twitter avant les médias classiques. Il est très simple de
prendre une photo d'un espace un peu étrange et de le partager.
Les backrooms poussent les gens, et plus particulièrement les jeunes,
à créer (via des photos, de l'écriture...) et amènent des réflexions
sur notre monde et notre société.
** Les nouveaux moyens de créations
Les backrooms sont très accessibles, notamment aux plus jeunes. Il est
très simple de créer dans cet univers : dessin, texte, vidéo...
Il y a une profusion d'outils pour contribuer à cet univers : Les
jeunes générations ont cette notion de contribution avec les
Wikis. Les logiciels permettant de faire des dessins, des animations,
etc. sont gratuits et les tutoriels fourmillent sur Internet pour les
prendre en main. TikTok, application majoritairement utilisée par les
jeunes, promeut ce genre de création.
Ces créations nécessitent aussi une grande abnégation en tant
qu'auteur. Il ne faut pas fixer des limites dans cet univers, on en
perd l'intérêt. On abandonne le contrôle en tant que créateur pour
laisser l'imagination du lecteur l'embarquer. Cela joue avec *la
suspension consentie de l'incrédulité*, le lecteur accepte de jouer le
jeu.
En tant qu'auteur, cela permet d'évacuer la frustration et partager
ainsi ses sentiments.
* Espaces liminaux dans les jeux vidéos
Les espaces dans les jeux vidéos sont aussi étranges et liminaux :
- Majora's Mask : espace en transition vers la fin du monde
- Les Sims
- Chrono trigger
- Minecraft et ses /farlands/ : une zone boguée en bout de carte. On
ne peut en théorie s'y rendre qu'avec des commandes. Une personne
essaie de [[https://invidious.fdn.fr/channel/UC1Un5592U9mFx5n6j2HyXow][s'y rendre à pied]] depuis plus de 10 ans. Il devrait
arriver [[https://libreddit.nl/r/mindcrack/comments/28xjms/when_will_kurt_reach_the_farlands/][en 2026]].
- Mario64 et sa revisite : Les angles de caméra sont sensiblement
différents. Cela montre que ce jeu ne peut marcher qu'avec des
angles précis sinon on ressent un malaise. On ressent *une banale
étrangeté*.
On peut parler de ruines numériques avec les jeux vidéos, les sites
web (forums...) abandonnés. La vidéo de [[https://invidious.fdn.fr/watch?v=PRgATG6PUA0][ViSauce qui explore un MMORPG
vide]] a cette étrange aura de découverte d'un vestige d'un ancien
temps.
Note personnelle : cela me fait penser à [[https://invidious.fdn.fr/watch?v=03yL_JCeQBI][une vidéo de The Librarian]]
sur le sentiment effrayant que peuvent dégager les cartes faites sur
Source. Si mes souvenirs sont bons, il en a été question lors de la
conférence et je lui trouve aussi beaucoup de points communs avec (le
fait que le lieu devrait être habitué alors que non, architecture
étrange...).
** Aparté Réalité Virtuelle
Notre cerveau est idiot. Notre relation avec l'espace est très
particulière (cf. illusion d'optique). Lors d'une séance de Réalité
Virtuelle, le cerveau va paniquer à cause du décalage entre les
sensations (le corps ne bouge pas) et les informations visuelles (le
personnage dans Super Hot tombe d'un immeuble). Il va s'y habituer
après un certain laps de temps, devant être recalibré avec la réalité
à la fin d'une longue séance.
* Note personnelle et oeuvres citées
[[https://nitter.lacontrevoie.fr/search?f=tweets&q=%23liminalstun][#liminalstun]] pour voir des photos liminales suite à cette conférence.
Note personnelle sur mes expériences avec les espaces liminaux : au
Stunfest, avec l'escalier qui monte. C'est vide et on se demande
pourquoi il n'y a personne. Idem avec certaines stations du métro
parisien où des trains vides arrivent.
Oeuvres citées :
- [[https://fr.wikipedia.org/wiki/BLAME!][BLAME!]] (manga)
- [[https://store.steampowered.com/app/2330500/BETON_BRUTAL/][BETON BRUTAL]] (jeu vidéo)
- [[https://fr.wikipedia.org/wiki/Blair_Witch_(s%C3%A9rie_de_films)][La sorcière de Blair]] (film)
- [[https://fr.wikipedia.org/wiki/Le_Cercle_(film,_2002)][Le Cercle]] (film)
- [[https://fr.wikipedia.org/wiki/Shin_Megami_Tensei][Shin Megami Tensei]] (série de jeux vidéos)
- [[https://www.minecraft.net/][Minecraft]] (jeu vidéo)
- [[https://fr.wikipedia.org/wiki/Les_Sims][Les Sims]] (série de jeux vidéos)
- [[https://fr.wikipedia.org/wiki/Chrono_Trigger][Chrono Trigger]] (jeu vidéo)
- [[https://fr.wikipedia.org/wiki/Super_Mario_64][Super Mario 64]] (jeu vidéo)
- [[https://fr.wikipedia.org/wiki/The_Legend_of_Zelda:_Majora%27s_Mask][The Legend of Zelda: Majora's Mask]] (jeu vidéo)
* Footnotes
[fn:1] On désignera la fondation SCP et son univers sous le nom *SCP*.

View file

@ -1,310 +0,0 @@
#+title: Powershell
#+date: <2022-03-26 sam.>
* Avant-propos
Sources : [[https://www.skilleos.com/cours/apprendre-powershell-pour-debutants][Mooc Powershell sur Skilleos]]
**Les commandes n'ont pas pu être testées dans le cadre de ce
Mooc.**
Je m'appuie quelques fois sur le Bash pour expliquer comment marche
une commande.
* Introduction
Les commandes DOS marchent sous Powershell. Les commandes
Powershell sont appelées des *cmdlets*. Ces commandes peuvent
être système, utilisateur ou créées par l'utilisateur. Elles sont
*insensibles à la casse*, contrairement à Bash, et séparées par un
=;=. Elles retournent et affichent leur résultats sous la forme
d'objets ou de tableaux.
Une commande Powershell se découpe en 2 parties :
=verbe-nom=. Elles sont séparées par un =-=. Il existe différents
verbes (liste non exhaustive) :
| Verbe | Action générique |
|-------+----------------------|
| Get | récupérer |
| Set | définir |
| Start | exécuter |
| Stop | arreter |
| Out | sortir quelque chose |
| New | créer quelque chose |
Exemple de commandes :
* Get-Help : affiche l'aide
* Get-ChildItem : affiche les objets enfants
* Clear-Host : nettoie la console (= clear en bash)
Il existe des alias pour certaines commandes, =Clear-Host= = =cls=
par exemple. Pour pouvoir voir la liste des alias existants :
=Get-Alias=.
Powershell dispose de *son propre IDE*. Il se lance avec la commande
=ise=.
* <<comp>>Opérateurs de comparaison
** Nombres et String
On retrouve les mêmes opérateurs que Bash pour *les comparaisons
mathématiques* : =-eq=, =-ne=, =-gt=, =-lt=...
| Opérateur | Type | Effet |
|-----------+--------+-------------------------------------------------------------------|
| -eq | int | == |
| -ne | int | != |
| -lt | int | < |
| -le | int | <= |
| -ge | int | >= |
| -gt | int | > |
| -eq | string | Vérifie si 2 strings sont égales, ne prend pas en compte la casse |
| -ceq | string | Idem mais prend en compte la casse |
| -like | string | Comparaison avec une regex |
** Connecteurs logiques
Les opérateurs logiques sont tous simplement =-and= et =-or=.
* Pipeline
Elle s'utilise comme en Bash, avec =|= entre les commandes.
C'est intéressant de l'utiliser avec certaines méthodes pour filtrer
les sorties:
=get-member= (affiche attributs et méthodes) ou =select-object
attribut,attribut..= (affiche uniquement les attributs se
trouvant dans la liste).
Il est possible de manipuler l'objet passé dans le pipeline (ou les
objets s'il s'agit d'une liste). Cela peut être utile pour mieux
filtrer les objets et n'afficher que ceux avec un certain
attribut. *Il faut utiliser la variable* =$_= pour avoir l'objet
courant.
Exemple: =Get-PrinterDriver | Where-Object -FilterScript {$_.Manufacturer -eq "HP"}=
Aller voir [[comp][les opérateurs de comparaison]] pour plus d'informations.
* Sécurité
Il est possible d'avoir un filtre de sécurité pour interdire
l'exécution de scripts téléchargés sur des sites non officiels.
On peut vérifier le niveau de la politique d'exécution avec
=Get-ExecutionPolicy=. ELle peut être de plusieurs niveaux :
| Politique | Effet |
|--------------+--------------------------------------------------------------------|
| Unrestricted | On exécute tout |
| Restricted | Bloque tout |
| RemoteSigned | Demande la signature numérique de l'éditeur de script (par défaut) |
| Bypass | aucune restriction |
* Script
Les commentaires sur une ligne se font comme en Bash, avec un #.
Pour les blocs de commentaires, ils sont entourés par
=<# commentaires #>=.
** Variables
Les variables se déclarent et s'utilisent comme en Bash. Les espaces
peuvent cependant être mis lors de l'affectation de la variable :
=$variable = 5=.
*Il est possible de multiplier les strings*, comme en Python, pour
pouvoir avoir X fois une string : ="coucou " * 5= donne
"coucou coucou coucou coucou coucou".
Pour *faire des retours à la ligne* : =`n= dans la string.
Pour déclarer des blocs de textes, il faut utiliser des
*here-strings*.
#+begin_src powershell
$variable = @"
Bloc de texte
sur plusieurs lignes
"@
#+end_src
*** Typage
Il est possible de typer des variables lorsqu'on les déclare :
=[type] $variable=
On peut remplacer =type= par =string= ou =int=.
*** Constante
La déclaration des constantes se fait avec une commande :
=New-Variable=. Il faut lui préciser le nom ainsi que la valeur :
=New-Variable -name variable -value 1 -option Constant=.
Il faut utiliser =Remove-Variable= pour supprimer les constantes
créées.
*** Caste
Si la variable est typée, il est possible de la caster.
Pour caster en int : =[convert]::ToInt32($variable, string, int)=
*** Formatage de string
Pour pouvoir facilement formatter des strings, il existe
*l'opérateur -F* lors de la déclaration de la string :
="String 1 : {0} et une variable X : {1}" -F $val,$value=
Comme en C, il est possible de préciser des formats de valeurs à
afficher comme de l'héxadécimal à partir du décimal ou un certain
nombres de chiffres après la virgule. Exemple
*pour avoir 2 chiffres après la virgule* :
="2 chiffres après la virgule: {0:n2}" -F 3.1419=
[[https://social.technet.microsoft.com/wiki/contents/articles/7855.powershell-using-the-f-format-operator.aspx][Plus d'informations sur le formatage de string]].
** Instructions
La structure du if est classique, on y utilise les opérateurs de
comparaisons.
#+begin_src powershell
# le if et les else
if (variable -le val) {
# instructions
} elseif (variable -gt val ) {
# instructions
} else {
# instructions
}
# le switch
switch (value) {
{$_ -le val} {
# instructions;
break
} default {
# instructions
}
}
#+end_src
** Tableaux
Un tableau se déclare avec comme une variable. Ses différents
éléments sont séparés par une virgule : =$tableau =
"elem1","elem2"=. Pour initialiser *un tableau vide*, il faut lui
assigner =@()=.
Un tableau est un objet et on peut récupérer par exemple sa taille
via l'attribut =Count= : =$tableau.Count=.
On accède à un élément comme un tableau en Python ou en Java :
=$tableau[index]= et on modifie une valeur de la même manière :
=$tableau[index] = val=. Une autre méthode pour sélectionner le
premier object consiste à passer par un pipe :
=$tableau | Select-Object -First 1=.
Pour ajouter une valeur : ~$tableau += val~.
Il existe quelques fonctions dans l'objet des tableaux :
| Fonction | Effet | Paramètre | Valeur de retour |
|----------+----------------------------------------------------+-----------+---------------------------------------------|
| clear | vide le tableau | | |
| contains | vérifie si une valeur est présente dans le tableau | value | true si la valeur est présente, false sinon |
Pour pouvoir trouver un élément ressemblant à une regex ou à une
valeur : =$tableau -like regex=. Il retourne l'élément
correspondant.
Exemple de boucle pour itérer sur tous les éléments d'un tableau :
#+begin_src powershell
for ($i = 0; $i -le ($tableau.Count - 1); $i = $i + 1) {
# instructions
}
foreach ($i in $tableau) {
# instructions
}
#+end_src
** Fonctions
Si vous utilisez l'éditeur de Powershell, il faut *enregistrer puis
recharger* le script pour pouvoir exécuter les fonctions.
Contrairement au Bash, il faut déclarer les attributs en début de
fonction. Il est aussi possible de rajouter des contraintes sur ces
paramètres (juste sur un champ de valeur, obligatoire...). Les
paramètres peuvent avoir des alias qui seront utilisés comme des
arguments. Par exemple, un paramètre avec l'alias nombre :
=fonction -nombre 1=.
Il est possible de rajouter certaines fonctionnalités aux
fonctions. =[cmdletbinding()]= va permettre l'ajout d'options
automatiques liés aux cmdlet, comme l'option =-Verbose= qui permet
d'afficher les commentaires lors de l'exécution de la fonction. Ça
appelle automatiquement la méthode =Write-Verbose=.
Comme dans AWK, on peut préciser des blocs d'instructions qui
seront exécutés tout le temps en début et fin de fonction. Ils sont
cependant *optionnels* et il est possible d'écrire une fonction sans
aucun bloc spécial.
| Nom du bloc | Exécution |
|--------------+-------------------------|
| BEGIN | Au début de la fonction |
| END | À la fin de la fonction |
| PROCESS | Corp de la fonction |
Une fonction *avec des arguments non obligatoires*, qui est appelée
sans, va utiliser *des valeurs vides* à la place.
#+begin_src powershell
function foo {
[cmdletbinding()]
param (
[parameter (mandatory=$true)] # le paramètre est obligatoir
[string]$var,
[validaterange (0, 10)] # le paramètre doit être compris entre 0 et 10
[alias ("nombre")] # et a pour alias nombre
[int]$val,
[int]$bar # paramètre classique
)
BEGIN {
# instructions
}
PROCESS {
# instructions
}
END {
# instructions
}
}
#+end_src
* Liste de commandes
Il s'agit juste de montrer leur utilité, pas les arguments. Je vous
conseille de vérifier en premier comme la commande s'utilise avant
de l'exécuter.
| Commande | Fonctionnalité | Paramètres possibles |
|---------------+-------------------------------+-----------------------------------------------------------------|
| Get-Help | Affiche l'aide | |
| Get-Service | Liste des services | |
| Get-Command | Liste de toutes les commandes | Regex pour filtrer les commandes |
| Get-Alias | Liste de tous les alias | alias pour n'avoir les informations que sur celui-ci (et Regex) |
| New-Alias | Créer un nouveau alias | |
| Get-ChildItem | Affiche les objets enfants | |
| Clear-Host | Clear en Bash | |
| Write-Output | Echo en Bash | |
| Write-Host | Idem | -foregroung pour changer la couleur du texte |
| Out-File | Ecrit dans un fichier | |

View file

@ -1,40 +0,0 @@
;; Script Emacs pour exporter en HTML et Org des fichiers .org.
;;
;; Copyright (C) 2022 rick G. <rick@gnous.eu>
;;
;; This program is free software: you can redistribute it and/or modify it under
;; the terms of the GNU General Public License as published by the Free Software
;; Foundation, either version 3 of the License, or (at your option) any later
;; version.
;;
;; This program is distributed in the hope that it will be useful, but WITHOUT
;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
;; FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
;;
;; You should have received a copy of the GNU General Public License along with
;; this program. If not, see <https://www.gnu.org/licenses/>.
(require 'ox-publish)
(require 'htmlize)
(setq org-publish-use-timestamps-flag nil)
(setq org-publish-project-alist
'(
("nec"
:base-directory "nec"
:base-extension "org"
:exclude "cheatsheets"
:publishing-directory "www/nec"
:recursive t
:email "rick@gnous.eu"
:author "rick"
:with-email t
:language fr
:auto-sitemap t
:sitemap-title "Notes et Cheatsheets"
:htmlized-source t
:html-link-home "/"
:publishing-function (org-html-publish-to-html org-org-publish-to-org)
; :auto-preamble t
)
))
(org-publish-project "nec")