Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pourquoi nous n'avons pas de compte utilisateur ? #400

Open
1 task done
laem opened this issue Nov 19, 2021 · 8 comments
Open
1 task done

Pourquoi nous n'avons pas de compte utilisateur ? #400

laem opened this issue Nov 19, 2021 · 8 comments
Labels
question Sujet sur lequel on a très peu de certitudes

Comments

@laem
Copy link
Contributor

laem commented Nov 19, 2021

On voit de temps en temps revenir l'idée qu'on devrait permettre la création d'un compte utilisateur pour stocker ses données, pouvoir y revenir, pouvoir comparer des simulations dans le temps. Notamment #303.

Je place ici quelques questions et idées.

📘 Cette issue est un document dynamique : je prends en compte au mieux les commentaires qui sont fait en-dessous.

La situation actuelle

Nous stockons aujourd'hui les simulations dans le localStorage du navigateur. Ça veut dire que les données ne sortent jamais du navigateur de l'utilisateur ! Nos serveurs ne les reçoivent donc jamais.

L'utilisateur est seul responsable de la suppression de ses données. Un clic droit sur le cadenas, puis supprimer les données ou les cookies remet le compte à zéro. Idem en cliquant sur "Recommencer" sur /profil.

La contrainte est évidemment que l'utilisateur doit utiliser le navigateur d'origine pour retrouver ses données.

Note importante : est-ce vraiment un préjudice pour l'utilisateur que ses données ne soient pas stockées sur une base de données centralisée nous appartenant ?

Si vous vous basez sur les services commerciaux, vous vous direz que c'est forcément la norme. Sauf que, on y reviendra plus bas, ces services vivent souvent de la vente de ses données, au-delà du besoin évident d'avoir un service fonctionnel sur plusieurs navigateurs. Nous n'avons pas besoin des données pour financer Nos Gestes Climat.

Reste donc à mes yeux, uniquement le problème dit "cross-device". Est-ce un préjudice pour l'utilisateur pour un test qui se refait en 5 minutes ? À creuser, je n'en suis pas certain.

Note importante : Whatsapp a atteint le milliard d'utilisateurs en n'étant pas cross-device. Qui n'a jamais perdu ses messages whatsapp après avoir perdu / changé son téléphone ? L'interface Web est d'ailleurs arrivée bien après le succès planétaire de l'app. Cela dit, il est peut-être plus courant de "supprimer ses cookies" sur son navigateur que de désinstaller Whatsapp. Je dis bien peut-être : il y a fort à parier que le français moyen ne supprime jamais ses données de navigation, maintenant que la navigation privée a été largement popularisée.

Pourtant, comme en atteste le commentaire de Olivier, il y a le problème de la simulation faite sur le poste de travail, plus disponible sur l'appareil perso.

Besoin : comparer des simulations dans le temps

L'un des autres besoins évident est la comparaison des simulations dans le temps, qui semble intéresser certains.

Un problème évident, lié au point plus bas de la mise à jour du modèle, est que même à mode de vie constant, les résultats de simulation évoluent avec le modèle (qui se précise, qui change des calculs, etc.) : un facteur d'émission est mis à jour, une nouvelle question "caravane" est posée, alors que l'utilisateur avait déjà une caravane en 2017, la méthode d'amortissement de la construction de la voiture est changée, etc.

Pour palier à cela, nous pouvons stocker à la fois les résultats de simulation, mais aussi les réponses brutes (nb de kWh), pour rejouer la simulation avec le nouveau modèle. Mais comment faire la part des choses entre corrections du modèle, et efficacité carbone des technologies par exemple ?

Il n'est donc pas évident que la vue historisée des simulations soit utile, quand le score de l'utilisateur ne change que de quelques centaines de kilos.

Une solution suggérée par un réutilisateur qui le fait déjà aujourd'hui, serait de stocker seulement les valeurs agrégées des simulations, pour éviter toutes ces questions compliquées, et quand même apporter une valeur d'historique à l'utilisateur.

Légal

Si j'ai bien compris la RGPD, son principe est qu'il faut informer l'utilisateur a priori de ce qu'on fera des données collectées. Stocker les données ne nous permettra pas magiquement de les faire "sortir" de chez nous, il faut le savoir. On devra bien sûr donner la possibilité à l'utilisateur d'effacer ses données à volonté.

Globalement, l'esprit de la loi est qu'on ne stocke des données que pour un usage qui doit être ciblé et bien compris par l'utilisateur. Ça nous oblige à bien expliquer l'intérêt d'un tel stockage : pour quoi faire, précisément ?

Sécurité

Stocker les simulations dans une base de données serait relativement facile en termes techniques. Une semaine de travail pour langer un serveur (qu'un a déjà pour le sondage) express connecté à une base Mongo. Malgré notre trafic important, la charge ne serait pas un problème (sauf pour les connexions massives instantanées telles qu'après une exposition au journal de 20h). Mais...

Les données qu'on stocke aujourd'hui dans le navigateur, donc de façon absolument fiable, sont précieuses : des milliers d'entreprises et autres acteurs aimeraient mettre la main sur un JSON qui décrit de plus en plus précisément le mode de vie d'un citoyen ! Tout est dit dans cet article provocateur de la messagerie Signal.org.

image

Si nous stockons les simulations dans une base centralisée, nous n'aurons pas le droit à l'erreur.

Une solution est de chiffrer les données. Les chiffrer avec une clef qu'on possède nous, ça ne changerait pas fondamentalement le problème, car la clef de voûte devient alors cette clef. Les chiffrer en bout-à-bout, ce que fait Matrix par exemple pour les conversations 1 à 1, aurait deux conséquences : complexe pour l'utilisateur; impossible pour nous de faire des analyses de données facilement, il faudrait demander accès à l'utilisateur.

Problématiques de mise à jour du modèle

À chaque fois que nous mettons à jour le modèle de calcul, nous introduisons une incompatibilité partielle entre la simulation "de pointe" et celle faite par un utilisateur il y a 1 jour, 1semaine, 1 mois, 1 an.

Voir cette issue pour les détails de ce point important #1094

Mieux afficher l'existence du compte

Tout en restant en système compte local, on pourrait mieux mettre en valeur dans l'interface que les données sont là, quand t'arrive sur la home un truc du genre [vous avez déjà fait la simu], coloré, vivant, pointant vers la page profil améliorée. Entourer le bouton profil du menu pour faire comprendre qu'il y a des données dedans.

  • Globalement, en 2023, c'est fait dans une v0

Plus ambitieux : un utilisateur nous a suggéré que le compte traditionnel, il n'en aurait pas besoin voir ça l'inquiéterait, mais qu'il aurait un besoin de pouvoir stocker plusieurs simulations sur son appareil :

  • chaque simulation faite serait alors identifiée par sa date par défaut
  • le bouton "recommencer" ne ferait que déclencher une nouvelle simulation vierge qui s'empilerait à l'historique
  • chacun pourrait nommer ses simulations, par exemple "Test Orléans 2021" et "Test après déménagement à La Rochelle" ; ou "Test pour Papa".

L'utilisateur choisirait alors une simulation "active", les autres étant une liste d'archives réactivables en un clic, notamment pour le mode groupe.

Les personas pourraient s'inscrire dans cette nouveauté : actuellement tester un persona écrase la simulation courante, ce qui peut poser problème pour ceux qui ne lisent pas le panneau d'avertissement au clic.

On retrouve alors la possibilité de faire, sans compte traditionnelle, le besoin du commentaire de Olivier : visualiser l'historique des simulations. Mais ça n'a du sens que si ces simulations sont faites sur la même personne, comment le deviner ?

Permettre l'export des données

Nous pourrions simplement permettre l'export en CSV des données, ou mieux en tableur réutilisable facilement avec facteurs d'émission. Il y aurait un travail à faire pour savoir quels facteurs d'émission exporter, car notre modèle est bien plus complexe que Somme(grandeur x facteur).

Ce sujet vient aussi avec le besoin de modification des facteurs eux-mêmes : on pourrait permettre à l'utilisateur de changer par exemple le facteur d'émission de l'électricité de sa maison, s'il estime que son installation autonome a un facteur différend. Ce serait très puissant, assez facile à faire, mais très expert.

Voir #333.

L'export pourrait prendre la forme d'un lien de partage : "Transférer mes simulations sur un autre appareil" -> https://nosgestesclimat.fr/partage?id=09J0291HD0192HD [Attention, lien valide seulement pendant 24h]. Ce ne serait pas compliqué et éviterait de créer des liens à rallonge.

Envoyer par courriel

Nous avons déjà évoqué cette solution pour répondre au problème du cross-device. Problème : soit on n'envoie que les résultats agrégés, donc l'URL de la page de /fin, soit on a une URL à rallonge très moche, soit on utilise une base de données clef valeur.

Finalement, quel intérêt utilisateur ?

Stocker les données sur un serveur central, pose des problèmes, et apporte des avantages. Il faut qu'on liste bien tout cela pour faire la balance des choses.

Notamment, dit simplement, quelle est la carotte pour l'utilisateur ?

Bien sûr, si en échange du compte l'utilisateur peut obtenir 500€ d'aide à la transition énergétique, ça règle une partie du problème.

À l'inverse, s'il s'agit seulement de lui permettre de suivre l'historique de ses simulations, il est à ce stade peu probable que ce soit un investissement rentable.

Tout un travail d'imagination et de conception à mener !

@Benjamin-Boisserie-ABC
Copy link
Collaborator

Plusieurs questions/remarques

  • au sujet de l'évolution du modèle entre deux simulations. Il me semble en effet pertinent de rejouer le nouveau modèle avec les réponses brutes mais il me semble pas difficile de faire la part des choses en utilisant notamment un message générique qui peut expliquer cela (ex : si vous constatez une baisse des émissions sur le poste alimentation, c'est très certainement d'une refonte de nos estimations concernant la quantité de déchets). Qui plus est, j'ai l'impression que les évolutions de modèle sont bien plus portées par le volet action que le volet calcul en lui même. Mais je comprends bien le problème de "devoir écrire un mini-script de mise à jour des simulations"
  • Le choix de "mieux afficher l'existence des données dans profils" semble pertinent mais pour que ça le reste il faut que l'utilisateur ne fasse aucun reset global de ses données, ce qui est peu probable sur le long terme
  • Envoyer par courrier : on parle d'une URL à rallonge à quel point ? Car cela semble le moyen le plus simple

@laem
Copy link
Contributor Author

laem commented Dec 15, 2021

Envoyer par courrier : on parle d'une URL à rallonge à quel point ? Car cela semble le moyen le plus simple

L'URL doit contenir toutes les réponses de la simulation. Donc un truc au moins aussi long que ça 😅. Autant dire qu'on devra minifier le lien soit avec un service existant, soit un serveur à nous.

https://mon-entreprise.urssaf.fr/simulateurs/salaire-brut-net?contrat+salari%C3%A9=%27CDI%27&contrat+salari%C3%A9+.+ATMP+.+taux+connu=oui&contrat+salari%C3%A9+.+ATMP+.+taux+personnalis%C3%A9=23%25&contrat+salari%C3%A9+.+aides+employeur+.+emploi+franc+.+%C3%A9ligible=non&contrat+salari%C3%A9+.+convention+collective=%27HCR%27&contrat+salari%C3%A9+.+d%C3%A9duction+forfaitaire+sp%C3%A9cifique=non&contrat+salari%C3%A9+.+r%C3%A9mun%C3%A9ration+.+primes+.+activit%C3%A9+.+base=2394%E2%82%AC%2Fmois&contrat+salari%C3%A9+.+r%C3%A9mun%C3%A9ration+.+primes+.+fin+d%27ann%C3%A9e+.+treizi%C3%A8me+mois=non&contrat+salari%C3%A9+.+statut+cadre=non&contrat+salari%C3%A9+.+temps+de+travail+.+heures+suppl%C3%A9mentaires=17.33heure%2Fmois&contrat+salari%C3%A9+.+temps+de+travail+.+temps+partiel=non&salaire-brut=2300%E2%82%AC%2Fmois&utm_source=sharing.

@olivier-monaco
Copy link

Bonjour,

Je pense que ce ticket regroupe plusieurs besoins :

  • Avoir une vision a un instant T de son empreinte carbone tel que calculé par l'outil
  • Ne pas avoir à resaisir toutes les réponses

Ces deux besoins devraient être considérés séparemment.

Le premier est, comme vous le pointez, sujet à évolution sur le modèle de calcul. Dans ce cas, un export statique et daté pemet de dire "voici notre estimation tel jour de votre impact carbone". Ce peut être par courriel (avec le contenu dans le courriel lui même, pas via un lien) et/ou en PDF avec plus ou moins de détails.

Le second est pour moi plus d'un point de vue pratique. Exemple : j'ai fait hier la simulation sur un navigateur de mon poste de travail. Je ne pouvais donc pas revenir dessus chez moi. Pire, ce matin j'avais tout perdu. (Heureusement je connais le truc et avait copié le "local storage").

Je comprends la problématique des questions qui évoluent. Mais déjà ne pas avoir à réfléchir à nouveau au nombre de kilomètres que je fais chaque années, aux types de repas dans la semaine, etc. me fait gagner du temps et je peux réfléchir non plus aux mêmes questions sans cesse mais à affiner mes données.

Et en voyant plus loin, ça pourrait mener à un vision "historique" montrant son évolution progressif. C'est très important pour motiver les gens sur les efforts à faire. Ex. l'interface d'Enedis pour suivre sa consommation électrique est très mauvaise. J'ai créé ma propre interface : ça me permet de voir l'évolution depuis 2 ans et d'optimiser vraiment ma consommation.

++

@olivier-monaco
Copy link

Pour plus facilement exporter/importer les données du "local storage", j'ai créé deux bookmarklets. C'est très basique et pas du tout "user friendly". Mais si ça peut servir à d'autres : https://github.com/olivier-monaco/local-storage-bookmarklets

@Clemog
Copy link
Contributor

Clemog commented Jan 9, 2023

A priori, il serait pertinent d'ajouter ces éléments de réponse dans la FAQ pour que ce soit traduit

@jeannelf
Copy link

on garde l'idée et la discussion en tete mais je ferme pour l'instant

@jeannelf jeannelf closed this as not planned Won't fix, can't repro, duplicate, stale Nov 16, 2023
Kanban Site automation moved this from Sur la table to Fermé Nov 16, 2023
@Clemog Clemog reopened this Nov 16, 2023
Kanban Site automation moved this from Fermé to À faire Nov 16, 2023
@Clemog
Copy link
Contributor

Clemog commented Nov 16, 2023

Je pense que c'est important de garder ouvert car on la retrouve moins facilement non ?
C'est typiquement une issue que je recherche de temps en temps et je n'aurai pas le réflexe de chercher parmi les "closed" ça te va ?

@jeannelf
Copy link

j'avais transféré à notion, ca me permettait de faire de l'espace dans le backlog mais comme tuv

@jeannelf jeannelf removed this from À faire in Kanban Site Nov 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Sujet sur lequel on a très peu de certitudes
Projects
None yet
Development

No branches or pull requests

5 participants