Sfoglia il codice sorgente

Drafting Zam

master
David Larlet 4 anni fa
parent
commit
71973481ae
Non sono state trovate chiavi note per questa firma nel database

+ 1
- 0
david/2020/04-18.md Vedi File

@@ -3,6 +3,7 @@
*L’histoire assez personnelle d’un produit collectif.*

.. include:: fragments/Zam Contexte.md
.. include:: fragments/Zam Objectif.md
.. include:: fragments/Zam Approche.md
.. include:: fragments/Zam Technique.md
.. include:: fragments/Zam Transmission.md

+ 13
- 1
david/2020/04/18/index.html Vedi File

@@ -50,7 +50,19 @@
<img src="/static/david/2020/zam_journal.png" alt="Première rencontre avec Mélodie le 18 avril, avec Raphaël le 17." loading="lazy" />
<figcaption>Première entrée dans mon journal pro, j’aime constater à quel point il a évolué dans le temps pour consigner davantage des émotions et ressentis une fois la confiance installée.</figcaption>
</figure>
<h2 id="approche">Approche <a href="#approche" title="Ancre vers cette partie" aria-hidden="true">#</a></h2><p>Pour tenir dans la durée, il faut réussir à trouver un rythme qui soit soutenable pour tou·te·s. En étant à distance et sur un fuseau horaire différent, cela signifie s’adapter pour trouver un créneau quotidien d’échange qui tourne autour d’une heure. C’est un moment important autant pour le travail à réaliser que pour maintenir l’humeur de l’équipe à un niveau enthousiasmant. Non pas comme une suite de <em>sprints</em> mais comme un ultra-marathon avec plein de <em>pacers</em>.</p>
<h2 id="objectif">Objectif <a href="#objectif" title="Ancre vers cette partie" aria-hidden="true">#</a></h2><p>L’objectif est de proposer un outil numérique permettant de réduire la pénibilité (et le nombre de pages jusque là imprimées) lors de la rédaction des réponses aux amendements soumis par les députés et/ou sénateur·ice·s de la part du gouvernement afin de préparer le débat législatif au sein des instances parlementaires (Assemblée Nationale et Sénat).</p>
<p>Exprimé ainsi il faut s’accrocher, aussi je vous propose un exemple sous forme de chronologie et un peu simplifié (les dates sont inventées mais proches de la réalité) :</p>
<ol>
<li>Lundi, le gouvernement soumet un projet de loi à l’Assemblée Nationale ;</li>
<li>Jusqu’à vendredi midi, les députés soumettent des amendements dans l’intention d’améliorer le texte initial ;</li>
<li>De vendredi midi à lundi, les services du gouvernement travaillent pour avoir une réponse précise/pertinente à chaque amendement (c’est généralement la nuit/fin de semaine, oui) ;</li>
<li>Le lundi suivant, la séance publique commence et le ou la ministre dispose de réponses permettant de prendre la parole dans l’hémicycle ;</li>
<li>Au cours du débat parlementaire qui prend quelques jours, les amendements sont acceptés ou rejetés en fonction des votes en séance, le texte est modifié en conséquence avant de passer au Sénat.</li>
</ol>
<p>Zam intervient à l’étape 3 lorsqu’il s’agit de rédiger ces réponses dans des délais courts, avec la plus grande expertise possible et une chaîne de validation conséquente. Cet outil vient remplacer un processus à base de (beaucoup de) papier, d’outils de traitement de texte/tableur et de longues heures de sommeil perdues.</p>
<p>Zam est sporadiquement utilisé en étape 4 pour les conseillers qui sont sur les bancs de l’Assemblée Nationale et a même été utilisé par une ministre en <a href="http://videos.assemblee-nationale.fr/direct.php">direct</a> sur une tablette. <em>Achievement unlocked.</em></p>
<h2 id="approche">Approche <a href="#approche" title="Ancre vers cette partie" aria-hidden="true">#</a></h2><p>Tout a commencé à échelle humaine sur un projet de loi bien précis et surtout avec une personne clé qui connaissait bien les rouages des processus existants, au point de vouloir les changer. Ce que l’on appelle une <em>intrapreneuse</em>. Puis ça s’est rapidement emballé suite à la satisfaction des utilisateur·ice·s aux veillées moins stressantes et aux nuits moins courtes (!) pour les personnes jusqu’alors en souffrance. On a commencé à enchaîner les projets de loi et les ministères concernés.</p>
<p>Pour tenir dans la durée, il faut réussir à trouver un rythme qui soit soutenable pour tou·te·s. En étant à distance et sur un fuseau horaire différent, cela signifie s’adapter pour trouver un créneau quotidien d’échange qui tourne autour d’une heure. C’est un moment important autant pour le travail à réaliser que pour maintenir l’humeur de l’équipe à un niveau enthousiasmant. Non pas comme une suite de <em>sprints</em> mais comme un ultra-marathon avec plein de <em>pacers</em>.</p>
<p>En parallèle de ces discussions, il y a nos échanges avec les personnes utilisant le produit dont l’avis est essentiel pour pouvoir continuer à être pertinents. Cela arrive environ toutes les deux semaines et nous mettons un canal de réception en place pour les personnes ne pouvant pas être sur place. C’est vraiment important pour moi d’arriver à avoir ces retours sans intermédiaires de façon à développer mon empathie pour les utilisateur·ice·s.</p>
<p>Tous les six mois environ (?), on prend un peu de recul sur ce que l’on a fait et compris — sur notre nouvelle façon de voir les choses aussi — pour réajuster le cap si on en ressent le besoin. Cela permet d’échanger sur des émotions qui sont passées entre les mailles du filet quotidien.</p>
<h2 id="technique">Technique <a href="#technique" title="Ancre vers cette partie" aria-hidden="true">#</a></h2><p>J’ai parlé un peu de <a href="/david/2020/03/13/">technique</a> récemment et la pile de technologies que l’on a utilisé pour ce projet me semble être relativement stable et compréhensible. Le code est accessible sur <a href="https://github.com/betagouv/zam/">Microsoft Github</a> sous <a href="https://tldrlegal.com/license/gnu-affero-general-public-license-v3-(agpl-3.0)">licence AGPL-3</a>, on peut voir que la répartition est assez équilibrée entre Ronan et moi. C’est du Python 3 annoté pour les types qui utilise <a href="https://trypyramid.com/">Pyramid</a> comme <em>framework</em> web. Rien de très exotique et c’est intentionnel considérant que nous souhaitions à un moment transmettre le produit (voir plus bas).</p>

+ 2
- 0
david/2020/fragments/Zam Approche.md Vedi File

@@ -1,5 +1,7 @@
## Approche

Tout a commencé à échelle humaine sur un projet de loi bien précis et surtout avec une personne clé qui connaissait bien les rouages des processus existants, au point de vouloir les changer. Ce que l’on appelle une *intrapreneuse*. Puis ça s’est rapidement emballé suite à la satisfaction des utilisateur·ice·s aux veillées moins stressantes et aux nuits moins courtes (!) pour les personnes jusqu’alors en souffrance. On a commencé à enchaîner les projets de loi et les ministères concernés.

Pour tenir dans la durée, il faut réussir à trouver un rythme qui soit soutenable pour tou·te·s. En étant à distance et sur un fuseau horaire différent, cela signifie s’adapter pour trouver un créneau quotidien d’échange qui tourne autour d’une heure. C’est un moment important autant pour le travail à réaliser que pour maintenir l’humeur de l’équipe à un niveau enthousiasmant. Non pas comme une suite de *sprints* mais comme un ultra-marathon avec plein de *pacers*.

En parallèle de ces discussions, il y a nos échanges avec les personnes utilisant le produit dont l’avis est essentiel pour pouvoir continuer à être pertinents. Cela arrive environ toutes les deux semaines et nous mettons un canal de réception en place pour les personnes ne pouvant pas être sur place. C’est vraiment important pour moi d’arriver à avoir ces retours sans intermédiaires de façon à développer mon empathie pour les utilisateur·ice·s.

+ 15
- 0
david/2020/fragments/Zam Objectif.md Vedi File

@@ -0,0 +1,15 @@
## Objectif

L’objectif est de proposer un outil numérique permettant de réduire la pénibilité (et le nombre de pages jusque là imprimées) lors de la rédaction des réponses aux amendements soumis par les députés et/ou sénateur·ice·s de la part du gouvernement afin de préparer le débat législatif au sein des instances parlementaires (Assemblée Nationale et Sénat).

Exprimé ainsi il faut s’accrocher, aussi je vous propose un exemple sous forme de chronologie et un peu simplifié (les dates sont inventées mais proches de la réalité) :

1. Lundi, le gouvernement soumet un projet de loi à l’Assemblée Nationale ;
2. Jusqu’à vendredi midi, les députés soumettent des amendements dans l’intention d’améliorer le texte initial ;
3. De vendredi midi à lundi, les services du gouvernement travaillent pour avoir une réponse précise/pertinente à chaque amendement (c’est généralement la nuit/fin de semaine, oui) ;
4. Le lundi suivant, la séance publique commence et le ou la ministre dispose de réponses permettant de prendre la parole dans l’hémicycle ;
5. Au cours du débat parlementaire qui prend quelques jours, les amendements sont acceptés ou rejetés en fonction des votes en séance, le texte est modifié en conséquence avant de passer au Sénat.

Zam intervient à l’étape 3 lorsqu’il s’agit de rédiger ces réponses dans des délais courts, avec la plus grande expertise possible et une chaîne de validation conséquente. Cet outil vient remplacer un processus à base de (beaucoup de) papier, d’outils de traitement de texte/tableur et de longues heures de sommeil perdues.

Zam est sporadiquement utilisé en étape 4 pour les conseillers qui sont sur les bancs de l’Assemblée Nationale et a même été utilisé par une ministre en [direct](http://videos.assemblee-nationale.fr/direct.php) sur une tablette. *Achievement unlocked.*

+ 1
- 1
david/log/index.xml Vedi File

@@ -5,7 +5,7 @@
<link href="https://larlet.fr/david/" rel="alternate" type="text/html" />
<link href="https://larlet.fr/david/log/" rel="self" />
<id>https://larlet.fr/david/</id>
<updated>2020-04-14T12:00:00+01:00</updated>
<updated>2020-04-15T12:00:00+01:00</updated>
<author>
<name>David Larlet</name>
<uri>https://larlet.fr/david/</uri>

+ 11
- 1
site.py Vedi File

@@ -1,6 +1,6 @@
#!/usr/bin/env python3

import fnmatch
import json
import locale
import os
from dataclasses import dataclass
@@ -184,6 +184,16 @@ def feed():
open(DAVID / "log" / "index.xml", "w").write(content)


@cli
def mastodon():
"""Generate an activity feed from last published items."""
page_list = Page.all(source=DAVID / "2020")
current_dt = TODAY.strftime(NORMALIZED_STRFTIME)
BASE_URL = f"{DOMAIN}/david/"
content = {}
open(DAVID / "mastodon" / "outbox_content.json", "w").write(json.dumps(content))


@wrap
def perf_wrapper():
start = perf_counter()

Loading…
Annulla
Salva