Possible, parmi mes copains en tout cas, les deux sont assez liés, mais oui c’est pas une règle universelle.
En ce qui me concerne, les notions de protection de la vie privée sont assez liés à mes intérêts dans le libre. Je veux dire, je vais éviter un logiciel libre s’il amasse mes données. D’ailleurs les règles aux US qui veulent rendre obligatoire l’identification des gens qui utilisent un OS, c’est complètement fucked up. Bientôt on va devoir justifier d’avoir +18 ans pour utiliser un grille pain parce que ya du linux dedans ?
Salut, je comprends tout à fait. Pour répondre aux questions:
Pour linuxfr, je connais depuis que j’ai passé 2 ans à Caen dans l’équipe de David au GREYC. En gros depuis la mon école d’ingé je suis assez passioné de logiciel libre. Je suis pas lecteur régulier du journal, mais j’aime bien les articles en général.
J’ai posté ici parce que je pense sincérement que c’est le genre d’appli qui plait à ce public. 100% libre, chiffré de bout en bout, pratique, en Français, etc.
Pourquoi pas avant, tout simplement parce que j’ai jamais ressenti le besoin de m’inscrire pour lire de temps en temps une dépêche.
J’ai fait 4 passes dessus. La première complètement 100% écrite à la main. Après j’ai demandé des retours à un LLM, et j’ai récris 4 fois le texte. Je peux mettre la toute première version en dessous si tu veux.
Cher journal,
Ça fait 9 mois, on arrive à terme, enfin ! C’était pas prévu initialement, mais comme je suis assez fier d’elle, et convaincu qu’elle pourra vous aider dans future, je vais vous raconter comment elle a été créée. Tout a commencé la semaine du nouvel an. On était plutôt nombreux, une bonne dizaine, et vous imaginez qu’à autant, la coordination peut être compliquée ! Alors pour simplifier, en général c’est chacun(e) son tour. Mais comme ça a duré toute une semaine, on finit par oublier qui a déjà pris, cher ou pas. Dans cette situation, le plus pratique c’est d’utiliser une appli. On enregistre la participation de chacun(e), afin de s’en souvenir plus tard. On peut même ajouter des émojis dans les descriptions. Par exemple, je m’occupe des 🍑 aujourd’hui, et hier, c’est Alice qui a géré les 🍆. Bref vous voyez quoi. Au final, il y a quand même un gros problème avec cette appli. On a zero control sur nos données. Et perso, j’ai pas envie qu’après une faille de données, tout le monde ait accès à mes enregistrements. Donc à la fin de cette semaine, je me suis lancé, avec l’objectif de créer la meilleure appli de partage de frais entre amis. Elle s’appelle "Partage", et j’espère qu’elle va vous plaire !
Les bons comptes font les bons amis
Une petite intro vite fait pour poser les bases. Votre groupe de copains part quelques jours en vacances. Pierre s’occupe de louer la maison, on prend les voitures de Camille et de Marie pour le trajet, Thomas s’occupe de faire les courses, et Jean son truc c’est de payer les tournées au bar. Chacun rentre ses dépenses, qui était concerné par celles-ci, et à la fin du séjour, l’appli fait le bilan. Elle propose un plan de remboursement optimisé pour minimiser le nombre de virements à faire entre les membres du groupe. Le but étant de partager le coût des vacances équitablement.
Le diable se trouve dans les détails
Le principe de l’app est facile à comprendre, mais en pratique, il y a pas mal d’obstacles si on veut bien faire. L’appli la plus connue en France c’est Tricount, mais certains détails on finit par me pousser à créer Partage. Surtout, c’est une appli propriétaire (non-libre), non chiffrée. Ensuite il y a quelques autres irritations, voir agacements. Par example, il n’y a pas d’historique d’activité. Si un membre du groupe modifie une dépense, impossible de s’en rendre compte, sauf à être ultra attentif. Il n’y a pas non plus de filtres. Si je veux voir uniquement les dépenses qui me concernent, ou Martine, pas possible. Il n’est pas non plus possible d’ouvrir un groupe directement sur mon ordinateur, je dois installer l’appli mobile. Et plein d’autres détails qui fâchent. Je vais m’arrêter là parce que la liste serait très longue.
Partage, la génèse
Comme tout programmeur qui se respecte, je me suis initialement dit qu’en 2/3 semaines ça serait plié. En plus c’était l’occasion idéale pour enfin tester cette nouvelle technique à la pointe, le vibe coding . J’ai donc commencé par une grosse séance de psy avec Claude, pour en sortir une spec super détaillée de mon appli parfaite. Et le 4 janvier, le tout premier commit est envoyé dans le nuage avec ce fichier DESIGN.md couvrant la vision, l’architecture, la tech, les fonctionalités, etc. Tout y est, ou du moins, tout ce à quoi j’avais pensé.
Les premiers jours ça avance très vite ! Je me suis fait un plan d’implémentation sans faille (que je croyais). Claude finit chaque phase du plan plus ou moins en autonomie. J’interviens de temps en temps. Je lance l’appli pour tester localement. Je jette un oeil au code ici et là. Mais comme un des objectifs était de tester le vibe coding, je restraint mes interventions au strict minimum.
Quelques jours plus tard, on va même tester l’appli avec un groupe de copains sur un weekend, et elle fonctionne plutôt bien !
La désillusion
Le gros problème du vibe coding (sans parler des aspects éthiques), c’est la dette technique. Cette illusion que le modèle est à la fois un codeur parfait, et que tout problème rencontré sera facilement solutioné avec le prochain prompt. Sauf qu’encore aujourd’hui, ça n’est pas le cas. Même si l’application produite était super impressionante au bout de quelques jours, c’est en testant les cas limites que je me suis rendu compte du problème à venir.
- Que se passe t’il si je supprime une dépense puis que je la réajoute ?
- Si je crée une dépense par un membre du groupe puis que je supprime ce membre ?
- Si un nouveau membre se trompe et prend la place d’un autre ?
- Si deux personnes modifient la même dépense hors ligne, puis se re-synchronisent en ligne ensemble ?
C’est à ce moment que je suis entré dans une spirale de chasse aux bugs, où corriger un bug en faisait apparaitre un nouveau ailleurs. Les bugs avec les membres, c’est une histoire sans fin, dont la seule solution est de mettre le nez dans le code. Et là c’est le désespoir. Pire qu’un collègue qui vous envoie une pull request de 3000 lignes à intégrer. C’est tout un projet, avec une codebase inconnue, dans laquelle il faut plonger, pour comprendre comment chaque partie est reliée.
J’ai tenu quasiment un mois, puis j’ai craqué. Le 30 janvier, j’ai signé le dernier commit dans ce dépot. Mais tout espoir n’est pas perdu. Un mois plus tard, fin février, je me décide finalement à redémarrer de zero !
[image meme big plans]
Reset, on remet une pièce
En tant que programmeur, il n’y a pas grand chose qui me frustre plus que d’utiliser une appli buggée. Donc on va poser des bases saines avec une archi solide. En ce qui me concerne, je suis assez fan des concepts de programmation fonctionnelle. Alors je vais pas en faire tout un pavé, mais en gros, avec des fonctions pures, des types immutables, des effets de bord repoussés au limites, et une modelisation des données avec des types algébriques, on est déjà en bonne companie !
Ensuite je modélise le domaine et le flux des données de manière adaptée, et tout coule de source. Pour les plus techniques d’entre vous, j’ai utilisé le language Elm, et le coeur de l’appli, se résume à cette fonction, qui est un "fold" de tous les événements du groupe (signés), triés de manière déterministe, pour faire évoluer l’état du groupe.
applyEvents:ListEnvelope->GroupState->GroupState
Tout est déterministe, donc facilement testable, et converge vers le même état, sur tous les appareils participant au groupe, sans avoir besoin d’un server central qui sert de vérité absolue.
Le serveur de l’appli est hyper minimaliste. C’est juste une base sqlite qui accumule et relaie les événements chiffrés qui arrivent des clients.
Je vais pas vous mentir, j’utilise toujours des LLMs pour coder l’appli, mais mon usage est très différent de la première version. Clairement, je ne qualifierais pas Partage d’une appli vibe-codée, mais en terme de lignes de codes je suis pas le plus productif.
Merci d’avoir lu jusqu’ici ! J’espère que vous avez apprécié ce petit tour historique de mon experience pour la création de cette appli. N’hésitez pas à partager et surtout à me faire des retours si vous essayez !
Pour la question vibe code, c’est sur que pour tester un proto ou une idée c’est super pratique. Mais personellement, j’ai pas encore trouvé de cas où ca peut marcher jusqu’au bout. Ou en tout cas pour des projets un peu long terme. Mais bon c’est mon sentiment d’aujourd’hui. Je m’en sers surtout comme un canard en plastique pour discuter d’une approche ou d’une autre. Ensuite je supervise sur l’approche que j’ai choisie.
Pour la question a propos des couples, en général, ce que je préconise c’est juste de mettre le nom de chacun. Tout le monde est pas obligé d’utiliser l’appli. Si Martin et Martine sont dans le groupe, tu mets leurs 2 noms, mais en pratique il n’y aura que Martin qui va regarder. À la fin, s’il reste un écart entre eux deux, ils s’arrangent entre eux et marquent le transfert comme payé dans l’app. J’ai compris ta question ou pas du tout ?
Salut, oui la feuille de classeur c’est l’option universelle ahah, ou même la feuille de papier, mais on va dire que c’est pas le plus pratique ^
est ce qu'il y'a moyen d'avoir des partie de dépense pour une partie du groupe
Tout à fait ! Pour chaque dépense, tu peux choisir qui participe dans le groupe, et à quelle proportions. Tu peux faire simple avec des parts (une part pour moi, 2 pour Jean) ou avec des montants exacts si tu veux être précis.
[^] # Re: Petites questions
Posté par mattpiz . En réponse au journal J'ai vibe-codé une appli pendant un mois, puis j'ai tout jeté. Évalué à 0 (+0/-0).
Possible, parmi mes copains en tout cas, les deux sont assez liés, mais oui c’est pas une règle universelle.
En ce qui me concerne, les notions de protection de la vie privée sont assez liés à mes intérêts dans le libre. Je veux dire, je vais éviter un logiciel libre s’il amasse mes données. D’ailleurs les règles aux US qui veulent rendre obligatoire l’identification des gens qui utilisent un OS, c’est complètement fucked up. Bientôt on va devoir justifier d’avoir +18 ans pour utiliser un grille pain parce que ya du linux dedans ?
Bref, je pars en hors sujet.
[^] # Re: :)
Posté par mattpiz . En réponse au journal J'ai vibe-codé une appli pendant un mois, puis j'ai tout jeté. Évalué à 0 (+0/-0). Dernière modification le 11 septembre 2026 à 13:47.
ok ok, non c’est bien moi
[^] # Re: Petites questions
Posté par mattpiz . En réponse au journal J'ai vibe-codé une appli pendant un mois, puis j'ai tout jeté. Évalué à 4 (+4/-0).
Salut, je comprends tout à fait. Pour répondre aux questions:
Pour linuxfr, je connais depuis que j’ai passé 2 ans à Caen dans l’équipe de David au GREYC. En gros depuis la mon école d’ingé je suis assez passioné de logiciel libre. Je suis pas lecteur régulier du journal, mais j’aime bien les articles en général.
J’ai posté ici parce que je pense sincérement que c’est le genre d’appli qui plait à ce public. 100% libre, chiffré de bout en bout, pratique, en Français, etc.
Pourquoi pas avant, tout simplement parce que j’ai jamais ressenti le besoin de m’inscrire pour lire de temps en temps une dépêche.
[^] # Re: Journal LLM ?
Posté par mattpiz . En réponse au journal J'ai vibe-codé une appli pendant un mois, puis j'ai tout jeté. Évalué à 3 (+4/-1).
Sommaire
J’ai fait 4 passes dessus. La première complètement 100% écrite à la main. Après j’ai demandé des retours à un LLM, et j’ai récris 4 fois le texte. Je peux mettre la toute première version en dessous si tu veux.
Cher journal,
Ça fait 9 mois, on arrive à terme, enfin ! C’était pas prévu initialement, mais comme je suis assez fier d’elle, et convaincu qu’elle pourra vous aider dans future, je vais vous raconter comment elle a été créée. Tout a commencé la semaine du nouvel an. On était plutôt nombreux, une bonne dizaine, et vous imaginez qu’à autant, la coordination peut être compliquée ! Alors pour simplifier, en général c’est chacun(e) son tour. Mais comme ça a duré toute une semaine, on finit par oublier qui a déjà pris, cher ou pas. Dans cette situation, le plus pratique c’est d’utiliser une appli. On enregistre la participation de chacun(e), afin de s’en souvenir plus tard. On peut même ajouter des émojis dans les descriptions. Par exemple, je m’occupe des 🍑 aujourd’hui, et hier, c’est Alice qui a géré les 🍆. Bref vous voyez quoi. Au final, il y a quand même un gros problème avec cette appli. On a zero control sur nos données. Et perso, j’ai pas envie qu’après une faille de données, tout le monde ait accès à mes enregistrements. Donc à la fin de cette semaine, je me suis lancé, avec l’objectif de créer la meilleure appli de partage de frais entre amis. Elle s’appelle "Partage", et j’espère qu’elle va vous plaire !
Les bons comptes font les bons amis
Une petite intro vite fait pour poser les bases. Votre groupe de copains part quelques jours en vacances. Pierre s’occupe de louer la maison, on prend les voitures de Camille et de Marie pour le trajet, Thomas s’occupe de faire les courses, et Jean son truc c’est de payer les tournées au bar. Chacun rentre ses dépenses, qui était concerné par celles-ci, et à la fin du séjour, l’appli fait le bilan. Elle propose un plan de remboursement optimisé pour minimiser le nombre de virements à faire entre les membres du groupe. Le but étant de partager le coût des vacances équitablement.
Le diable se trouve dans les détails
Le principe de l’app est facile à comprendre, mais en pratique, il y a pas mal d’obstacles si on veut bien faire. L’appli la plus connue en France c’est Tricount, mais certains détails on finit par me pousser à créer Partage. Surtout, c’est une appli propriétaire (non-libre), non chiffrée. Ensuite il y a quelques autres irritations, voir agacements. Par example, il n’y a pas d’historique d’activité. Si un membre du groupe modifie une dépense, impossible de s’en rendre compte, sauf à être ultra attentif. Il n’y a pas non plus de filtres. Si je veux voir uniquement les dépenses qui me concernent, ou Martine, pas possible. Il n’est pas non plus possible d’ouvrir un groupe directement sur mon ordinateur, je dois installer l’appli mobile. Et plein d’autres détails qui fâchent. Je vais m’arrêter là parce que la liste serait très longue.
Partage, la génèse
Comme tout programmeur qui se respecte, je me suis initialement dit qu’en 2/3 semaines ça serait plié. En plus c’était l’occasion idéale pour enfin tester cette nouvelle technique à la pointe, le vibe coding . J’ai donc commencé par une grosse séance de psy avec Claude, pour en sortir une spec super détaillée de mon appli parfaite. Et le 4 janvier, le tout premier commit est envoyé dans le nuage avec ce fichier
DESIGN.mdcouvrant la vision, l’architecture, la tech, les fonctionalités, etc. Tout y est, ou du moins, tout ce à quoi j’avais pensé.Les premiers jours ça avance très vite ! Je me suis fait un plan d’implémentation sans faille (que je croyais). Claude finit chaque phase du plan plus ou moins en autonomie. J’interviens de temps en temps. Je lance l’appli pour tester localement. Je jette un oeil au code ici et là. Mais comme un des objectifs était de tester le vibe coding, je restraint mes interventions au strict minimum.
Quelques jours plus tard, on va même tester l’appli avec un groupe de copains sur un weekend, et elle fonctionne plutôt bien !
La désillusion
Le gros problème du vibe coding (sans parler des aspects éthiques), c’est la dette technique. Cette illusion que le modèle est à la fois un codeur parfait, et que tout problème rencontré sera facilement solutioné avec le prochain prompt. Sauf qu’encore aujourd’hui, ça n’est pas le cas. Même si l’application produite était super impressionante au bout de quelques jours, c’est en testant les cas limites que je me suis rendu compte du problème à venir.
- Que se passe t’il si je supprime une dépense puis que je la réajoute ?
- Si je crée une dépense par un membre du groupe puis que je supprime ce membre ?
- Si un nouveau membre se trompe et prend la place d’un autre ?
- Si deux personnes modifient la même dépense hors ligne, puis se re-synchronisent en ligne ensemble ?
C’est à ce moment que je suis entré dans une spirale de chasse aux bugs, où corriger un bug en faisait apparaitre un nouveau ailleurs. Les bugs avec les membres, c’est une histoire sans fin, dont la seule solution est de mettre le nez dans le code. Et là c’est le désespoir. Pire qu’un collègue qui vous envoie une pull request de 3000 lignes à intégrer. C’est tout un projet, avec une codebase inconnue, dans laquelle il faut plonger, pour comprendre comment chaque partie est reliée.
J’ai tenu quasiment un mois, puis j’ai craqué. Le 30 janvier, j’ai signé le dernier commit dans ce dépot. Mais tout espoir n’est pas perdu. Un mois plus tard, fin février, je me décide finalement à redémarrer de zero !
[image meme big plans]
Reset, on remet une pièce
En tant que programmeur, il n’y a pas grand chose qui me frustre plus que d’utiliser une appli buggée. Donc on va poser des bases saines avec une archi solide. En ce qui me concerne, je suis assez fan des concepts de programmation fonctionnelle. Alors je vais pas en faire tout un pavé, mais en gros, avec des fonctions pures, des types immutables, des effets de bord repoussés au limites, et une modelisation des données avec des types algébriques, on est déjà en bonne companie !
Ensuite je modélise le domaine et le flux des données de manière adaptée, et tout coule de source. Pour les plus techniques d’entre vous, j’ai utilisé le language Elm, et le coeur de l’appli, se résume à cette fonction, qui est un "fold" de tous les événements du groupe (signés), triés de manière déterministe, pour faire évoluer l’état du groupe.
Tout est déterministe, donc facilement testable, et converge vers le même état, sur tous les appareils participant au groupe, sans avoir besoin d’un server central qui sert de vérité absolue.
Le serveur de l’appli est hyper minimaliste. C’est juste une base sqlite qui accumule et relaie les événements chiffrés qui arrivent des clients.
Je vais pas vous mentir, j’utilise toujours des LLMs pour coder l’appli, mais mon usage est très différent de la première version. Clairement, je ne qualifierais pas Partage d’une appli vibe-codée, mais en terme de lignes de codes je suis pas le plus productif.
[captures d’écrans de l’appli Partage]
Pour aller plus loin
Pour les plus curieux, quelques infos supplémentaires:
- Pas besoin de compte pour utiliser Partage
- Tout est chiffré de bout en bout pour les membres du groupe
- Le client et le serveur sont libres, en MPL-2.0 pour le client, et le serveur en Apache-2.0
Le mot de la fin
Merci d’avoir lu jusqu’ici ! J’espère que vous avez apprécié ce petit tour historique de mon experience pour la création de cette appli. N’hésitez pas à partager et surtout à me faire des retours si vous essayez !
[^] # Re: :)
Posté par mattpiz . En réponse au journal J'ai vibe-codé une appli pendant un mois, puis j'ai tout jeté. Évalué à 1 (+1/-0).
Pour la question vibe code, c’est sur que pour tester un proto ou une idée c’est super pratique. Mais personellement, j’ai pas encore trouvé de cas où ca peut marcher jusqu’au bout. Ou en tout cas pour des projets un peu long terme. Mais bon c’est mon sentiment d’aujourd’hui. Je m’en sers surtout comme un canard en plastique pour discuter d’une approche ou d’une autre. Ensuite je supervise sur l’approche que j’ai choisie.
[^] # Re: :)
Posté par mattpiz . En réponse au journal J'ai vibe-codé une appli pendant un mois, puis j'ai tout jeté. Évalué à 3 (+3/-0).
Pour la question a propos des couples, en général, ce que je préconise c’est juste de mettre le nom de chacun. Tout le monde est pas obligé d’utiliser l’appli. Si Martin et Martine sont dans le groupe, tu mets leurs 2 noms, mais en pratique il n’y aura que Martin qui va regarder. À la fin, s’il reste un écart entre eux deux, ils s’arrangent entre eux et marquent le transfert comme payé dans l’app. J’ai compris ta question ou pas du tout ?
[^] # Re: :)
Posté par mattpiz . En réponse au journal J'ai vibe-codé une appli pendant un mois, puis j'ai tout jeté. Évalué à 1 (+1/-0).
euh wat?
[^] # Re: Ne pas réinventer la roue ?
Posté par mattpiz . En réponse au journal J'ai vibe-codé une appli pendant un mois, puis j'ai tout jeté. Évalué à 2 (+2/-0).
Ah nan, je connaissais pas. Ça a l’air plutot récent, merci du partage :)
[^] # Re: :)
Posté par mattpiz . En réponse au journal J'ai vibe-codé une appli pendant un mois, puis j'ai tout jeté. Évalué à 2 (+2/-0). Dernière modification le 11 septembre 2026 à 11:20.
Salut, oui la feuille de classeur c’est l’option universelle ahah, ou même la feuille de papier, mais on va dire que c’est pas le plus pratique ^
Tout à fait ! Pour chaque dépense, tu peux choisir qui participe dans le groupe, et à quelle proportions. Tu peux faire simple avec des parts (une part pour moi, 2 pour Jean) ou avec des montants exacts si tu veux être précis.