kategorie: über wirres ×

100 tage

felix schwenzel in notiert

seit 100 ta­gen hab ix je­den tag min­des­tens ei­nen bei­trag auf wir­res.net ver­öf­fent­lich.


semaglutid tag 5

felix schwenzel in semaglutid

heu­te gabs ne but­ter­bre­zel zum früh­stück, die bre­zel hab ich ges­tern schon ge­kauft und die but­ter hab ich ex­tra aus­ge­fro­ren. dazu ne schei­be käse und ge­koch­ten schin­ken. nach dem früh­stück gab nur nen kur­zen „mit­tags“-schlaf weil ich am flug­ha­fen mei­nen al­ten freund jeff ab­ho­len muss­te, den ich seit 38 jah­ren nicht mehr ge­se­hen hat­te. jeff und ich wa­ren da­mals im wrest­ling team der high­school. wir ha­ben uns vor der ab­ho­lung ge­gen­sei­tig fo­tos von uns ge­schickt, was im ers­ten mo­ment hilf­reich war, in 38 jah­ren al­tert man ja er­heb­lich und sam­melt fett, aber im lau­fe des ta­ges ha­ben wir ge­gen­sei­tig die 18 jäh­ri­gen in un­se­ren ge­al­ter­ten ge­sich­tern wie­der­erkannt.

auf der rück­fahrt sind wir von der au­to­bahn ab­ge­fah­ren und ha­ben ir­gend­wo in kreuz­berg an­ge­hal­ten um eine ge­le­gen­heit zu su­chen jeff mit dö­ner be­kannt zu ma­chen. die­ser la­den schien uns gut ge­nug, und auch wenn die zwei dö­ner mit zwei ay­ran 17 € kos­te­ten wa­ren wir nicht entäuscht. das ay­ran schmeck­te jeff ein biss­chen zu „spe­cial“, aber ich bin zu­ver­sicht­lich, dass er sich noch an ein paar ac­qui­red ger­man tas­tes ran­tas­ten wird.

bild von jeff nachdem er einen kinderspielplatz-kletterdom erklommen hat
das döner befügelte jeff nach dem essen offensichtlich

ich hat­te mir im vor­feld oh­ne­hin über­legt heu­te mal ein biss­chen mehr zu es­sen als mir der ap­pe­tit das se­maglut­id dik­tier­te, weil die pfun­de laut waa­ge ge­ra­de et­was zu flott fal­len (heu­te be­reits un­ter 108). am abend gabs dann eine pro­per ger­man brot­zeit, für mich reich­te eine schei­be voll­korn­brot mit käse und schin­ken, zwei bier und sehr vie­le fri­sche ret­tich­schei­ben mit salz und pfef­fer. mor­gen gibt’s ku­chen von tho­ben, jeff und die bei­fah­re­rin ha­ben von je­der tho­ben sor­te ku­chen je ein stück ge­kauft. ich konn­te den bei­den aus­re­den den ku­chen nach dem abend­essen an­zu­bre­chen, aber ich freu mich sehr auf die ku­chen­aus­sicht mor­gen.

mein gewicht über die letzten zwei jahre, in mnatsmittelwerten. heute lags unter 108 kg

aus­ser­dem kurz aus dem ma­schi­nen­raum: ges­tern und heu­te früh habe ich an ei­ner git­ter-dar­stel­lung der bil­der auf wir­res.net ge­ar­bei­tet, mit pho­tos­wi­pe, in­fi­ni­te scroll und so wie ich mir ein fo­to­ar­chiv schon län­ger vor­ge­stellt habe. das ziel­pu­bli­kum die­ses neu­en fea­tures (ich) ist sehr zu­frie­den, auch wenn das ding noch ei­ni­ges an fein­schliff be­nö­tigt.


photoswipe ist toll

felix schwenzel in über wirres

ist pho­tos­wi­pe nicht toll?


hält in sich

felix schwenzel in bilder

ei­ner der sprü­che, die ich wäh­rend mei­ner (schrei­ner) aus­bil­dung am häu­figs­ten ge­hört habe war: „das hält in sich“

das ist in der tat bei der mehr­heit al­ler kon­struk­tio­nen aus holz (werk­stof­fen) so und falls es mal nicht der fall ist, hel­fen ein paar trop­fen leim, ne schrau­be, ein na­gel oder ein be­herz­ter schlag.

wenn me­tall mal nicht „in sich“ hält muss man mit zug­kräf­ten ar­bei­ten. oder wie hier eben mit ka­bel­bin­dern. ich fin­de das herz­al­ler­liebst, ge­nau­so wie den gol­ga­tha-gna­den- und jo­han­nes-evan­ge­list-fried­hof.

als fri­da und ich da heu­te dran vor­bei­ge­gan­gen sind, war ich kurz da­vor, trotz ver­bots, mit fri­da mal den fried­hof zu er­kun­den. der fried­hof ist sehr ein­la­dend und wirkt von aus­sen fast wie der wald­fried­hof, auf dem wir mei­ne oma ver­gra­ben be­gra­ben ha­ben. sehr ein­la­dend. ich soll­te wie­der mehr ju­gend­li­chen leicht­sinn ent­wi­ckeln.

bild von einem ramponierten zaun am golgatha-gnaden- und johannes-evangelist-friedhof
gesundheit!

p.s.: mit dem ver­öf­fent­li­chen die­ses ar­ti­kels habe ich et­was ge­war­tet, bis ich den neu­en „light­box“-me­cha­nis­mus (pho­tos­wi­pe mit pho­tos­wi­pe dy­na­mic cap­ti­on plug­in und pho­tos­wi­pe vi­deo plug­in) ein­ge­baut habe. vor­her hat­te ich ba­guette­box ge­nutzt.

mit pho­tos­wi­pe kann man jetzt in bil­der, die in ei­ner light­box an­ge­zeigt wer­den, rein­zoo­men. klick aufs bild und ent­we­der mit dem scroll­rad oder zwei fin­gern auf dem track­pad nach un­ten wi­schen zum zoo­men. ein­mal kli­cken ver­grös­sert auch (et­was). da­mit kann man dann zum bei­spiel auf die ka­bel­bin­der-kon­struk­ti­on zoo­men.

aus­ser­dem ge­hen „live fo­tos“ (also ge­loop­te vi­deo ohne ton und steu­er-ele­men­te) jetzt auch in der light­box auf. nor­ma­le vi­de­os kön­nen theo­re­tisch auch in der light­box auf­ge­hen, aber da gibt’s noch kom­pli­ka­tio­nen mit der be­nut­zung. je­den­falls sehr schön die­se pho­tos­wi­pe, al­lein we­gen des scroll- und pinch-zooms — und den schö­ne­ren („dy­na­mi­schen“) bild­un­ter­schrif­ten.

das al­les ist na­tür­lich auch sehr déjà-vu, zu pho­tos­wi­pe bin ich be­reits vor neun jah­ren schon­mal ge­wech­selt.


neuer maschinenraum

felix schwenzel in über wirres

ich habe heu­te früh die DNS ein­trä­ge für wir­res.net auf eine VM bei mei­nem ar­beit­ge­ber sy­se­le­ven.de um­ge­stellt. der neue ser­ver hat et­was mehr hub­raum und PS als die et­was spar­sam di­men­sio­nier­ten vir­tu­el­len ma­schi­nen bei uber­space. bei uber­space liegt die site wei­ter­hin und ich zah­le dort auch wei­ter, aber die per­for­mance eng­päs­se von kir­by auf dem uber­space as­te­ro­iden ha­ben sich mehr und mehr be­merk­bar ge­macht. nach aus­sen lässt isch das ganz gut mit caching ab­fan­gen. aber ins­be­son­de­re wenn vie­le bil­der neu ge­ne­riert wer­den müs­sen oder un­ge­cach­te sei­ten, wie die su­che oder über­sichts­sei­ten, auf­ge­ru­fen wer­den, kommt der as­te­ro­id an sei­ne gren­zen.

weil wir als mit­ar­bei­ter bei sy­se­le­ven auch VMs in als ei­gen­be­darf in der sy­se­le­ven-cloud an­le­gen kön­nen, habe ich die chan­ce er­grif­fen und woll­te mal tes­ten, wie kir­by auf ei­ner ma­schi­ne mit mehr hub­raum läuft. und ich muss sa­gen: sehr rund. auf uber­space war ins­be­son­de­re das pa­nel, also das ba­ckend sehr lang­sam und durch time­outs ha­gel­te es beim edi­tie­ren feh­ler­mel­dun­gen. das ist na­tür­lich al­les mei­ne ei­ge­ne schuld, schliess­lich lie­gen hier ziem­lich vie­le ar­ti­kel rum, die im­mer wie­der aus dem da­tei­sys­tem ei­n­egla­sen wer­den und im (PHP) spei­cher ge­hal­ten wer­den.

weil ich auf der neu­en VM IPv6 noch nicht zum lau­fen be­kom­men habe, hab ich noch­mal cloud­fla­re ak­ti­viert. da­mit wer­den auch IPv6 an­fra­gen be­ant­wor­tet. schal­te ich dann wie­der ab, so­bald IPv6 hier läuft.

an­sons­ten mal gu­cken. um­schal­ten, bzw. zu­rück­schal­ten zu uber­space ist kein pro­blem, bzw. ein ein­fa­ches um­bie­gen der DNS ein­trä­ge. syn­chro­ni­sa­ti­on zwi­schen den in­stan­zen ist ein ein­fa­ches, schnel­le rsync der con­tent ord­ner. fle­xi­bel „de­ploy­en“ lässt sich die­ses kir­by auf je­den fall. aber zu­rück zu uber­space wird mir schwer­fal­len, weil das pa­nel auf der grös­se­ren ma­schi­ne wirk­lich snap­py ist, also so wie es sein soll.

die­sen ar­ti­kel, zum bei­spiel, konn­te ich heu­te früh mit links vom han­dy aus an­le­gen. das war vor­her im­mer et­was ha­cke­lig

wahrscheinlich etwas „over the top“, wenn man bedenkt, dass bei uberspace das RAM auf 1,5 GB begrenzt ist.

auch neu: eine geo­su­che, die ei­nen ort und ei­nen ra­di­us als pa­ra­me­ter nimmt und dann ar­ti­kel mit die­sen geo­ko­or­di­na­ten fin­det. teil­wei­se noch nicht per­fekt, aber ich finds gross­ar­tig. und auf uber­space hat­te ich das ge­fühl, dass es den ser­ver an den rand der leis­tungs­fä­hig­keit bringt. hier dau­ert die su­che auch 2-3 se­kun­den, aber der ser­ver scheint nicht ins schwit­zen zu ge­ra­ten.


nu klar.
(… und ich habe den ver­dacht, dass ihr et­was emp­find­lich beim schutz mei­ner eig­nen da­ten vor mir selbst seid)


der ver­dacht, den in­sta­gram hat­te, hat dazu ge­führt, dass ich in al­len brow­sern und apps aus­ge­loggt wur­de. und mei­ne in­s­ta­loa­der ses­si­on un­gül­tig wur­de. ef­fi­zi­en­te mass­nah­me. noch kann ich mich wie­der an­mel­den, ich bin mal ge­spannt, wie lan­ge ich mit in­sta­gram die­ses spiel spie­len kann.

aber ab­ge­se­hen da­von ma­che ich der­zeit gar nicht so viel bis gar nichts mit in­s­ta­loa­der. ich las­se in­s­ta­loa­der aus­schliess­lich lau­fen, wenn ich auf in­sta­gram et­was pos­te (also alle paar tage mal):

(venv) ix@tb:~/instaloader$ instaloader -l diplix --fast-update diplix
Loaded session from /home/ix/.config/instaloader/session-diplix.
Logged in as diplix.
[1/1] Downloading profile diplix
diplix/2015-08-23_09-55-56_UTC_profile_pic.jpg already exists
Retrieving posts from profile diplix.
[   1/2353] diplix/2025-07-17_06-43-51_UTC.jpg [über den wolken … muss es woh…] json
[   2/2353] diplix/2025-07-17_06-39-20_UTC.jpg [nu klar. (… und ich habe den …] json
[   3/2353] diplix/2025-07-13_06-24-46_UTC.jpg exists [in der brunftzeit ölen sich b…] unchanged json
[   4/2353] diplix/2025-07-12_06-04-37_UTC.jpg exists [ich mein das ist schon ein to…] unchanged json
Saved session to /home/ix/.config/instaloader/session-diplix.

das lädt die letz­ten 4 bei­trä­ge und spei­chert die bil­der und me­ta­da­ten. da­nach las­se ich noch ma­nu­ell ein kir­by im­port­script drü­ber­lau­fen und ko­pie­re den so er­zeug­ten ord­ner rü­ber zu kir­by. der ganz vor­gang er­zeugt ei­gent­lich kaum re­quests. aber wie ge­sagt. mal wei­ter be­ob­ach­ten. in­sta­gram be­ob­ach­tet mich ja auch.


alle bilder sind gemacht

felix schwenzel in über wirres

ich schon wie­der aus dem ma­schi­nen­raum. in mei­ner frei­en zeit ver­brin­ge ich dort ge­ra­de vie­le stun­den. ich bin im­mer noch da­mit be­schäf­tigt mei­ne in­sta­gram-bil­der als so­fort­bil­der hier zu in­te­grie­ren. ich kom­me so­wohl gut vor­an, als auch nur schlep­pend. aber wi­der­sprü­che hal­te ich gut aus und ich habe die fä­hig­keit mich auch über klei­ne fort­schrit­te zu freu­en.

un­ter­wegs ler­ne ich viel und mög­li­cher­wei­se ist das auch der haupt­grund war­um ich so viel zeit und auf­merk­sam­keit in die­ses web­site-mons­trum ste­cke. nie­mand (aus­ser mir) wird sich die 2300 bil­der an­schau­en, aber ich fin­de es schön wenn al­les sei­ne ord­nung hat und ich das ge­fühl habe mit dem zeug was meins ist auch ma­chen zu kön­nen was ich will. und das mach ich ja auch.

was mir je­den­falls auf­ge­fal­len ist, wie sehr sich ein­zel­ne din­ge wie­der­ho­len. hier im blog fin­den sich sehr, sehr vie­le bil­der von ap­fel tar­te (1, 2, 3, 4). aber da­für (noch) kein re­zept, aus­ser ei­nem link. die reh­ber­ge hab ich durch­fo­to­gra­fiert, wie fri­da fut­ter­stück­chen aus der luft schnappt min­des­tens 4 mal ge­filmt und ver­öf­fent­licht. an­de­rer­seits ist das mit der wie­der­ho­lung auch fas­zi­nie­rend. je öf­ter wir in die reh­ber­ge ge­hen, je ver­trau­ter wir mit dem park wer­den, des­to mehr neue din­ge und de­tails ent­de­cken wir.

und ich sehe, der hu­mor und for­mu­lie­run­gen des al­ten fe­lix, des fe­lix der letz­ten 20-30 jah­re, ge­fal­len mir noch heu­te.

aber ich schwei­fe ab. denn mir fiel eben auch auf, dass die zeit die ich im ma­schi­nen­raum ver­brin­ge die zeit ist, die an­de­re leu­te mit le­sen oder (kreuz­wort) rät­seln ver­brin­gen. zeit die ich sonst mit fern­seh­se­ri­en oder fil­men ver­brin­ge. aber im ma­schi­nen­raum trai­nie­re ich mei­ne pro­blem­lö­sungs­fä­hig­keit, hal­te mei­nen denk­ap­pa­rat am lau­fen und übe den um­gang mit kom­ple­xen und ver­schach­tel­ten sys­te­men.

als ich vor ei­ner wei­le mit fri­da an ei­nem café vor­bei­lief, sass draus­sen eine dame mit hund und mahn­te ih­ren hund dazu fri­da in ruhe zu las­sen, sie sei ge­ra­de im trai­ning. auch wenn wir nur am kaf­fee vor­bei­lie­fen und kon­kret gar nichts üb­ten, for­mu­lier­te ich in mei­nem geist die ant­wort „al­les ist trai­ni­ung“ — ohne das dann aus­zu­spre­chen.

so trai­nie­re ich abends und nachts an kir­by und die­ser web­sei­te mei­nen geist und mei­ne fä­hig­keit kom­ple­xe pro­ble­me zu lö­sen und im kopf zu be­ar­bei­ten, übe ge­duld und ruhe wenn ich mit dem hund un­ter­wegs bin und trai­nie­re fri­da, in­dem ich ihr ein­fach und kon­se­quent zei­ge, wie ich mir un­ser zu­sam­men­le­ben vor­stel­le. und am ende kom­men vie­le wun­der­ba­re sa­chen zu­rück, eine web­sei­te, die so ist wie ich web­sei­ten mag, ei­nen hund der mit mir und der welt zu­recht­kommt.


mei­ne blog­frei­en jah­re von 2020 bis 2025 habe ich je­den­falls ganz gut aus­ge­füllt mit ak­ti­vi­tät auf in­sta­gram, wie die­se gra­fik zeigt. in­so­fern habe ich dann doch durch­ge­hend ins in­ter­net ge­schrie­ben, nur eben an­ders­wo. um so schö­ner die­se ak­ti­vi­tä­ten jetzt hier ein­fach er­gän­zen zu kön­nen.

weil ich zwi­schen 2015 und 2020 in­sta­gram-bil­der hier ins blog ge­zo­gen habe und das glei­che jetzt für die in­sta­gram-bil­der von 2011 bis jetzt ge­tan habe, gibt es noch ca. 800 dop­pel. bei­spiel 1 und 2. die wer­de ich noch eli­mi­nie­ren, ein script ha­ben chatgpt und ich schon ge­schrie­ben und das kon­zept ist, die da­mals per own­y­our­gram ins blog ge­zo­ge­nen dop­pel zu lö­schen, aber die url wei­ter zu lei­ten auf die neue­re ko­pie.

da­bei habe ich mich wie­der über kir­by ge­freut, denn in kir­by ist al­les so kon­se­quent und kon­zep­tio­nell klar ge­baut. die al­ten bil­der, zum bei­spiel in https://wir­res.net/ar­tic­les/11395 lie­gen ei­gent­kich in ei­nem ord­ner con­tent/1_ar­tic­les/20200323_11395/. wenn ich den ord­ner ein­fach lö­schen wür­de geht die url ka­putt (wird zu 404). aber wenn ich in dem ord­ner al­les lö­sche und eine da­tei link.txt mit dem fol­gen­den in­halt in den ord­ner lege, gibt’s ne wei­ter­lei­tung:

Link: https://wir­res.net/so­fort­bil­der/2271345229156742964

da­für muss es na­tür­lich noch ein tem­p­la­te link.php ge­ben:

<?php go($page->link(), 301) ?>

an­sons­ten:

vor­läu­fi­ge top 10 ge­fav­te in­sta­gram-bil­der bis 2020:


artikel vs. sofortbilder

felix schwenzel in über wirres

rot: an­zahl ar­ti­kel die ich pro jahr auf wir­res.net ver­öf­fent­licht habe (peak ca. 1800)

oran­ge: an­zahl in­sta­gram posts die ich pro jahr ver­öf­fent­lich habe (peak 360)

die da­ten wer­den noch ver­fälscht, weil zwi­schen 2015 und 2021 noch ziem­lich vie­le in­sta­gram ko­pien auf wir­res.net und da­mit im ro­ten be­reich ge­lan­det sind. zwi­schen 2015 und 2021 müss­te oran­ge also subs­tra­hiert, statt ge­sta­pelt wer­den.

sie­he auch: rück­sei­te.


changelog 10.7.2025

felix schwenzel in über wirres

mein kir­by kann jetzt kar­ten an­zei­gen, ei­ner­seits dank die­ses plug­ins: kir­by-map und at­las.p3k.io/sta­tic-maps.

ei­gent­lich ist mit dem kir­by-maps plug­in vor­ge­se­hen map­box oder goog­le kar­ten ein­zu­bet­ten. aber na­tür­lich kann man das snip­pet an­pas­sen, also habe ich es an­ge­passt, dass es sta­ti­sche kar­ten von at­las.p3k.io lädt und lo­kal spei­chert.

pro kar­te spei­cher ich zwei da­tei­en, eine nor­mal gros­se und für die light­box nach dem klick eine et­was grös­se­re ver­si­on die auch ein etws les­ba­re­re­res kar­ten­ma­te­ri­al hat.

das geht auch im fuss­be­reich von ar­ti­keln, wenn ich ar­ti­kel mit orts­in­for­ma­tio­nen ver­öf­fent­li­chen will.

sc reenshot vom fussbereich dieses artikles im darkmode mit ortsinformationen

be­rich­tens­wert ist das na­tür­lich nur, wenn die ein­ga­be von geo-da­ten auch wirk­lich ein­fach geht. und ich fin­de das in­ter­face sehr schön.

screenshot von backende mit der orte-suchmaske der kirby map

lei­der fal­len mir mit je­den neu­en fea­ture 20 an­de­re fea­tures ein. aber kurz­fris­tig (no­tiz an mich selbst), soll­te ich mich um fol­gen­des küm­mern.

  • geo­in­for­ma­tio­nen auch ma­schi­nen­les­bar aus­lie­fern
  • über­sich­ten nach or­ten bau­en (die meis­ten imp­por­tier­ten in­sta­gram­me ha­ben orts­in­for­ma­tio­nen)
  • (sys­te­ma­tisch) rss feeds für ein­zel­ne ka­te­go­rien ein­füh­ren, ich kann mir vor­stel­len, dass es 2 oder drei leu­te gibt, die den abon­nie­ren wür­den

ichichich

felix schwenzel in über wirres

mau­rice hat ei­nen buchshot von ei­nem screen­shot von ei­ner 20 jah­re al­ten wir­res.net sei­te ge­macht. das buch ist 19 jah­re alt. die screen­shot-un­ter­schrift be­klagt, dass ich im­mer das ich ge­hy­per­lin­ked habe.

foto von maurice renck

die sei­te die auf dem screen­shot zu se­hen ist gibt’s im­mer noch: was ist wir­res?. da gibt und gab es wohl hu­mor-dif­fe­ren­zen, in dem ar­ti­kel hab ich tat­sächlich je­des vor­kom­men der buch­sta­ben­kom­bi­na­ti­on ich mit mei­ner kon­takt­sei­te ver­linkt. fand ich vor 20 jah­ren wohl wit­zig.

und fin­de es im­mer noch ein biss­chen wit­zig.

das logo auf dem screen­shot im buch war wohl eher tem­po­rär. die ka­cke kam da nicht aus dem hund, son­dern aus der tas­ta­tur. und das ix statt ich sage und schrei­be ich ei­ner­seits eher spo­ra­disch und ge­ge­be­nen­falls vor zwan­zig jah­ren noch gar nicht.


changelog 8.7.2025

felix schwenzel in über wirres

nach­dem ich mir vor ein paar ta­gen mei­ne in­sta­gram-bei­trä­ge „run­ter­ge­la­den“ habe (mit in­s­ta­loa­der, sie­he auch hier), hab ich mir jetzt ei­nen pro­to­ty­pen ge­baut. alle mei­ne in­sta­gram-bei­trä­ge seit 2011 bis jetzt sind jetzt un­ter „so­fort­bil­der“, ca. 2300 bei­trä­ge, die ak­tu­ell 530 MB wie­gen (noch ohne vi­deo-da­tei­en).

wie auf in­sta­gram, kann ich jetzt mit den j/k tas­ten in ei­nem bei­trag vor- und zu­rück-blää­tern. und an­ders als bei in­sta­gram kann ich auch ein paar jah­re vor und zu­rück­blät­tern. ist al­les noch sehr un­fer­tig, aber ich fin­de es gross­ar­tig.

was noch fehlt:

  • orte und geo-da­ten
  • kom­men­ta­re und like counts
  • klick­ba­re tags und links (bei­spiel)
  • fil­ter, über­sicht nach jah­ren/mo­nat
  • vi­de­os (im mo­ment wer­den nur die co­ver­bid­ler ge­zeigt)
  • au­to­ma­ti­sches ak­tua­li­sie­ren, neu hin­zu­ge­kom­me­ne, von mir auf in­sta­gram ge­pos­te­te bei­trä­ge an­le­gen

wie ichs ge­baut habe:

  • in­s­ta­loa­der legt für je­den bei­trag eine json-da­tei an (2011-10-17_06-19-58_UTC.json.xz) und legt ent­spre­chend die bil­der (2011-10-17_06-19-58_UTC.jpg) und vi­de­os dazu
  • über die json-da­tei­en da­tei­en las­se ich ein script ite­rie­ren (hab ich mit chatgpt zu­sam­men­ge­den­gelt), das je bei­trag ei­nen ord­ner an­legt und dort die json-da­tei und bil­der ab­legt.
  • in die­sem or­denr legt das script auch eine kir­by-in­halts-da­tei in der die bil­der, die cap­ti­on, tags und so wei­ter drin ste­hen.

am ende habe ich ca. 2300 ord­ner die ich ein­fach in ei­nen kir­by-con­tent ord­ner „so­fort­bil­der“ lege. fer­tig (mehr oder we­ni­ger).

der witz ist na­tür­lich, jetzt wo ich an mei­ne da­ten ran­kom­me, wer­de ich in­sta­gram (wahr­schein­lich) auch wie­der (re­gel­mäs­si­ger) be­nut­zen. auch wenn das ar­ti­kel­bild et­was an­de­res sug­ge­riert.

p.s.: am wo­chen­en­de auch auf kir­by 5 ge­up­dated. war vor­wie­gend er­eig­nis- und pro­blem­los. end­lich dark­mo­de im pa­nel/ad­min-in­ter­face.


instagram api (quasi)

felix schwenzel in über wirres

das archiv aller meiner instgram posts (metadaten, bilder und filme) ist taut transmit 2,2 GB gross.

ges­tern ge­lernt: manch­mal ist es bes­ser die doku selbst zu le­sen, als sie sich von chatgpt er­klä­ren zu las­sen. RTFM hat in zei­ten von LLMs noch sei­ne be­rech­ti­gung.


lan­ge ver­si­on

in­sta­gram hab ich in letz­ter zeit kaum noch ge­nutzt. aber ei­gent­lich be­nut­ze ich in­sta­gram ger­ne.

vor ein paar jah­ren hab ich dort ge­pos­tet und mei­ne bei­trä­ge mit ei­nem script (own­y­our­gram) ins blog ge­zo­gen. das geht nicht mehr, seit in­sta­gram sei­ne API ver­ram­melt hat.

in­sta­gram scra­pen ist schwie­rig, aber mit in­s­ta­loa­der geht’s of­fen­bar ganz gut.

mit chatgp hab ich es al­ler­dings nicht zum lau­fen brin­gen kön­nen. was half: die doku selbst le­sen und das dort ge­zeig­te ses­si­on script be­nut­zen.

jetzt habe ich ein ar­chiv all mei­ner in­sta­gram-posts seit dem ok­to­ber 2011. da­mit könn­te ich mir mit kir­by recht schnell ei­nen in­sta­gram ar­chiv-view­er bau­en oder wie­der an­fan­gen bil­der auf in­sta­gram zu pos­ten, ins blog zu zie­hen und auf mast­o­don und blues­ky cross zu pos­ten.

wenn ich wie jetzt zu­griff auf die da­ten habe, kann ich also auch wie­der an­fan­gen in­sta­gram zu be­nut­zen.


aus dem maschinenraum 01.07.2025

felix schwenzel in über wirres

als ich wir­res.net vor drei mo­na­ten wie­der­be­lebt habe, woll­te ich es ohne be­su­cher­zäh­ler ver­su­chen. ich glau­be ich habe das ge­ra­de mal eine wo­che aus­ge­hal­ten und dann ma­to­mo, was oh­ne­hin noch lief, wie­der ein­ge­bun­den. weil man das auch ohne coo­kies ma­chen kann, füh­le ich mich trotz zähl­script auf der da­ten­spar­sa­men sei­te.

mei­ne ra­tio­na­li­sie­rung der be­su­cher­sta­tis­tik ist, dass ich ger­ne sehe wo­her die leu­te kom­men und dass ich ge­le­gent­lich in­ter­es­san­tes aus den re­fe­rern her­aus­fi­sche. in­ters­sant ist es auf je­den fall zu se­hen, dass bud­den­bohm-und-soeh­ne.de mir den gan­zen mo­nat über be­su­cher her­über­spült (128 „vi­sits“ im juni), ob­wohl der letz­te ex­pli­zi­te link auch schon wie­der zwei­ein­halb mo­na­te her ist (die blogrol­le, ich weiss). oder ein ein link von herr­paul.me (99 vi­sits im juni). 69 von riv­va.

das ist eine infogtrafik aus matomo die die besucher über die zeit zeigt. man sieht eine null-linie bis märz, die dann langsam auf 6000 pageviews im juni steigt
matomo grafik: besucher über die zeit

man sieht je­den­falls es geht auf­wärts, die uni­que pa­ge­views sind im juni dann auf ca. 6200 ge­klet­tert. da­mit be­fin­de ich mich auf schock­wel­len­rei­ter-ni­veau, der die­sen mo­nat auch ca. 6200 sei­ten­auf­ru­fe ge­mel­det hat. die top 5 ar­ti­kel in sa­chen sei­ten­auf­ru­fe im juni wa­ren:

such­ma­schi­nen-ver­kehr ist sehr, sehr mau, we­der von goog­le noch an­de­ren gab es viel lin­k­lie­be. das war vor 5 jah­ren noch an­ders und ich bin vor­sich­tig pes­si­mis­tisch und glau­be das bleibt jetzt erst mal ein paar jah­re so.


changelog 28.06.2025

felix schwenzel in über wirres

nach­dem ich ges­tern mat­thi­as pfef­fer­le auf/in (?) der blog­tas­tisch (via) ge­se­hen habe, fie­len mir ganz vie­le sa­chen ein, die ich ma­chen möch­te.

ich fand es in­ter­es­sant, wie er eine per­ma­link-url sei­nes no­tiz.blogs ko­pier­te und in ei­nem mast­o­don-cli­ent ins such­feld ko­pier­te. da­mit fand er den bei­trag, der dank sei­nes word­press aci­vi­ty-pub-plug­ins dann als li­ka­ble und sha­ra­ble ein­trag in sei­nem mast­o­don cli­ent auf­tauch­te.

(hört sich kom­pli­ziert an und ist es ir­gend­wie auch, wie al­les im fe­di­ver­se. ich lass mir das jetzt seit wo­chen von chatgpt und wohl­ge­son­ne­nen le­sen er­klä­ren und ka­pier nach wie vor nur die hälf­te und be­hersch die ter­mi­no­lie nach wie vor nicht.)

weil wir­res.net kein teil des fe­di­ver­se ist, klappt das bei mir na­tür­lich nicht. aber ich dach­te, wenn ich ei­nen RSS-ac­count auf mei­nem go­to­so­cial-dings an­le­ge auf dem ein­fach au­to­ma­tisch alle neu­en ein­trä­ge auf­tau­chen, könn­te das doch auch ge­hen. es zeigt sich (auf den ers­ten blick), dass das nicht geht, aber daüfr gibt’s jetzt ei­nen bot der mein rss ins fe­di­ver­se pumpt.

denkt man ja nicht, aber al­les was ich in mein go­to­so­cial/mast­o­don-kon­to @ix@wir­res.net schrei­be ist hand­ge­schnitzt. aber @rss@wir­res.net ist ein bot.

an­sons­ten war ich ein biss­chen über­rascht von mat­thi­as pfef­fer­les demo. als er ei­nen bei­trag sei­nes no­tiz.blogs in mast­o­don fav­te, mein­te er, dass er da­mit sei­en wor­press in­stanz „ab­schies­sen“ wür­de. die­ses fe­di­ver­se ge­schnat­ter scheint eine men­ge last und ver­kehr zu er­zeu­gen. ich habe mir dann kurz sor­gen ge­macht, ob die­ses go­to­so­cial so eine gute idee war oder ist, aber so­weit ich sehe scheint das nicht all zu sehr ins schwit­zen zu ge­ra­ten.

youtube-video laden, info, direktlink

das script, dass aus RSS-items ei­nen ein­trag auf go­to­so­cial macht hat chatgpt ge­schrie­ben. es brauch­te aber zwei stun­den de­bug­ging zu­sam­men­ar­beit mit mir, bis das feh­ler­frei lief. ich will nicht kla­gen, aber heu­te hat es sich schon ziem­lich doof an­ge­stellt.

ich woll­te fol­gen­de fea­tures ha­ben, die das script jetzt auch, so­weit ich sehe, er­füllt.

  • prü­fe alle 5 mi­nu­ten mei­nen rss feed
  • wenn es ei­nen neu­en bei­trag gibt baue ei­nen bei­trag aus der über­schrift, kür­ze den text auf 280 zei­chen, be­hal­te aber ein paar for­ma­tie­run­gen in mark­down bei, füge ei­nen link und das ers­te bild hin­zu (wenn das bild grös­ser als 500px ist)
  • pos­te nur ei­nen bei­trag je auf­ruf des scripts
  • mer­ke dir die ge­pos­te­ten ein­trä­ge

an­sons­ten hab ich ei­gent­lich nur ein biss­chen am css des go­to­so­cial the­mes ge­fum­melt. so rich­tig toll fin­de ich das nach wie vor nicht, vor al­lem seit­dem ich elk.zone als mast­o­don cli­ent nut­ze und da wirk­lich (im brow­ser) al­les sehr ge­schlif­fen aus­sieht.

screenshots der mastodon webclients elk.zone (links) und gotosocial (rechts). elk.zone sieht sehr geschliffen aus, gotosocial OK.
screenshots der mastodon webclients elk.zone (links) und gotosocial (rechts)

changelog 26.06.2025

felix schwenzel in über wirres

er­staun­lich ein­fach war die in­stal­la­ti­on von go­to­so­cial auf ei­nem as­te­ro­iden (doku). be­son­ders ge­fällt mir, dass go­to­so­cial mein haupt­pro­blem mit mast­o­don löst: das do­main-ge­döns.

schliess­lich nut­ze ich als blog­ad­res­se eben ge­ra­de nicht wir­res.word­press.com oder wir­res.blog­ger.de, son­dern eben wir­res.net. ich be­nut­ze email­ad­res­sen wie ix@wir­res.net oder fe­lix@schwen­zel.de. was je­weils da­hin­ter läuft, ist mei­ne ent­sch­ei­dung, hin­ter wir­res.net kann ez­pu­blish ste­cken, kir­by oder wenn mir ir­gend­wann mal da­nach ist — word­press. hin­ter ix@wir­res.net steckt der­zeit (noch) gmail, hin­ter fe­lix@schwen­zel.de ein uber­space mail­ser­ver.

und jetzt kann ich für fö­de­rier­tes pos­ten von mini-bei­trä­gen eben @ix@wir­res.net be­nut­zen — und der­zeit steckt da eben go­to­so­cial hin­ter, das zwar auf ei­ner sub­do­nain läuft, aber fein.

und wie zu er­war­ten, wa­ren die fol­ge-ar­bei­ten der um­stel­lung auf go­to­so­cial um ein mehr­fa­ches um­fang­rei­cher als die in­stal­la­ti­on. ei­ner­seits hab ich den um­zug noch nicht ab­ge­schlos­sen, bei­de hand­les @ix@mastdn.io und @ix@wir­res.net lau­fen noch pa­ralell, auch wenn ich mstdn.io nicht mehr zum pos­ten (aber schon zum re­pos­ten) nut­ze. es be­steht ja kei­ne eile mit dem um­zug (der fol­lower und der an­schlies­sen­den um­schal­tung auf nur-le­se­zu­griff von @ix@mstdn.io). (nach­trag 7:20: um­zug ab­ge­schlos­sen.)

aus­ser­dem muss­te ich viel von den rou­ti­nen mit de­nen wir­res.net mit mast­o­don in­ter­agiert an­pas­sen. ei­ner­seits hab ich mir et­was ge­baut, um toots hier ein­bet­ten zu kön­nen.

und ich sen­de mit mau­rice renks in­die­con­nec­tor bei­trä­ge, fo­tos au­to­ma­tisch von wir­res.net auf mei­ne mast­o­don in­stanz und hole um­ge­kehrt re­ak­tio­nen wie­der bei mast­o­don ab, um sie auf der ar­ti­kel-bei­la­ge zu auf­zu­lis­ten.

es zeigt sich, go­to­so­cial ver­hält sich da doch ein klein we­nig an­ders als mast­o­don. ab­fra­gen von bei­trä­gen per api …

GET https://<deine-Instanz-Domain>/api/v1/statuses/:id

… rückt go­to­so­cial nur mit au­then­ti­fi­zie­rung raus, mast­o­don auch ohne.

beim bil­du­pload ist go­to­so­cial sehr streng und funk­tio­nier­te nicht auf an­hieb mit dem in­die­con­nec­tor. bei api-ab­fra­gen be­steht go­to­so­cial aus­ser­dem auf ei­nem mit­ge­lie­fer­ten „user agent“. das muss­te al­les in kir­by an­ge­past wer­den.

bridgy, das ge­le­gent­lich re­ak­tio­nen aus so­zia­len netz­wer­ken zu­lie­fert, muss­te auch auf die neue mast­o­don-in­stanz ken­nen­ler­nen und zick­te zu­nächst ein biss­chen mit dem au­then­ti­fi­zie­rungs-work­flow.

aber ins­ge­samt fühlt sich das al­les wie eine rich­ti­ge und gute ent­sch­ei­dung an.

caching

zwi­schen­durch ge­merkt, dass auch die su­che sta­tisch ge­cached wur­de. das funk­tio­niert na­tür­lich nicht. also eine aus­nah­me de­fi­niert:

return [
 /* […] */
   'cache' => [
      'pages' => [
        'active' => true,
        'type' => 'static',
        'ignore' => fn ($page) => match (true) {
          str_contains($page->uri(), '/suche') => true,
          default => false
        }
      ],
      'beilage' => [
        'type' => 'file',
        'root' => __DIR__ . '/../cache/beilage'
      ]
    ],
/* […] */
]

home as­sistant

seit ich wie­der blog­ge küm­me­re ich mich kaum noch ak­tiv um die heim­au­to­ma­ti­sie­rung. mein hob­by, die fum­me­lei, wid­me ich zur zeit kom­plett kir­by und dem web. es zeigt sich aber: die au­to­ma­ti­sche woh­nung läuft mitt­ler­wei­le auch ohne auf­sicht ganz gut vor sich hin. eine up­time (ohne re­start) von > 30 ta­gen steckt das sys­tem gut weg, ge­le­gent­lich muss ich mal eine klei­nig­keit an­pas­sen, aber das steht meis­tens un­ter dem mot­to der re­geln num­mer eins und zwei der heim­au­to­ma­ti­sie­rung:

  • au­to­ma­ti­sie­re al­les was du mehr als drei­mal wie­der­holst und dich nervt — um es dann zu ver­ges­sen.
  • wenn et­was öf­ter als drei­mal nicht funk­tio­niert, pas­se die au­to­ma­ti­sie­rung an — um es dann zu ver­ges­sen.

kon­kret wa­ren das der gar­di­nen­schal­ter der die au­to­ma­ti­sie­rung dop­pelt aus­lös­te und die hit­ze die mich wie­der­holt nerv­te. also schnell die au­to­ma­tis­e­rung an­ge­passt und den ven­ti­la­tor wie­der ak­ti­viert (was ein zwei ar­beits­schrit­te im ho­me­as­sistant da­sh­board er­for­dert). ach ja, die op­ti­mie­rung der licht­si­tua­ti­on von gäs­ten die im wohn­zim­mer über­nach­ten hab ich auf­ge­scho­ben und an zwei aben­den ein­fach ma­nu­ell übers da­sh­board ge­macht, statt es zu au­to­ma­ti­sie­ren.


ich habe mich ant­schie­den, ent­ge­gen der ers­ten an­küpn­di­gung ge­le­gent­lich ch­an­ge­logs auch im haupt­feed und auf der haupt­sei­te zu ver­öf­fent­li­chen wenn mir da­nach ist. und mit die­sem chage­log war mir da­nach.


[nach­trag]
habe eben den um­zugs­but­ton auf https://mstdn.io/@ix ge­drückt und bin da jetzt weg.

  • alte bei­trä­ge (bei­spiel) lie­gen wei­ter­hin dort, in­klu­si­ve al­ler li­kes und re­posts, aber auch hier (bei­spiel).
  • mei­ne foll­woer­zahl dort war vor­her so um die 1030, jetzt sind es nach dem um­zug 980. das sind of­fen­bar we­ni­ger tote kon­ten, als ich dach­te
  • am 4. april 2017 habe ich mir mein kon­to bei mstdn.io ein­ge­rich­tet, wirk­lich ge­nutzt hab ichs erst seit 2022

changelog 22.06.2025

felix schwenzel in über wirres

kom­men­ta­re

mit die­ser ein­stel­lung wer­den jetzt kom­ment­re von „ve­ri­fi­zier­ten“ be­nut­zern di­rekt frei­ge­schal­tet. mit an­de­ren wor­ten, je­der, der hier schon mal mt dem neu­en sys­tem kom­men­tiert hat (3 men­schen, in­klu­si­ve mir).

'mau­rice­renck.komm­ents.mo­de­ra­ti­on.pu­blish-ve­ri­fie­d' => true,

aus­ser­dem habe ich kir­by bei­ge­bracht mails zu ver­sen­den, push ist manch­mal doch bes­ser als pull, vor al­lem be­kom­me ich so be­nach­rich­ti­gun­gen über neue (zu mo­de­rie­ren­de) kom­men­ta­re, was et­was prak­ti­scher ist als nach zu se­hen.

go­to­so­cial

noch­mal die uber­space in­stal­la­ti­ons­an­lei­tung für go­to­so­co­al durch­ge­le­sen, die go­to­so­cial-doku na­tür­lich auch. ins­ge­samt scheint mir das im­mer noch ein or­dent­li­cher bro­ken zu sein. ich ro­tie­re ja schon kir­by am la­fen zu hal­ten, bald steht ein grös­se­res kir­by up­date an, das ich zu­min­dest mal prü­fen muss und dann ge­ge­be­nen­falls 10 oder 20 jah­re ver­zö­gern wer­de. oder eben nicht. je­den­falls scheint es mir ge­ra­de zu viel noch eine ad­min-auf­ga­be zu über­neh­men, auch wenns nur für mich ist.

aber im­mer­hin hab ich mir über­legt, wel­che do­main ich nut­ze (ir­res.net oder w.ir­res.net) und weil ich vor kur­zem mei­ne uber­space-as­te­ro­iden in ei­nem kon­to mit mail-an­mel­dung „kon­so­li­diert“ habe, soll­te es auch kein pro­blem ei­nen test-go­to­so­cial-as­te­ro­iden hoch­zu­fah­ren und ge­ge­be­nen­falls wie­der zu lö­schen.


changelog 21.06.2025

felix schwenzel in über wirres

ich habe mich ent­schie­den mei­ne an­pas­sun­gen hier ein we­nig zu do­ku­men­tie­ren. ich lis­te die­se ch­an­ge­logs nicht auf der haupt­sei­te und im RSS feed, lin­ke aber ge­le­gent­lich aus der haupt­sei­te auf sie. ich ver­mu­te das in­ter­es­si­ert nicht so vie­le leu­te, was ich hier im ma­schi­nen­raum trei­be. ka­te­go­rie bleibt die gute alte über wir­res ka­te­go­rie und ver­schlag­wor­tet wer­den die ch­an­ge­logs na­tür­lich mit #ch­an­ge­log.


cache

der stan­dard­mäs­si­ge file cache von kir­by hat ei­gent­lich ganz gut funk­tio­niert. al­ler­dings lief wei­ter­hin al­les über php und da­mit ein biss­chen lag­gy. die uber­space hosts schei­nen mir nicht irre per­for­mant zu sein, so­wohl von der cpu-leis­tinmg als auch vom RAM. und wenn ich dann ge­le­gen­tich den me­dia-ord­ner mit den vor­ge­ne­rier­ten thum­nails lö­sche und die sei­ten neu ge­r­en­dert und ge­cached wer­den, merkt man schon wie die VM ins schwit­zen ge­rät und ge­le­gent­lich den PHP pro­zess killt.

je­den­falls bin ich drauf ge­kom­men als ich merk­te, dass die site­map.xml nicht ge­cached ist. die ge­ne­rie­rung ist eher auf­wän­dig und bots war­ten nicht ger­ne, bzw. soll­ten ei­gent­lich kei­ne über­flüs­si­ge last er­zeu­gen. die site­map liess sich ir­gend­wie nicht beim ers­ten ver­such mit dem fil­e­cache si­chern, wes­halb ich bei der wei­te­ren re­cher­che auf sta­tic­cache stiess.

This plug­in will give you the per­for­mance of a sta­tic site ge­ne­ra­tor for your re­gu­lar Kir­by in­stal­la­ti­ons. Wi­t­hout a huge set­up or com­plex de­ploy­ment steps, you can run your Kir­by site on any ser­ver – cheap shared hos­ting, VPS, you name it – and enable the sta­tic cache to get in­cre­di­ble speed on de­mand.

Rough bench­mark com­pa­ri­son for our Star­ter­kit home page:

Wi­t­hout page cache: ~70 ms
With page cache: ~30 ms
With sta­tic cache: ~10 ms

nach ers­ten tests konn­te ich die wer­te grob be­stä­ti­gen. mit dem sta­tic cache (in kom­bi­na­ti­on mit dem brow­ser-cache) sind die sei­ten ex­trem snap­py. der trick ist, dass die ge­cach­ten sei­ten gar nicht mehr über php lau­fen, über die web­ser­ver-kon­fi­gu­ra­ti­on wer­den cache-da­tei­en di­rekt auf­e­g­ru­fen wenn sie ge­ne­riert wur­den.

das funk­tio­niert für alle sei­ten ganz gut, auch die siz­te­map.xml oder die rück­sei­te, aber we­der mit dem al­ten file cache noch dem sta­tic cache ist es mir ge­lun­gen pa­gi­nier­te sei­ten zu cachen. das be­trifft ar­ti­kel-, tag-, ka­te­go­rie- und ar­chiv-sei­ten. da gibt’s noch ein biss­chen ar­beit.

an­de­re caching an­pas­sun­gen

beim caching der bei­la­gen sei­ten hat­te ich auch schon­mal ei­nen ex­pli­zi­ten file-cache ge­baut. der ging aber mit der um­stel­lung auf sta­tic cache ka­putt. aber im­mer­hin kann man meh­re­re caches in der con­fig.php par­al­lel de­fi­nie­ren:

    'cache' => [
      'pa­ge­s' => [
        'ac­ti­ve' => true,
        'ty­pe' => 'sta­tic',
        'i­gno­re' => fn ($page) => match (true) {
          str_con­ta­ins($page->uri(), '/riv­va') => true,
          de­fault => fal­se
        }
      ],
      'bei­la­ge' => [
        'ty­pe' => 'fi­le',
        'roo­t' => __DIR__ . '/../cache/bei­la­ge'
      ]
    ],

so rich­tig zu­frie­den bin ich noch nicht mit dem bei­la­gen-caching, die sei­ten sind ja qua­si dy­na­misch und wer­den des­halb vom sta­tic cache aus­ge­schlos­sen.
aber was mitt­ler­wei­le wirk­lich spass macht: auf ei­ner ar­ti­kel­sei­te j oder k auf der tas­ta­tur drü­cken und in win­des­ei­le zum vor­he­ri­gen oder nächs­ten ar­ti­kel ge­lan­gen. das geht auch des­halb snap­py, weil ich auf den ar­ti­kel sei­ten drei pre­fet­ches in den hea­der ge­setzt habe:

<link rel="pre­fetch" href="https://wir­res.net/ar­tic­les/ipom­pi­dou/bei­la­ge" as="do­cu­ment">
<link rel="pre­fetch" href="https://wir­res.net/ar­tic­les/fruh-und-spat­spa­zier­gang-am-20-6-2025" as="do­cu­ment">
<link rel="pre­fetch" href="https://wir­res.net/ar­tic­les/mor­gen­spa­zier­gang-vom-19-6-2025" as="do­cu­ment">

kom­men­ta­re

auf der bei­la­gen-sei­te (bei­spiel) kön­nen jetzt kom­men­ta­re ab­ge­ge­ben wer­den. al­les mit mau­rice renks komm­ents-plug­in um­ge­setzt. die kon­fi­gu­ra­ti­on war in­iti­al et­was fum­me­lig, un­ter an­de­rem hät­te ich auf mehr­spra­chig­keit um­schal­ten sol­len um die platz­hal­ter und for­mu­lar-be­zeich­nun­gen über die con­fig.php an­zu­pas­sen zu kön­nen. das hab ich auch mal kurz ge­macht und ge­staunt, was da­bei al­les ka­putt geht. also snip­pet aus dem plug­in in ein ei­ge­nes ver­zeich­nis ko­pie­ren und dort an­pas­sen. CSS war auch noch et­was fum­me­lig, funk­tio­niert aber so­weit.

mit hil­fe von chatgpt war da­nach der kom­men­t­aro­mat eine sa­che von 10 mi­nu­ten. auch das css hat es auf nach­fra­ge sehr gut hin­be­kom­men.

wie man die frei­schal­tung der kom­me­n­at­re über eine mo­de­ra­ti­ons­schlei­fe de­ak­ti­viert habe ich noch nicht her­aus­ge­fun­den, aber das kommt auch noch. bis da­hin: mo­de­rie­ren.


css-zauberei

felix schwenzel in über wirres

ich freue mich sehr über css. das ist ein sehr merk­wür­di­ger satz, der aber stimmt. je­den tag freue ich mich, dass ich eine der we­ni­gen sa­chen die ich wäh­rend mei­nes ar­chi­tek­tur­stu­di­ums ge­lernt habe — oder eher, dass ich eine der we­ni­gen sa­chen die mir wich­tig ge­nug er­schie­nen um sie mir zu mer­ken — hier im blog im­mer wie­der an­wen­den kann:

sa­chen in wür­de ka­putt ge­hen las­sen. oder wie man auch in der IT sagt: to de­gra­de graceful­ly.

mau­er­werk ist so ein ding das wür­de­voll ka­putt­ge­hen kann. eine zie­gel­mau­er sieht auch als rui­ne noch gut aus. vor­hang­fas­sa­den, glas­fas­sa­den tun das nicht.

so­was hier

screenshot eines tröts von max von w. wie er mit css im browser gerendert wird

ist ei­gent­lich nur ein <block­quo­te>, so sieht das dann ohne (oder mit we­ni­ger) css aus.

screenshot des gleichen tröts von max von w., wie er ohne css aussähe

aber das man ein html-zi­tat mit ein biss­chen css eben so wie oben aus­se­hen las­sen kann, das freut mich je­den tag aufs neue. oder ges­tern, als mir mei­ne mut­ter eine nach­richt schick­te und ich dach­te: screen­shot pos­ten und was dazu schrei­ben — bis mir ein­fiel: war­um nicht css? dann sah das so aus:

screenshot eines artikel-anfangs auf wirres.net mit einem blockquote, das mit css wie eine imessage gestylt ist

auch die bubble ist ein ein­fa­ches block­quo­te, das ohne css, zum bei­spiel im rss-feed, wür­de­voll ka­putt geht.

wen so­was nicht be­geis­tert, der schreibt wahr­schein­lich nicht selbst ins in­ter­net — oder nutzt word­press.

aber das al­ler­bes­te, die­se welt der css-ma­gie steht auch mir als css-voll­pfos­ten of­fen, dank LLMs. CSS-ma­gie ist näm­lich et­was, was die wirk­lich gut kön­nen.

jetzt bit­te wei­ter­blät­tern. dan­ke für die kur­ze auf­merk­sam­keit.


rezepte jetzt strukturiert und organisiert

felix schwenzel in über wirres

ich weiss, ich schrei­be in letz­ter zeit sehr häu­fig aus dem #ma­schi­nen­raum. aber das liegt auch dar­an, dass ich dort ge­ra­de sehr viel zeit ver­brin­ge und dort auch sehr ger­ne bin. nach­dem ich ges­tern in­ner­halb von 30 mi­nu­ten mit hil­fe mei­nes neu­en kol­le­gen¹⁾ ei­nen pro­to­ty­pen lau­fen hat­te, hab ich den rest des ta­ges da­mit ver­bracht re­zep­te (wie­der) ma­schi­nen­les­bar, struk­tu­riert und an­sehn­lich hier ver­öf­fent­li­chen zu kön­nen.

ich wer­de ja nicht müde dar­auf hin­zu­wei­sen, dass man sei­ne web­sei­ten nicht für such­ma­schi­nen op­ti­mie­ren soll, son­dern für men­schen, aber bei re­zep­ten und vie­len an­de­ren web­sei­ten-de­tails gibt es mar­kan­te schnitt­men­gen. und in­hal­te struk­tu­riert an­zu­bie­ten dient der les­bar­keit und er­mög­licht die nut­zung von wek­zeu­gen. re­zept-scra­pern zum bei­spiel. im all­tag nut­ze ich sehr oft mela, da­drin sind alle mei­ne wich­tigs­ten re­zep­te. frü­her™ zu weih­nach­ten ha­ben wir die re­zep­te für die fleisch-fon­due-sos­sen im­mer in ei­nem gros­sen ord­ner ge­habt. die sind jetzt alle in mei­ner icloud und ich kann vom han­dy oder ipad je­der­zeit drauf zu­grei­fen. mela macht es ein­fach re­zep­te ein­zu­le­sen, es lässt sich von kaum ei­ner web­sei­te ab­schre­cken und auch re­zept­bü­cher kann es sinn­voll per ka­me­ra ein­scan­nen und ver­text­li­chen. eine wah­re kil­ler-app.

ich habe aber be­merkt, dass ich auch in den jah­ren vor mei­ner blog­pau­se zwar re­gel­mäs­sig bis oft mein es­sen ge­teilt habe (ge­kocht), aber we­nig rich­ti­ge re­zep­te ver­öf­fent­licht habe habe. das will ich jetzt än­dern, bzw. et­was struk­tu­rier­ter an­ge­hen.

  • ei­ge­ne ka­te­go­rie in der „ech­te“ re­zep­te ste­hen — und die ich re­gel­mäs­sig fül­le und nach­pfle­ge
  • alle re­zep­te sind (grob) nach dem sche­ma.org/Re­ci­pe sche­ma struk­tu­riert und wer­den (auch) als json-ld aus­ge­ge­ben — mi­cro­for­ma­te muss ich noch ein­bau­en
  • weil mela auch rss-feeds le­sen kann, ist mei­ne ziel­vor­stel­lung (ich mach das ja al­les vor al­lem für mich selbst):
    • neue re­zep­te, die ich aus­pro­biert habe und die mir ge­fal­len, ver­blog­ge ich
    • mela liest die re­zep­te aus dem RSS-feed ein und spei­chert sie dann per­sis­tent auf mei­nen ge­rä­ten
  • ei­ge­nes re­zep­te-wid­get/über­sichts-dings auf der rück­sei­te (todo)

das heisst ich wer­de ei­nen rss feed nur für die ka­te­go­rie re­zep­te an­bie­ten, den man dann in mela abon­nie­ren kann. aber ge­nau wie mi­cro­for­ma­te ist das noch auf der todo lis­te.

vor 13 jah­ren hab ich das mit den struk­tu­rier­ten da­ten schon mal ex­pe­ri­men­tell mit mei­nem al­ten CMS hin­ge­bas­telt, für den gur­ken­sa­lat nach tim mäl­zers oma²⁾ — das hat die mi­gra­ti­on zu kir­by nicht über­lebt, bzw. muss­te ein­fach neu ge­baut wer­den. das hab ich jetzt nach­ge­baut und wer­de, wie ge­sagt, re­zep­te auch nach­pfle­gen. weil das an­le­gen von struk­tu­rier­ten re­zep­ten mit ez­pu­blish da­mals et­was be­schwer­lich war, habe ich das nach dem gur­ken­sa­lat auch nicht wie­der ge­macht, son­dern re­zep­te, wenn über­haupt, auf der schrift­spur ver­öf­fent­licht.


fuss­no­ten:
1) chatGPT
2) die sah­ne kann man auch weg­las­sen, bzw. mit öl er­set­zen


j/k (webwanderungen KW18)

felix schwenzel in über wirres

eins der fea­tures das ich vom al­ten wir­res.net aus pre-kir­by-zei­ten am meis­ten ver­misst habe ist die na­vi­ga­ti­on mit den j/k tas­ten. ich ver­mu­te zwar, dass aus­ser mir nie­mand dar­an in­ter­es­siert ist oder so­was nutzt, aber wir­res.net konn­te das mehr oder we­ni­ger seit 15 jah­ren.

da­mals™ habe ich das mit ei­nem jquery plug­in ge­macht, ob ich das hier be­nutzt habe oder was an­de­res weiss ich auch nicht mehr. ich weiss aber, dass ich das im­mer wahn­sin­nig nütz­lich fand und mich bis heu­te fra­ge, war­um das nicht viel wei­ter ver­brei­tet ist. tat­säch­lich fal­len mir ak­tu­ell nur zwei web­sei­ten ein, auf de­nen das noch funk­tio­niert: gmail und duck­duck­go — und jetzt wie­der wir­res.net, zu­min­dest auf über­sicht­sei­ten.

wäh­rend die­ses 15 jah­re alte jquery-plug­in auch nur 2 kb gross ist, wiegt jquery mi­ni­fi­ziert auch noch­mal 32 kb. als ich vor ei­nem mo­nat an­fing wir­res.net mit kir­by wie­der neu auf­zu­bau­en, war un­ter mei­nen ers­ten fra­gen an goog­le …

die ant­wor­ten auf die zwei­te fra­ge wa­ren mir da­mals zu kom­pli­ziert, bzw. ver­lang­ten zu viel ja­va­script-know-how von mir, um das da­mals um­zu­set­zen. ges­tern Nacht um 2 uhr fiel mir die fra­ge wie­der ein und ich frag­te — chatGPT. die ant­wort war 1,6 kb lang und funk­tio­niert ein­wand­frei und va­ni­la, also ohne ein js-frame­work.

und wo ich ge­ra­de da­bei war, hab ich chatGPT noch ge­fragt wie ich mit der x-tas­te die start­sei­te, bzw. ar­ti­kel­über­sich­ten kom­pakt an­zei­gen las­sen kann, das geht mit neun zei­len code.

tl;dr: man kann auf der start­sei­te und über­sicht­sei­ten jetzt mit j/k na­vi­gie­ren oder kurz­zei­tig alle ar­ti­kel mit x ge­kürzt an­zei­gen.

p.s.

ich bin völ­lig baff, wel­che fort­schrit­te ja­va­script und css seit dem letz­ten mal, wo ich mich in­ten­si­ver da­mit be­schäf­tigt habe, ge­macht ha­ben. ges­tern nacht fiel mir auch ein zu fra­gen ob und wie man bil­der per css schwarz weiss ma­chen kann. geht!

img {
  filter: grayscale(100%);
}

ich weiss nicht ob das nor­mal ist, aber mich be­geis­tert so et­was sehr. es gibt noch so viel aus­zu­pro­bie­ren und zu bas­teln um die­ses nest hier im web wohn­lich zu ma­chen.

p.p.s.

heu­te früh vorm spa­zie­ren ge­hen hab ich mich ge­fragt, ob man mit dem kir­by struk­tur fel­dern nicht ziem­lich ein­fach se­man­tisch kor­rek­te und ma­schi­nen­les­ba­re re­zep­te (zum nach­ko­chen) bau­en kann. kann man, chatGPT spuck­te mir we­ni­ge zei­len blue­print und tem­p­la­te code aus, mit de­nen ich nach 10 mui­nu­ten ei­nen funk­tio­nie­ren­den pro­to­ty­pen hat­te. beim the­ma re­zep­te im json-ld- oder in mi­cro­for­mat tref­fen sich die bei­den vek­to­ren SEO-op­ti­mie­rung und nut­zer-op­ti­mie­rung per­fekt. weil re­zept-schleu­dern wie chef­koch.de ger­ne vor­ne in den goog­le-such­ergeb­nis­sen ste­hen möch­ten, sind alle re­zep­te auf chef­koch.de per

<script type="application/ld+json">
{
    "@context": "http://schema.org",
    "@type": "Recipe",
    // […]
}
</script>

aus­ge­stat­tet. das hat zur fol­ge, dass ich mehr oder we­ni­ger je­des re­zept das ich je­mals ge­goo­glet und zu un­se­rer be­frie­di­gung nach­ge­kocht habe auch ein­fach und ver­lust­frei in mela im­por­tie­ren kann. war­um mela so toll ist, hab ich hier mal vor zwei jah­ren er­klärt.


23 jahre wirres.net

felix schwenzel

in den letz­ten 23 jah­ren habe ich je­den ein­zel­nen blog-ge­burts­tag ver­passt. na­tür­lich habe ich ge­le­gent­lich über das (blog) al­ter ge­spro­chen, aber ju­bu­läums-ar­ti­kel habe ich, glau­be ich, nie ge­schrie­ben (und ir­gend­wie auch al­bern ge­fun­den). aber das lässt sich ja än­dern …

voi­là hier ist jetzt ein ju­bi­lä­ums-ar­ti­kel, weil der ers­te un­ter der do­main wir­res.net ver­fass­te ar­ti­kel am 20.04.2002 ver­öf­fent­licht wur­de. und das ist nach mei­ner be­rech­nung — und der von car­bon — jetzt 23 jah­re her.

aber na­tür­lich ist das im grun­de to­tal egal, weil ich schon viel frü­her das be­dürf­nis hat­te ins in­ter­net zu schrei­ben, wie ich kürz­lich in „30 jah­re blog­gen“ er­wähnt habe. trotz­dem: auf die nächs­ten jah­re.

und in den nächs­ten jah­ren wird’s viel­leicht auch in­ter­es­sant, denn in 29 jah­ren bin ich so alt, wie mein va­ter heu­te ge­wor­den ist. in acht oder neun jah­ren wer­de ich 25 jah­re lang als ar­beits­kol­le­ge mit das­nuf ge­ar­bei­tet ha­ben. in elf jah­ren wer­de ich mein ren­ten­al­ter er­reicht ha­ben — und so wie es aus­sieht, kann man auch im ren­ten­al­ter noch le­sens­wer­tes ins in­ter­net schrei­ben. und in acht jah­ren wer­de ich 25 jah­re mit der bei­fah­re­rin ver­hei­ra­tet sein. (den tag mei­nes hoch­zeits­tag kann ich mir gut mer­ken, weil wir hei­lig­abend in las ve­gas ge­hei­ra­tet ha­ben, aber das jahr konn­te ich mir nie mer­ken. jetzt kann ich die site-su­che be­nut­zen um mei­nen hoch­zeits­tag zu fin­den.)

las vegas, 24.12.2008