Vensters hoorden eigenlijk niet te overlappen. Althans, dat was de oorspronkelijke gedachte.

Toen men in de jaren zeventig nadacht over hoe een scherm aan meerdere dingen tegelijk ruimte kon geven, stelde niemand zich een chaos van overlappende rechthoeken voor. Men dacht aan partities. Aan oppervlakken die zich verdelen zodra iets nieuws toekomt — zoals tafels waarop boeken naast elkaar liggen, niet op elkaar gestapeld. De eerste venstersystemen op de Lisp Machines van Symbolics, in het Andrew-project van Carnegie Mellon University, zelfs Microsoft Windows 1.0 uit 1985: allemaal tiling-gebaseerd. Overlappende vensters golden als optie, niet als standaard.

Toen won overlapping. Apple maakte het populair met de Macintosh, Microsoft volgde, X11 op Unix sloot aan. De reden was niet dat overlapping beter werkte — hij leek alleen intuïtiever. Vensters afhandelen als papieren op een bureau, de bovenste naar voren halen, andere verbergen. De metafoor was tastbaar. De efficiëntie niet. Wie iets verborgens wilde zien moest het eerst naar voren halen. Wie meerdere dingen tegelijk wilde overzien moest ze met de hand rangschikken. De prijs van de metafoor was voortdurend handwerk — een prijs die niemand meer ter discussie stelde, omdat er geen alternatief leek te bestaan.

Vandaag draait wie een Linux-desktop gebruikt doorgaans tussen twee grote werkomgevingen: GNOME en KDE Plasma. Beide zijn uitstekend. Beide zijn floating. Beide organiseren vensters volgens het paradigma dat in 1984 populair werd. En bijna niemand vraagt of dat paradigma klopt.

Wat tiling werkelijk is

Tiling window managers rangschikken vensters niet overlappend maar betegelend. Elk nieuw venster krijgt een rechthoekig deel van het scherm; bestaande vensters krimpen om plaats te maken. Niets wordt bedekt. Elke pixel werkt.

Tussen categorieën bestaan er twee. Handmatige tiling — zoals bij i3 — vereist dat u vensters actief in containers splitst; de manager verdeelt de ruimte dienovereenkomstig. Dynamische tiling — zoals bij dwm, AwesomeWM of xmonad — berekent de lay-out automatisch volgens een algoritme: master-stack, spiraal, raster, wat dan ook. U opent een venster, de manager sorteert. U sluit er een, de rest vult de gaping.

Het resultaat lijkt niet op een bureau. Het lijkt op een dashboard. En het verandert hoe u met de machine werkt.

De dominantie van floating

Laten we het over het heden hebben. GNOME en KDE Plasma domineren de Linux-desktop. Beide leveren complete werkomgevingen: paneel, app-menu, meldingen, bestandsbeheerder, instellingen, thema’s, schermbeheer, sessiebeheer. Ze zijn volledig verzorgd. Wie ze installeert heeft een werkende desktop — geen bouwsteen waarvan men er zelf een moet timmeren.

Dat is geen gebrek. Het is de reden waarom de meesten blijven. Een werkomgeving is infrastructuur. Ze moet werken, niet worden doorvorsen. De meeste gebruikers — zelfs zij die Linux uit overtuiging kozen — hebben geen trek om een vensterbeheerder als permanent project te behandelen.

De distributies doen hun duit. Fedora, Ubuntu, openSUSE, Arch — allemaal leveren standaard een floating-omgeving. Tiling window managers bestaan in de repo’s, maar staan achter een bewuste beslissing: men moet ze opzoeken, installeren, configureren. Niemand struikelt per ongeluk over i3. Wie ze ontdekt heeft er óf naar gezocht — óf iemand ontmoet die ze gebruikt.

En daar begint de paradox. Dezelfde gemeenschap die distributies vergelijkt, init-systemen betoogt, pakketformaten beoordeelt en editor-heilige oorlogen voert — de gemeenschap die keuze als waarde koestert — behandelt de keuze van het vensterparadigma alsof er slechts één bestaat. Toch bestaat er een alternatief dat minstens zo consequent is als al het andere dat Linux onderscheidt. Het heet tiling. En het leidt een schaduwbestaan.

Wat tiling window managers bieden

De voordelen zijn niet romantisch. Ze zijn mechanisch.

Toetsenbordgericht werken. In een tiling window manager navigeert u vooral met het toetsenbord. Modi, focuswisselingen, splitsing maken, werkblad-sprongen — allemaal toetsreeksen, geen muisbeweging. Wie acht uur per dag achter een machine zit en er twee sleept met vensters verspilt tijd. Klinkt marginaal. Telt op.

Volledig oppervlakgebruik. Floating-lay-outs overlappen. Overlapping betekent dat een deel van de inhoud verborgen is — en dat u actief moet graven om het zichtbaar te maken. Tiling toont alles wat open staat tegelijk. Op een ultrascherm staan zes terminalvensters, een browser en een chat zichtbaar naast elkaar — zonder Alt-Tab-olympiade.

Scriptbare configuratie. i3, sway, Hyprland, AwesomeWM: alle configuraties zijn tekstbestanden. AwesomeWM gaat verder — zijn configuratie is Lua-code. Wie wil kan werkbladen dynamisch genereren, vensters op basis van titels automatisch naar bepaalde vlakken routeren, lay-outs programmatisch wisselen. Dotfiles worden reproduceerbaar. Een setup laat zich committen, versioneren, op een tweede machine klonen. Dat is ops-denken toegepast op de desktop.

Minimale voetafdruk. dwm neemt minder dan twee megabyte resident in beslag. sway, Hyprland, i3 — allemaal duidelijk lichter dan een volledige werkomgeving. Op verouderde hardware, op thin clients, op machines die hoofdzakelijk terminalwerk doen, is dat geen luxe — het is relevante speelruimte.

Stroom in plaats van fragmentatie. Wie tegelijk in terminals, editors, browsers en documentatie werkt jongleert doorgaans met vensters. Tiling maakt jongleren tot de stabiele toestand: alles zichtbaar, bereikbaar, onbedekt. Mentale contextwisseling daalt.

Een ochtend vergeleken

Beschouw een doorsnee ochtend. Een beheerder komt op kantoor, koffie in de hand, en de machine wacht.

In de floating-wereld: starter openen, terminal aanklikken — hij verschijnt gecentreerd, verbergt alles. Hoek slepen, opzij schuiven. Browser openen, ernaast wringen, overlapt de terminal. Log-viewer erbij, weer een venster dat nergens echt past. Na tien minuten Alt-Tab-jacht heeft men zes vensters, drie ervan half bedekt, en de muis vaker bewogen dan het toetsenbord.

In de tiling-wereld: Mod+Enter opent een terminal — linkerhelft, automatisch. Mod+Enter nog eens — rechterhelft, gesplitst. Browser op werkblad 2, Mod+2, daar is hij, volledig. Logs op werkblad 3, monitoring op 4, wiki op 5. Zes werkbladen, elk helder toegewezen, via cijfertoetsen bereikbaar. De handen verlaten de thuistoetsen niet. Na tien minuten heeft men hetzelfde overzicht — zonder één enkel venster verplaatst te hebben.

Het verschil lijkt klein op zichzelf. Het stapelt zich op over acht uur, vijf dagen per week, jaar na jaar. Wie in dit ritme gewerkt heeft ervaart het grijpen naar de muis als een onderbreking — niet als gereedschap.

Het landschap

Het tiling-WM-landschap is niet homogeen. Een samenvatting van de relevante:

i3. De klassieker. Sinds 2009, onderhouden door Michael Stapelberg en de gemeenschap. Handmatige tiling, uitstekend gedocumenteerd, voorspelbaar. Wie i3 leert houdt het vaak vast. De gouden standaard voor beginners.

sway. i3 voor Wayland. Configuratievriendelijk, inzetbare vervanging. Wie van i3 naar Wayland wil migreren vindt hier het directe pad.

Hyprland. De nieuwe. Wayland-natief, GPU-versneld, geanimeerd, gepolijst. Snelle iteratie, soms breaking changes tussen releases. Wie moderniteit boven stabiliteit stelt zit hier goed. De gemeenschap is groot, de energie hoog, de randen nog ruw.

AwesomeWM. Dynamische tiling, scriptbaar in Lua, extreem flexibel. Liever programmeren dan configureren vindt hier zijn speeltuin. De leercurve is steiler, de mogelijkheden grenzeloos.

dwm. Van het suckless-project. Minimalistisch, C-broncode als configuratie, dynamische tiling. Wie filosofische puurheid koestert — hier. Geen config-bestand; men patcht de bron.

bspwm. Binaire ruimtepartitionering. Vensters worden recursief in helften gesplitst. Elegant concept, consequent uitgevoerd.

xmonad. Haskell-geconfigureerd. Voor wie functionele puurheid helemaal tot in de vensterbeheerder wil dragen.

Vermeldenswaard blijven: herbstluftwm — handmatige tiling, tijdens runtime configureerbaar via een commandoregeltool — en river, een rijzend Wayland-project met dynamische lay-out.

Geen van deze oplossingen is fout. Ze verschillen in filosofie, configuratiemethode en volwassenheid. Maar ze delen een eigenschap: ze veronderstellen dat men zich erin verdiept.

De eerlijke drempels

Tiling window managers zijn niet voor iedereen. Dat verzwijgen is zendingswerk, geen advies.

Leercurve. De eerste dagen zijn ongemakkelijk. Men moet sneltoetsen leren, een mentaal model van de containerhiërarchie opbouwen, workflows herinrichten. Na decennialang floating grijpt men reflexmatig naar de muis — en in een tiling-setup is die vaak nutteloos of contraproductief. Het gaat over, maar niet onmiddellijk.

Integratie. Een werkomgeving levert polkit, meldingen, systeemvak, vergrendelscherm, schermbeheer, toegankelijkheid, invoermethoden, themaconsistentie. Een kale tiling window manager levert: vensterbeheer. Al het rest moet men zelf samenstellen. Wayland heeft veel verbeterd, maar de inspanning blijft reëel. Wie een volledig verzorgde ervaring wil krijgt die niet out-of-the-box.

Onderhoud. Dotfiles vragen zorg. Upgrades kunnen configuraties breken — zeker bij snelle-iteratieprojecten als Hyprland. Wie een setup eenmaal bouwt en er dan jaren niet meer aankomt kan bevriezen. Wie upstream volgt investeert periodiek.

Spaarzaamheid van standaardwaarden. Tiling-WM’s leveren sobere standaardwaarden. Mooi als men minimalistisch denkt. Minder mooi als men een kant-en-klare ervaring verwacht. Schoonheid ontstaat door configuratie — en configuratie is werk.

Ecosysteembreuken. Wayland heeft het X11-universum opengebroken. Sommige tiling-WM’s zijn Wayland-natief (sway, Hyprland, river), andere blijven X11-only (i3, awesome, bspwm, xmonad, dwm). Wie een gemengde workflow draait moet compatibiliteit controleren. XWayland helpt maar is niet onfeilbaar.

Dotfiles: van nadeel naar voordeel

Het onderhoud van dotfiles werd zojuist als barrière genoemd — en dat is er een, zolang men het alleen doet. Een enkele gebruiker die zijn eigen configuratie bijhoudt heeft niemand buiten zichzelf. Maar zodra er meer dan één machine in het spel is, verandert de vermoedelijke zwakte in het beslissende voordeel.

Ansible — of vergelijkbare templating-tools — kan dotfiles als Jinja2-templates aanhouden. Een i3-configuratie, een sway-config, een polybar-balk, een shell-rc: allemaal templates met variabelen. Hostnaam, gebruikersnaam, monitor-ID’s, toetsenbordindeling, kleurenpalet — per machine ingevuld, per team gevarieerd. Één playbook, één repository, één aanroep — en de hele desktop is geconfigureerd. Niet op één machine. Op honderd.

Idempotent. Herhaalbaar. Versiebeheerd. Hetzelfde playbook draait op de ontwikkelaarslaptop, de rackservers, de thin client in de vergaderkamer — en produceert telkens de juiste configuratie vanuit dezelfde template. De desktop wordt infrastructure as code. Niet als modewoord, maar als praktijk.

Probeer hetzelfde met GNOME. GNOME slaat zijn instellingen op in dconf — een binaire database die als backend voor GSettings dient. De interface is gsettings of dconf op de commandoregel, maar wat erachter ligt is geen tekst. Men kan het niet lezen, niet diffen, niet als template aanhouden. Wie GNOME-instellingen wil automatiseren moet ze exporteren, in scripts verpakken, via dconf load weer inladen — een omweg langs binaire gegevens die zich tegen elke templating-logica verzet. Het werkt, maar het blijft een vreemd element in de infrastructure-as-code-workflow.

KDE is op dit punt ietwat toegankelijker — veel instellingen leven als INI-achtige tekstbestanden —, maar de consistentie is lacuner. Sommige waarden migreren naar plasmarc-databases, andere naar rc-bestanden, en de structuur wijzigt tussen hoofdversies. Wie een KDE-setup met Ansible wil templaten vecht tegen een heterogeen configuratiemodel dat nooit voor automatisering ontworpen is.

Tiling window managers daarentegen zijn hiervoor gebouwd. Hun configuratie is vanaf het begin tekst, vanaf het begin één bestand, vanaf het begin deterministisch. Geen database, geen binair formaat, geen verborgen toestand. Een template die een i3-config genereert is even vanzelfsprekend als een template die een nginx.conf genereert. De gereedschappen passen omdat het materiaal past.

Voor teams betekent dit: een beheerder definieert een tiling-setup — werkbladen, sneltoetsen, kleuren, autostart — en rolt deze via Ansible uit naar elke machine. Nieuwe collega’s krijgen dezelfde desktop op de eerste dag. Defecte machines worden heropgebouwd en convergeren naar de doeltoestand. Een audit vraagt: hoe is de desktop geconfigureerd? Het antwoord ligt in de Git-repository. Niet in een binaire database die eerst uitgelezen moet worden.

Dat is geen cosmetisch argument. Het is het verschil tussen een desktop die men beheert en een desktop die zich laat beheren.

Wie er baat bij heeft

Tiling window managers spreken een specifiek soort gebruiker aan.

Ontwikkelaars die tegelijk in editors, terminals, browsers en documentatie werken. Systeembeheerders die zes SSH-sessies, logs, monitoring en een wiki open willen houden. Datawetenschappers die notebook, REPL en plotvensters naast elkaar nodig hebben. Powerusers die hun desktop zien als een werkplaats, niet als een consumptievlak.

Maar ook: mensen die reproduceerbaarheid waarderen. Wie dotfiles commit heeft een desktop die vernield en hersteld kan worden — in seconden, op elke machine. Dat is geen speelding. Het is back-upstrategie voor de werkplek.

En mensen die oud hardware laten leven. Een tiling-WM op een ThinkPad uit 2015 loopt vloeiend waar een volledige werkomgeving zwoegt. Dat is economisch en ecologisch relevant — apparatuur leeft langer wanneer software niet met hen mee groeit.

Omgekeerd: wie vooral werkt in paletgestuurde grafische programma’s — beeldbewerking, vectorillustratie, videomontage, CAD — vindt tiling vaak het verkeerde antwoord. Deze gereedschappen leven van vrij arrangeren van grote tekenvlakken, van zwevende paletten, van overlappende tijdlijnen. Ze in een star raster persen schept geen voordeel, alleen wrijving. Tiling is geen dogma. Het is een gereedschap voor een bepaalde werkwijs — en wie een andere heeft kan het beter laten rusten.

Een kwestie van houding

Tiling window managers belichaarden kernwaarden van de opensource-beweging: transparantie, configureerbaarheid, hackbaarheid, reproduceerbaarheid. De configuratie is leesbaar. Het gedrag is navolgbaar. Afhankelijkheden zijn minimaal. Niemand beslist over mijn desktop behalve ik.

Dat is dezelfde impuls die mensen naar Linux brengt, naar zelf hosten, naar open standaarden. Alleen op de desktop — de plek die men acht uur per dag aanschouwt en toch het minst ter discussie stelt.

Daarbij komt een cultuur die gebruikers van tiling-WM’s delen: de dotfiles-community. Configuraties worden publiek gedeeld, gecommit, bediscussieerd — op platformen die op fora in hun soort eigen lijken. Een setup is geen privébezit maar een schets die anderen bestuderen, overnemen, verbeteren. Dat is opensource-denken op de kleinste schaal: transparantie niet als plicht maar als vanzelfsprekendheid. Wie een desktop zo exploiteert doet dat niet als consument maar als medeontwerper.

Wie KDE of GNOME kiest kiest niets verkeerds. Beide zijn formidabele software. Maar wie ze kiest zonder ooit het alternatief te hebben overwogen maakt geen keuze. Hij neemt een standaardproduct over. En dat is, voor een gemeenschap die elk ander facet van haar infrastructuur betoogt, opvallend.

Wat dit voor libcom.de betekent

Al vijfentwintig jaar werk ik met Linux-desktops — in individuele, team- en bedrijfsomgevingen. Ik ken beide kanten: de afgeronde volledigheid van een werkomgeving en de puristische consequentie van een tiling-setup. Beide hebben hun rechtvaardiging. De vraag is niet welke beter is. De vraag is welke beter is voor wie.

Wie naar mij komt krijgt geen standaardaanbeveling. Hij krijgt een analyse: Hoe werkt u? Welke applicaties, welke schermen, welke workflows? Waar zitten afhankelijkheden die een bepaalde setup afdwingen? Dan plannen we — gefaseerd, gedocumenteerd, omkeerbaar. Wie tiling wil uitproberen hoeft niet in het koude water te springen. Men kan testen, piloteren, evalueren. En als het niet past keert men terug — zonder verlies.

Als u zich afvraagt of een tiling window manager voor u of uw team in aanmerking komt, of gewoon een eerlijke inschatting wilt van uw huidige desktopsetup: schrijf naar contact@libcom.de. Wij maken een eerlijke inventarisatie. Zonder verkoopdruk. Met de blik op wat op termijn standhoudt.


Vensters hoorden niet te overlappen. Dat was de oorspronkelijke gedachte. Misschien is het tijd om hem weer te overwegen.