Commit 0c89eb1b authored by Marien Fressinaud's avatar Marien Fressinaud

Add a page for Kunlabori

parent ff8d5363
---
title: null
template: kunlabori
---
<p>
Kunlabori, "coopérer" en Espéranto, est le nom d’un projet de partage de
mes processus de travail. Je l’avais initié sous forme d’un wiki dans
l’idée de permettre à tout le monde d’y contribuer, mais comme il s’agit de
mes propres méthodes cela n’aurait pas de sens car les améliorations
doivent répondre à des problèmes que je rencontre moi-même. Le contenu du
site en revanche est sous licence <a href="https://creativecommons.org/licenses/by/4.0/">CC BY 4.0</a>.
Les sources sont celles de mon site initial, <a href="https://framagit.org/marien.fressinaud/next.marienfressinaud.fr/">
disponibles sur Framagit</a>.
</p>
<p>
Bienvenue donc sur Kunlabori, j’espère que sa lecture vous sera utile.<br />
-- Marien
</p>
<h2>Budget</h2>
<p>
Ayant travaillé durant plusieurs années en tant que développeur, je n’ai
pas eu à trop me soucier de mes dépenses car disposant d’un salaire bien
supérieur à mes dépenses. Mon passage au chômage m’a forcé à être plus
vigilant. Si le montant de mes allocations reste confortable, j’ai décidé
de mieux surveiller mes dépenses. C’est une manière de ne pas dilapider mon
argent dans n’importe quoi.
</p>
<p>
Je parle bien ici d’un budget personnel. Je suis donc un peu moins
rigoureux que ce que je pourrais être pour un budget professionnel,
notamment au niveau de la catégorisation.
</p>
<h3>Outils</h3>
<p>
Pour ce faire, je dispose de deux outils :
</p>
<ul>
<li>Kresus qui me permet de récupérer les opérations monétaires depuis
plusieurs comptes bancaires et de les catégoriser ;</li>
<li>Un bête tableur créé avec LibreOffice pour projeter mes dépenses et
revenus sur l’année à venir, c’est-à-dire pour créer mon budget
prévisionnel.</li>
</ul>
<p>
Il n’existe pas d’instance public de Kresus à ma connaissance donc il est
soit nécessaire de l’héberger soi-même, soit de se faire héberger par une
âme charitable, soit de se passer de Kresus (ce qui est sans aucun doute
faisable, juste un peu plus pénible).
</p>
<p>
Concernant le tableur, vous pouvez <a href="budget_previsionnel.ods">
télécharger mon fichier d’exemple</a> (notez qu’il ne s’agit pas de
véritables valeurs). Je conseille toutefois de vous créer le vôtre propre,
ça facilite la prise en main.
</p>
<p>
Si je n’utilise pas Kresus pour gérer mon budget prévisionnel c’est qu’il
ne permet pas d’avoir une vue à l’année et que les jauges utilisées pour
visualiser l’avancement du budget ne me sont très claires à moins d’un
effort mental pour comprendre leur signification. Aussi un tableur est bien
plus flexible et me permet d’ajouter des informations supplémentaires.
</p>
<h3>Initialisation du tableur</h3>
<p>
Pour initialiser le fichier, j’ai procédé en plusieurs étapes :
</p>
<ol>
<li>j’ai précisé les dépenses mensuelles de base que je connaissais (loyer,
électricité, téléphone, etc.) ;</li>
<li>j’ai estimé une moyenne mensuelle pour les dépenses variables
(alimentation, déplacements, soirées, etc.) en me basant sur mes
dépenses des mois précédents ;</li>
<li>j’ai épluché mes dépenses pour retrouver les frais mensuels éparpillés
(abonnements, assurances, serveurs / noms de domaine, chèques faits aux
producteurs de mon <abbr title="Association pour le Maintien d’une Agriculture Paysane">
AMAP</abbr>) ;</li>
<li>j’ai ensuite estimé les frais supplémentaires, souvent occasionnels,
afin de compléter mes dépenses ;</li>
<li>j’ai finalement calculé un montant que je peux mettre de côté tous les
mois en prévision de futurs coups durs.</li>
</ol>
<h3>Bénéfices</h3>
<p>
Les bénéfices d’un tel tableur sont multiples :
</p>
<ul>
<li>je sais si mon train de vie est extravagant en comparaison de mes
revenus ;</li>
<li>j’ai une meilleure idée de où je peux faire des économies ;</li>
<li>je peux me fixer des limites plus ou moins flexibles ;</li>
<li>je vois venir les grosses dépenses sans être surpris (ex. les
assurances) et je peux donc mieux anticiper mes activités ;</li>
<li>je suis en mesure de savoir exactement quel est mon budget de base
(c’est-à-dire ce qu’il me faut pour payer nourriture et logement) ;</li>
<li>et sans doute un tas d’autres choses !</li>
</ul>
<h3>Mise à jour</h3>
<p>
Le tableur n’a d’utilité que s’il colle à la réalité, pour cela il est
nécessaire de le maintenir à jour le plus souvent possible. Pour cela, j’ai
pour habitude de me réserver une journée complète par semaine dédiée
exclusivement aux tâches administratives (en vérité, 10 minutes suffisent
largement pour le budget).
</p>
<p>
Pour mettre le document à jour je procède là encore en plusieurs étapes :
</p>
<ol>
<li>je récupère tous les tickets de caisse récoltés la semaine passée ;</li>
<li>je vérifie que leur montant apparait bien dans Kresus et les catégorise ;</li>
<li>je vérifie que les montants qui ne correspondent pas à des tickets de
caisse sont « légitimes » ;</li>
<li>j’ajoute les dépenses dans le tableur ;</li>
<li>je vérifie que je reste dans les clous de mon budget prévisionnel et
j’adapte mon comportement pour le reste du mois dans le cas
contraire ;</li>
<li>si je me rends compte que je vais passer dans le rouge, je me fais un
virement personnel depuis mon livret d’épargne.</li>
</ol>
<p>
Par ailleurs je précise que je fonctionne différemment en fonction des
revenus et des dépenses dont j’ai connaissance mais qui n’ont pas encore
été débitées ou créditées. S’il s’agit d’une dépense, je l’ajoute au
tableur car c’est une dépense prévue. S’il s’agit d’un revenu (à
l’exception notable du salaire), comme un remboursement par exemple, je ne
l’ajoute qu’une fois que l’opération apparaît sur mon compte car il existe
un risque que cet argent n’arrive jamais ; cela évite de prévoir des choses
sur du vent.
</p>
* {
box-sizing: border-box;
}
html,
body {
margin: 0;
padding: 0;
}
html {
font-family: arial;
font-size: 18px;
line-height: 1.4rem;
}
@media(min-width: 40rem) {
html {
font-size: 24px;
line-height: 1.5rem;
}
}
/* Section typographie */
h1, h2, h3 {
margin-top: 0;
margin-bottom: 0.5rem;
word-wrap: break-word;
}
h1 {
margin-bottom: 1.75rem;
}
h1 { font-size: 2rem; line-height: 2.5rem; }
h2 { font-size: 1.5rem; line-height: 2rem; }
h3 { font-size: 1rem; line-height: 1.5rem; }
* + h1,
* + h2,
* + h3 {
margin-top: 1.5rem;
}
p {
margin-top: 0;
margin-bottom: 1rem;
}
p:last-child {
margin-bottom: 0;
}
ul, ol, dl {
margin-top: 0;
margin-bottom: 1rem;
}
ul:last-child,
ol:last-child,
dl:last-child {
margin-bottom: 0;
}
p + ul,
p + ol,
p + dl,
p + table {
margin-top: -.5rem;
}
code {
padding: 0 .25rem;
background-color: #fafafa;
border: 1px solid #ddd;
border-radius: 3px;
}
pre {
margin-top: 0;
margin-bottom: 1rem;
padding: .5rem 1rem;
overflow: auto;
font-size: 0.9rem;
color: #fff;
background-color: #222;
border-radius: 3px;
}
pre code {
color: #fff;
background-color: transparent;
border: none;
}
.texte-secondaire {
color: #666;
}
/* Section conteneur */
.conteneur {
max-width: 50rem;
margin-left: auto;
margin-right: auto;
padding-left: 1rem;
padding-right: 1rem;
}
.conteneur-texte p,
.conteneur-texte ul,
.conteneur-texte ol,
.conteneur-texte h1,
.conteneur-texte h2,
.conteneur-texte h3 {
max-width: 30rem;
}
/* Section en-tête des pages */
.page > header {
padding-top: 1rem;
padding-bottom: 1rem;
}
.page > header .conteneur {
display: flex;
align-items: center;
}
.page > header .conteneur .separateur {
flex-grow: 1;
}
.page > header a.accueil {
font-size: 1.2rem;
text-decoration: none;
}
.page > header a.active {
color: initial;
}
/* Section principale des pages */
.page > main {
padding-bottom: 4rem;
}
/* Section liée au bouton "haut de page" */
.page #la-haut {
position: absolute;
top: 0;
right: 0;
height: 100vh;
width: 1px;
}
.page #la-haut button {
position: fixed;
bottom: 1rem;
left: 50%;
transform: translateX(-50%);
padding: .5rem 1rem;
opacity: 1;
visibility: visible;
transition: all 0.2s ease;
background-color: #ddd;
border: 2px solid #ccc;
border-radius: 2rem;
}
.page #la-haut button::before {
padding-right: .25rem;
content: "🎈";
}
.page #la-haut button:hover {
background-color: #eee;
}
.page #la-haut.entrecoupant button {
opacity: 0;
visibility: hidden;
}
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1.0" />
<link rel="stylesheet" href="{{ SITE_URL }}style/kunlabori.css">
{% if PAGE_TITLE %}
<title>{{ PAGE_TITLE }} — Kunlabori</title>
{% else %}
<title>Kunlabori</title>
{% endif %}
</head>
<body class="page">
<header>
<div class="conteneur">
<a class="accueil" href="{{ SITE_URL }}kunlabori/index.html">Kunlabori</a>
<span class="separateur"></span>
<a href="{{ SITE_URL }}index.html">Retour au site principal</a>
</div>
</header>
<main>
<div class="conteneur conteneur-texte">
{% if PAGE_TITLE %}
<h1>{{ PAGE_TITLE }}</h1>
{% else %}
<h1>Kunlabori</h1>
{% endif %}
{{ PAGE_CONTENT }}
</div>
</main>
<div id="la-haut" class="entrecoupant">
<button>Retourner là-haut</button>
</div>
<script src="{{ SITE_URL }}scripts/back-to-top.js"></script>
</body>
</html>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment