professional ambiguity tech/calc anticipation for upcoming q's
Published on April 2, 2026 by Matthias Evering (@ewingson)

Dear friends.

we'll split this update into 'technical' and 'financial':

techie-speak first
we have three servers running (although not 100% interoperable with solidcommunity.net).
NSS CSS and Pivot soon will get a younger brother, namely JSS on https://solidweb.app

architecture is in the hackmd archive, but JSS still is experimental.
this will take some time, maybe we'll have summer meanwhile before fully deployed.

numbers
we all know capitalism is an error.
but we have to play by their rules.
or invent a new game.
I'll include my calculation.
everything going through my hands is included - from bus over welfare to beer and pasta.
it is based on data from 2017 to 2025.
both most noteable fields are smoke and rent.
we will not reach the break-even-point within 2026.
I am a complete newbie to this (german) Betriebswirtschaft.

maybe we have to think things over again. and now the html table element.
<table> <thead> <tr class="hdr-main"> <th class="lft" style="width:160px">Kategorie</th> <th style="width:40px">Typ</th> <th style="width:90px">Q1 2026<br>Ist (€)</th> <th style="width:90px">Q2<br>Apr–Jun (€)</th> <th style="width:90px">Q3<br>Jul–Sep (€)</th> <th style="width:90px">Q4<br>Okt–Dez (€)</th> <th style="width:100px">Jahres-<br>summe (€)</th> <th style="width:80px">Basis<br>€/Monat</th> <th style="width:80px">Hist. ∅<br>€/Monat</th> <th style="width:60px">YoY<br>vs 2025</th> <th class="lft">Anmerkung</th> </tr> </thead> <tbody> <!-- ═══ AUSGABEN ═══════════════════════════════════════════════════ --> <tr class="sec-a"><td colspan="11">▼&nbsp; AUSGABEN (A –) &nbsp;—&nbsp; FIX · VARIABEL · NEUTRAL</td></tr> <!-- FIX --> <tr class="fix-a"> <td class="lft">Miete</td><td class="ctr"><span class="badge-fix">FIX</span></td> <td class="num neg">−1.042,50 €</td><td class="num neg">−1.042,50 €</td><td class="num neg">−1.042,50 €</td><td class="num neg">−1.042,50 €</td> <td class="num neg">−4.170,00 €</td><td class="num">−347,50 €</td><td class="num">−329,07 €</td> <td class="ctr yoy-neg">−7,0 %</td><td class="anm">347,50 €/M fix</td> </tr> <tr class="fix-a"> <td class="lft">Strom</td><td class="ctr"><span class="badge-fix">FIX</span></td> <td class="num neg">−90,00 €</td><td class="num neg">−120,00 €</td><td class="num neg">−120,00 €</td><td class="num neg">−120,00 €</td> <td class="num neg">−450,00 €</td><td class="num">−40,00 €</td><td class="num">−44,82 €</td> <td class="ctr yoy-neg">−12,5 %</td><td class="anm">40 €/M fix</td> </tr> <tr class="fix-a"> <td class="lft">Smoke</td><td class="ctr"><span class="badge-fix">FIX</span></td> <td class="num">0,00 €</td><td class="num neg">−840,00 €</td><td class="num neg">−840,00 €</td><td class="num neg">−840,00 €</td> <td class="num neg">−2.520,00 €</td><td class="num">−280,00 €</td><td class="num">−196,36 €</td> <td class="ctr yoy-neg">−289,1 %</td><td class="anm">280 €/M fix · Q1=0</td> </tr> <tr class="fix-a"> <td class="lft">Flatrate</td><td class="ctr"><span class="badge-fix">FIX</span></td> <td class="num neg">−127,09 €</td><td class="num neg">−120,58 €</td><td class="num neg">−120,58 €</td><td class="num neg">−120,58 €</td> <td class="num neg">−488,84 €</td><td class="num">−40,19 €</td><td class="num">−36,94 €</td> <td class="ctr yoy-pos">+12,5 %</td><td class="anm">Fixkosten</td> </tr> <tr class="fix-a"> <td class="lft">Kontoführung</td><td class="ctr"><span class="badge-fix">FIX</span></td> <td class="num neg">−44,42 €</td><td class="num neg">−42,23 €</td><td class="num neg">−42,23 €</td><td class="num neg">−42,23 €</td> <td class="num neg">−171,10 €</td><td class="num">−14,08 €</td><td class="num">−12,98 €</td> <td class="ctr yoy-neg">−3,0 %</td><td class="anm">Fixkosten</td> </tr> <tr class="fix-a"> <td class="lft">Mobilfunk</td><td class="ctr"><span class="badge-fix">FIX</span></td> <td class="num neg">−45,00 €</td><td class="num neg">−45,00 €</td><td class="num neg">−45,00 €</td><td class="num neg">−45,00 €</td> <td class="num neg">−180,00 €</td><td class="num">−15,00 €</td><td class="num">−12,47 €</td> <td class="ctr yoy-neg">−24,1 %</td><td class="anm">15 €/M fix</td> </tr> <tr class="fix-a"> <td class="lft">Fahrgeld fix</td><td class="ctr"><span class="badge-fix">FIX</span></td> <td class="num neg">−65,60 €</td><td class="num neg">−98,40 €</td><td class="num neg">−98,40 €</td><td class="num neg">−98,40 €</td> <td class="num neg">−360,80 €</td><td class="num">−32,80 €</td><td class="num">−4,08 €</td> <td class="ctr">—</td><td class="anm">32,80 €/M fix</td> </tr> <tr class="fix-a"> <td class="lft">Versicherung</td><td class="ctr"><span class="badge-fix">FIX</span></td> <td class="num neg">−41,88 €</td><td class="num neg">−37,00 €</td><td class="num neg">−37,00 €</td><td class="num neg">−37,00 €</td> <td class="num neg">−152,87 €</td><td class="num">−12,33 €</td><td class="num">−9,89 €</td> <td class="ctr yoy-neg">−21,7 %</td><td class="anm">Fixkosten</td> </tr> <tr class="fix-a"> <td class="lft">Kaffee home</td><td class="ctr"><span class="badge-fix">FIX</span></td> <td class="num neg">−19,00 €</td><td class="num neg">−21,00 €</td><td class="num neg">−21,00 €</td><td class="num neg">−21,00 €</td> <td class="num neg">−82,00 €</td><td class="num">−7,00 €</td><td class="num">−2,77 €</td> <td class="ctr yoy-neg">−182,8 %</td><td class="anm">7 €/M fix</td> </tr> <!-- VAR --> <tr class="var-a"> <td class="lft">Raten</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num neg">−961,11 €</td><td class="num neg">−366,67 €</td><td class="num neg">−366,67 €</td><td class="num neg">−366,67 €</td> <td class="num neg">−2.061,11 €</td><td class="num">−122,22 €</td><td class="num">−73,78 €</td> <td class="ctr yoy-pos">+32,5 %</td><td class="anm">Rest 1.100 € ÷ 9 M = 122,22 €/M</td> </tr> <tr class="var-a2"> <td class="lft">Food</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num neg">−533,43 €</td><td class="num neg">−507,82 €</td><td class="num neg">−507,82 €</td><td class="num neg">−507,82 €</td> <td class="num neg">−2.056,90 €</td><td class="num">−169,27 €</td><td class="num">−156,47 €</td> <td class="ctr yoy-pos">+13,6 %</td><td class="anm">60% Q1 + 40% Hist.</td> </tr> <tr class="var-a"> <td class="lft">Provider</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num neg">−270,56 €</td><td class="num neg">−219,81 €</td><td class="num neg">−219,81 €</td><td class="num neg">−219,81 €</td> <td class="num neg">−929,99 €</td><td class="num">−73,27 €</td><td class="num">−47,89 €</td> <td class="ctr yoy-pos">+14,0 %</td><td class="anm">60% Q1 + 40% Hist.</td> </tr> <tr class="var-a2"> <td class="lft">Bier</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num neg">−145,21 €</td><td class="num neg">−134,88 €</td><td class="num neg">−134,88 €</td><td class="num neg">−134,88 €</td> <td class="num neg">−549,86 €</td><td class="num">−44,96 €</td><td class="num">−39,80 €</td> <td class="ctr yoy-pos">+4,9 %</td><td class="anm">60% Q1 + 40% Hist.</td> </tr> <tr class="var-a"> <td class="lft">Nonsense</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num neg">−87,40 €</td><td class="num neg">−91,28 €</td><td class="num neg">−91,28 €</td><td class="num neg">−91,28 €</td> <td class="num neg">−361,24 €</td><td class="num">−30,43 €</td><td class="num">−32,37 €</td> <td class="ctr yoy-pos">+3,2 %</td><td class="anm">60% Q1 + 40% Hist.</td> </tr> <tr class="var-a2"> <td class="lft">Essentials</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num neg">−81,12 €</td><td class="num neg">−86,22 €</td><td class="num neg">−86,22 €</td><td class="num neg">−86,22 €</td> <td class="num neg">−339,78 €</td><td class="num">−28,74 €</td><td class="num">−31,29 €</td> <td class="ctr yoy-neg">−60,6 %</td><td class="anm">60% Q1 + 40% Hist.</td> </tr> <tr class="var-a"> <td class="lft">Technik</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num neg">−82,84 €</td><td class="num neg">−79,78 €</td><td class="num neg">−79,78 €</td><td class="num neg">−79,78 €</td> <td class="num neg">−322,18 €</td><td class="num">−26,59 €</td><td class="num">−25,06 €</td> <td class="ctr yoy-neg">−29,4 %</td><td class="anm">60% Q1 + 40% Hist.</td> </tr> <tr class="var-a2"> <td class="lft">Fortbildungen</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num neg">−84,90 €</td><td class="num neg">−61,97 €</td><td class="num neg">−61,97 €</td><td class="num neg">−61,97 €</td> <td class="num neg">−270,81 €</td><td class="num">−20,66 €</td><td class="num">−9,19 €</td> <td class="ctr yoy-neg">−64,1 %</td><td class="anm">60% Q1 + 40% Hist.</td> </tr> <tr class="var-a"> <td class="lft">Fachliteratur</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num neg">−75,98 €</td><td class="num neg">−53,10 €</td><td class="num neg">−53,10 €</td><td class="num neg">−53,10 €</td> <td class="num neg">−235,28 €</td><td class="num">−17,70 €</td><td class="num">−6,26 €</td> <td class="ctr yoy-neg">−92,1 %</td><td class="anm">60% Q1 + 40% Hist.</td> </tr> <tr class="var-a2"> <td class="lft">Bekl/UW/Schuhe</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num neg">−98,90 €</td><td class="num neg">−70,20 €</td><td class="num neg">−70,20 €</td><td class="num neg">−70,20 €</td> <td class="num neg">−309,50 €</td><td class="num">−23,40 €</td><td class="num">−9,05 €</td> <td class="ctr yoy-neg">−189,4 %</td><td class="anm">60% Q1 + 40% Hist.</td> </tr> <tr class="var-a"> <td class="lft">Spenden</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num neg">−18,53 €</td><td class="num neg">−21,94 €</td><td class="num neg">−21,94 €</td><td class="num neg">−21,94 €</td> <td class="num neg">−84,34 €</td><td class="num">−7,31 €</td><td class="num">−9,02 €</td> <td class="ctr yoy-neg">−36,9 %</td><td class="anm">60% Q1 + 40% Hist.</td> </tr> <tr class="var-a2"> <td class="lft">Kaffee work</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num neg">−19,50 €</td><td class="num neg">−13,39 €</td><td class="num neg">−13,39 €</td><td class="num neg">−13,39 €</td> <td class="num neg">−59,68 €</td><td class="num">−4,46 €</td><td class="num">−1,41 €</td> <td class="ctr yoy-neg">−98,9 %</td><td class="anm">60% Q1 + 40% Hist.</td> </tr> <!-- NONE --> <tr class="none-a"> <td class="lft">Abhebung Bank</td><td class="ctr"><span class="badge-none">—</span></td> <td class="num" style="color:#555">−125,00 €</td><td class="num" style="color:#555">0,00 €</td><td class="num" style="color:#555">0,00 €</td><td class="num" style="color:#555">0,00 €</td> <td class="num" style="color:#555">−125,00 €</td><td class="num" style="color:#555">−63,75 €</td><td class="num" style="color:#555">−96,87 €</td> <td class="ctr">+87,3 %</td><td class="anm">Neutral · Q2–Q4=0</td> </tr> <tr class="none-a"> <td class="lft">Umbuchung</td><td class="ctr"><span class="badge-none">—</span></td> <td class="num" style="color:#555">−640,78 €</td><td class="num" style="color:#555">0,00 €</td><td class="num" style="color:#555">0,00 €</td><td class="num" style="color:#555">0,00 €</td> <td class="num" style="color:#555">−640,78 €</td><td class="num" style="color:#555">−172,63 €</td><td class="num" style="color:#555">−111,19 €</td> <td class="ctr">+62,4 %</td><td class="anm">Neutral · Q2–Q4=0</td> </tr> <tr class="none-a"> <td class="lft">Meisdata</td><td class="ctr"><span class="badge-none">—</span></td> <td class="num" style="color:#555">−82,88 €</td><td class="num" style="color:#555">0,00 €</td><td class="num" style="color:#555">0,00 €</td><td class="num" style="color:#555">0,00 €</td> <td class="num" style="color:#555">−82,88 €</td><td class="num" style="color:#555">−22,25 €</td><td class="num" style="color:#555">−14,18 €</td> <td class="ctr">+58,1 %</td><td class="anm">Neutral · Q2–Q4=0</td> </tr> <!-- Backup --> <tr class="backup"> <td class="lft" style="font-weight:bold;color:#7B5600">Backup (Sparanteil)</td> <td class="ctr"><span class="badge-fix">FIX</span></td> <td class="num pos">0,00 €</td><td class="num pos">+30,00 €</td><td class="num pos">+30,00 €</td><td class="num pos">+30,00 €</td> <td class="num pos">+90,00 €</td><td class="num">+10,00 €</td><td class="num">+10,00 €</td> <td class="ctr">—</td><td class="anm">fix 10 €/M · Sparrücklage</td> </tr> <!-- Total Ausgaben --> <tr class="total-a"> <td class="lft" colspan="2">TOTAL AUSGABEN</td> <td class="num">−4.783,63 €</td><td class="num">−4.073,77 €</td><td class="num">−4.073,77 €</td><td class="num">−4.073,77 €</td> <td class="num">−17.004,94 €</td><td></td><td></td><td></td><td></td> </tr> <!-- ═══ EINNAHMEN ══════════════════════════════════════════════════ --> <tr class="sec-e"><td colspan="11">▼&nbsp; EINNAHMEN (E –) &nbsp;—&nbsp; FIX · VARIABEL · NEUTRAL</td></tr> <tr class="fix-e"> <td class="lft">Sozialamt</td><td class="ctr"><span class="badge-fix">FIX</span></td> <td class="num pos">+1.908,41 €</td><td class="num pos">+1.815,59 €</td><td class="num pos">+1.815,59 €</td><td class="num pos">+1.815,59 €</td> <td class="num pos">+7.355,18 €</td><td class="num">+605,20 €</td><td class="num">+558,79 €</td> <td class="ctr yoy-neg">−1,8 %</td><td class="anm">Fixkosten</td> </tr> <tr class="fix-e"> <td class="lft">Rente</td><td class="ctr"><span class="badge-fix">FIX</span></td> <td class="num pos">+1.060,25 €</td><td class="num pos">+981,20 €</td><td class="num pos">+981,20 €</td><td class="num pos">+981,20 €</td> <td class="num pos">+4.003,84 €</td><td class="num">+327,07 €</td><td class="num">+287,54 €</td> <td class="ctr yoy-neg">−2,9 %</td><td class="anm">Fixkosten</td> </tr> <tr class="var-e"> <td class="lft">Lohn</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num pos">+313,74 €</td><td class="num pos">+323,98 €</td><td class="num pos">+323,98 €</td><td class="num pos">+323,98 €</td> <td class="num pos">+1.285,67 €</td><td class="num">+107,99 €</td><td class="num">+113,11 €</td> <td class="ctr yoy-neg">−3,8 %</td><td class="anm">60% Q1 + 40% Hist.</td> </tr> <tr class="var-e2"> <td class="lft">Privat</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num pos">+294,00 €</td><td class="num pos">+297,11 €</td><td class="num pos">+297,11 €</td><td class="num pos">+297,11 €</td> <td class="num pos">+1.185,34 €</td><td class="num">+99,04 €</td><td class="num">+100,59 €</td> <td class="ctr yoy-neg">−14,1 %</td><td class="anm">60% Q1 + 40% Hist.</td> </tr> <tr class="var-e"> <td class="lft">Reimbursement</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num pos">+72,02 €</td><td class="num pos">+72,16 €</td><td class="num pos">+72,16 €</td><td class="num pos">+72,16 €</td> <td class="num pos">+288,51 €</td><td class="num">+24,05 €</td><td class="num">+24,13 €</td> <td class="ctr yoy-pos">+46,0 %</td><td class="anm">60% Q1 + 40% Hist.</td> </tr> <tr class="var-e2"> <td class="lft">Spende teamid</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num pos">+71,71 €</td><td class="num pos">+62,07 €</td><td class="num pos">+62,07 €</td><td class="num pos">+62,07 €</td> <td class="num pos">+257,91 €</td><td class="num">+20,69 €</td><td class="num">+15,87 €</td> <td class="ctr yoy-pos">+35,5 %</td><td class="anm">60% Q1 + 40% Hist.</td> </tr> <tr class="var-e"> <td class="lft">Sonstiges</td><td class="ctr"><span class="badge-var">VAR</span></td> <td class="num pos">+29,12 €</td><td class="num pos">+76,23 €</td><td class="num pos">+76,23 €</td><td class="num pos">+76,23 €</td> <td class="num pos">+257,82 €</td><td class="num">+25,41 €</td><td class="num">+48,97 €</td> <td class="ctr yoy-neg">−47,6 %</td><td class="anm">60% Q1 + 40% Hist.</td> </tr> <tr class="none-e"> <td class="lft">Einzahlung Kasse</td><td class="ctr"><span class="badge-none">—</span></td> <td class="num" style="color:#555">+125,00 €</td><td class="num" style="color:#555">0,00 €</td><td class="num" style="color:#555">0,00 €</td><td class="num" style="color:#555">0,00 €</td> <td class="num" style="color:#555">+125,00 €</td><td class="num" style="color:#555">+63,29 €</td><td class="num" style="color:#555">+95,72 €</td> <td class="ctr">−87,4 %</td><td class="anm">Neutral · Q2–Q4=0</td> </tr> <tr class="none-e"> <td class="lft">Umbuchung</td><td class="ctr"><span class="badge-none">—</span></td> <td class="num" style="color:#555">+640,78 €</td><td class="num" style="color:#555">0,00 €</td><td class="num" style="color:#555">0,00 €</td><td class="num" style="color:#555">0,00 €</td> <td class="num" style="color:#555">+640,78 €</td><td class="num" style="color:#555">+172,77 €</td><td class="num" style="color:#555">+111,52 €</td> <td class="ctr">−62,8 %</td><td class="anm">Neutral · Q2–Q4=0</td> </tr> <!-- Total Einnahmen --> <tr class="total-e"> <td class="lft" colspan="2">TOTAL EINNAHMEN</td> <td class="num">+4.515,03 €</td><td class="num">+3.628,34 €</td><td class="num">+3.628,34 €</td><td class="num">+3.628,34 €</td> <td class="num">+15.400,05 €</td><td></td><td></td><td></td><td></td> </tr> <!-- ═══ BILANZ ═══════════════════════════════════════════════════ --> <tr class="sec-bl"><td colspan="11">▼&nbsp; BILANZ</td></tr> <tr class="bilanz"> <td class="lft" colspan="2">Ergebnis je Quartal</td> <td class="num b-neg">−268,60 €</td> <td class="num b-neg">−445,43 €</td> <td class="num b-neg">−445,43 €</td> <td class="num b-neg">−445,43 €</td> <td class="num b-neg">−1.604,89 €</td> <td></td><td></td><td></td><td></td> </tr> <tr class="bilanz"> <td class="lft" colspan="2">Anfangsbestand 01.01.2026</td> <td class="num b-pos">+952,05 €</td> <td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td> </tr> <tr class="bilanz"> <td class="lft" colspan="2">Endbestand 31.12.2026 (Prognose)</td> <td></td><td></td><td></td><td></td> <td class="num b-neg" style="font-size:13px">−652,84 €</td> <td></td><td></td><td></td><td></td> </tr> <!-- Warning --> <tr class="warn"> <td colspan="11"> ⚠&nbsp; Endbestand negativ: −652,84 €&nbsp;&nbsp;|&nbsp;&nbsp; Haupttreiber: Smoke Q2–Q4 (−2.520 €) + Raten-Rest (−1.100 €) </td> </tr> </tbody> </table>
source: https://serverproject.de/files/q2_q4.html
2 things (jss setup and Q2-Q4 preview) done with the help of claude.
take with a grain of salt and take care, Alain, Yvo, Michiel and Matthias