Aller au contenu principal

Comment je fais de la Beancount : huit ans d'argent dans Git et un point hebdomadaire de 20 minutes

Publié 5 minutes de lectureMike ThriftMike Thrift
Comment je fais de la Beancount : huit ans d'argent dans Git et un point hebdomadaire de 20 minutes

Maya a un enfant de quatre ans, un compost de jardin qu'elle qualifie d'« ambitieux », et une habitude d'épicerie dont elle ne veut pas parler avant la fin de cet article. Elle est ingénieure back-end depuis douze ans, et pendant les huit dernières années, chaque dollar gagné ou dépensé par son foyer vit dans un fichier en texte brut dans un dépôt Git.

Une photo spontanée d'une mère serrant son jeune enfant dans ses bras sur le canapé du salon, avec un carnet en papier, une tasse de café et une pile de reçus sur la table basse en bois

Avant cela, elle faisait comme la plupart des gens. Mint, depuis son premier emploi jusqu'au jour où le service a fermé. Puis six mois avec un tableur qui, selon ses mots, « est devenu un second travail avec de moins bons outils ». Un collègue a mentionné la comptabilité en texte brut, elle est tombée dans le terrier du lapin, et elle n'en est jamais vraiment ressortie. « J'ai lu la documentation Beancount un mardi soir et j'ai migré trois ans d'historique ce week-end-là. Mon compagnon a cru que j'avais été piratée, parce que j'étais devant l'ordinateur en souriant. »

Le rituel : 20 minutes, une fois par semaine, uniquement sur ordinateur

La règle de Maya est l'inverse de celle de la plupart des utilisateurs d'applications : les finances se font au bureau, pas sur le téléphone. Chaque dimanche après que le petit est couché, elle ouvre son grand livre dans Fava sur beancount.io et exécute la même boucle. Examiner les transactions de la semaine. Catégoriser ce que les importateurs ont laissé d'ambigu. Jeter un œil au graphique de la valeur nette. Fermer l'ordinateur portable.

« C'est la même raison pour laquelle j'aime l'intégration continue », dit-elle. « Petit, ennuyeux, répétitif. Vingt minutes et j'ai terminé, et je n'y pense jamais pendant la semaine. »

Le téléphone n'a qu'un rôle, cependant : la capture. À l'épicerie, elle photographie le reçu dans l'application mobile beancount.io avant même d'avoir quitté le parking. Le dimanche, il est dans la boîte de réception comme transaction de brouillon en attente de confirmation. « Le reçu allait autrefois dans une poche de veste et, finalement, à la poubelle. Maintenant, il va dans le grand livre. C'est tout l'astuce : capturer au moment de la dépense, juger une fois par semaine. »

Les assertions de solde sont des tests unitaires pour l'argent

Demandez-lui sa fonctionnalité préférée et elle n'hésite pas — mais ce n'est pas un graphique. Ce sont les assertions balance : une déclaration d'une ligne dans le fichier qui dit « à cette date, ce compte contenait exactement ce montant ». Si le grand livre et la banque ne sont jamais d'accord, le fichier refuse de passer bean-check.

« C'est un test qui échoue pour vos finances. Mon grand livre ne peut pas dériver silencieusement de la réalité. Les gens paient pour des applications qui rapprochent les comptes, et moi je l'obtiens d'un fichier texte qui ne compile pas. »

Sa fonctionnalité la plus sous-estimée est les documents — joindre le PDF du reçu ou une photo directement à une transaction. « À la saison des impôts, ma comptable a demandé où étaient mes relevés. Je lui ai envoyé un bundle Git. Elle a cru que c'était une blague. Puis elle a ouvert la balance de vérification et a arrêté de rire. »

La requête de la garderie

Le moment où le système a vraiment justifié son existence a été une requête BQL. La garderie de son enfant de quatre ans semblait chère, mais les sentiments ne sont pas des chiffres, alors elle a exécuté une ligne — total par mois, groupé, fenêtre de douze mois — sur la page de requêtes de Fava.

« Je n'avais pas besoin d'un logiciel pour me dire que la garderie coûte cher. Mais voir la ligne monter vers la droite pendant un an d'affilée est ce qui nous a finalement fait comparer. Nous sommes passés à un endroit que nous aimons davantage, vingt minutes plus près, et la différence couvre notre facture d'épicerie. Une seule requête. C'est tout le retour sur investissement de huit ans de comptabilité, si vous comptez les points. Ce que je fais, évidemment. »

Elle utilise aussi la même astuce pour les abonnements une fois par trimestre : une requête, une liste, dix minutes de résiliations. « Ce sont toujours les services de streaming. C'est comme s'ils se multipliaient. »

Mais aussi : le café

Les ingénieurs ont aussi des catégories de dépenses somptuaires. Si son grand livre la taquinait, admet-elle, la boutade serait Expenses:Food:Coffee. « Il y a eu une V60. Puis une balance. Puis une bouilloire Fellow. Puis un moulin qui a coûté plus cher que mon premier écran. » Elle sait exactement ce que tout cela a coûté, bien sûr — elle peut git log l'ère du versage et voir les commits devenir plus fréquents.

C'est ce que les gens ne comprennent pas à propos du suivi de l'argent en texte brut, dit-elle. Il ne s'agit pas de restriction. « Ce n'est pas un régime. C'est un miroir. Je regarde la ligne du café et je ne ressens aucune culpabilité, parce que j'ai choisi le moulin. Le grand livre s'assure simplement que je choisis les yeux ouverts. »

Huit ans plus tard, le dépôt est le projet le plus long qu'elle ait jamais maintenu. « Tout le reste que j'ai écrit au travail a été réécrit ou supprimé. Ce fichier continue simplement de compiler. »

Vous voulez votre propre rituel du dimanche ? Inscrivez-vous à beancount.io, importez votre premier relevé avec Smart Import, et laissez le grand livre faire la mémoire.

Partager cet article