ŁO
NL·PL·EN
← Alle notities

Streepjescodes op de telefoon: hoe tekst won van de GPU

Zaterdagavond. Op de telefoon zien de planeetlabels van mijn homepage eruit als streepjescodes en het gouden logo als gebroken glas. Op de computer klopt alles. Zo begon een van de leukste speurtochten van de laatste weken.

Het begon met een melding die elke site-eigenaar kent: "op de telefoon staat iets scheef". De labels onder de planeten in mijn projectenstelsel zagen eruit als streepjescodes, het gouden embleem in het midden als een glas-in-loodraam na een hagelbui. Desktop: perfect. Telefoon: chaos. Dezelfde site, dezelfde code.

Twee fixes die niets repareerden

Het eerste spoor klonk verstandig: texturen in ongebruikelijke formaten kunnen kwaliteit verliezen bij het verkleinen, dus schakelde ik het verdachte mechanisme uit. Uitgerold, getest - nog steeds streepjes. Het tweede spoor klonk nog verstandiger: de afbeeldingen omzetten naar formaten waar grafische chips het meest van houden. Uitgerold - nog steeds streepjes. Twee nette fixes uit het handboek, nul effect.

De doorbraak kwam uit observatie, niet uit documentatie: het gouden logo ging ook kapot, en dat heeft geen tekst, geen schaduw, niets "ongebruikelijks". De planeetbollen, met een andere techniek getekend, bleven altijd schoon. De gemene deler van alle kapotte elementen bleek er maar een te zijn - ze waren allemaal texturen die via een specifiek mechanisme werden geladen, en de grafische driver van deze telefoon maakt dat mechanisme gewoon stuk. Van een zwarte doos van een fabrikant win je niet. Je kunt wel stoppen met tegen die doos te spelen.

De beste fix: een ander speelveld

Ik heb de tekst volledig uit de grafische chip gehaald. De planeetlabels zijn nu gewone HTML-tekst, elk beeldje opnieuw gepositioneerd met de wiskunde van de 3D-camera - ze draaien, kantelen en verdwijnen in de verte, precies zoals eerst. Het embleem keerde terug naar de scene met een andere, bewezen techniek, zodat verre planeten weer achter het logo schuilgaan. HTML-tekst wordt door geen enkele driver op geen enkele telefoon kapotgemaakt - het probleem is niet zozeer opgelost, het bestaat niet meer.

Onderweg kwamen nog twee kleinere zonden boven, allebei typisch telefoon: de sterren op de achtergrond versprongen bij elke scroll (de adresbalk van de browser verstopt zich en doet alsof het venster van formaat verandert, en de code lootte de hemel opnieuw) en de pagina liet zich licht heen en weer duwen. Drie deploys later staat alles stil, draait alles en springt er niets.

Wat dit betekent voor jouw site

Een: een site is een levend systeem, geen poster - hij gaat kapot op apparaten die niet op jouw bureau liggen, dus onderhoud na de lancering is geen extraatje maar de helft van het werk. Twee: als twee goede fixes niet werken, heb je geen derde fix nodig maar een andere vraag. Drie: dit hele onderzoek deed ik zoals ik elke dag werk - ik en mijn AI-systeem in de terminal, hypothese na hypothese, deploy na deploy, in een avond. Precies die aanpak leer ik in de training "Hoe ik het doe" - met dit verschil dat we hem bij jou vanaf nul opbouwen, op jouw computer.