Hank en Kittekat

Een nerdpost voor de liefhebbers

Slopen en gravenEr werd geklaagd dat mijn postjes te dweperig werden, of in elk geval dweperige reacties uitlokten. Tijd voor een ouderwetse nerdpost dus. Helaas, voor diegene die niet van nerdpraat houdt, ik heb even geen recept voor je; alle recepten die ik ken heb ik al eens opgeschreven. Maar, omdat ik bijna zeker weet dat je een vrouw bent, hier een videootje van mijn schattige dochter. Terug naar de nerdpraat.

Zoals je misschien wel weet heb ik een tijdje terug mijn fotosite weer eens helemaal omgekat. Over het eerste stadium van omkatten en live-zetten heb ik elders al eens een postje geschreven, hier ga ik het hebben over optimalisatie en de nasleep van zo’n ingrijpende omkat. Er komt namelijk best wel wat kijken bij het herstructureren van een flinke berg foto’s. Ik ben de laatste tijd vooral bezig geweest om de oude pagina’s door te sturen naar de nieuwe, ik was er nogal wat vergeten. Verder heb ik nog wat kleine grafische aanpassingen gedaan, ik heb de site wat extra geoptimaliseerd voor zoekmachines (de volgorde van de HTML aangepast, meta descriptions toegevoegd), ik heb een histogram toegevoegd bij elke foto voor de fotonerds onder de bezoekers, wat tekstjes aangepast (vooral nadat Kittekat geërgerd opmerkte dat er wel erg veel spelfouten in de teksten stonden), natuurlijk flink wat nieuwe foto’s er bij gezet en de site een stuk sneller gemaakt (minder redirects, minder calls naar de database, gzip, zo mogelijk caching, geen javascript, weinig css, zo goed als geen grafische plaatjes).

Maar nu het leukste nerdding wat ik heb gemaakt.
Met een simpel php scriptje toverde ik onderaan de pagina mijn laatste 4 videootjes op Vimeo tevoorschijn. Daar was ik al aardig trots op. Alleen is Vimeo wel eens wat traag wat er voor zorgde dat mijn homepage ook erg traag werd. Tijd voor een uitgebreider scriptje.

Ik heb een script geschreven (of eigenlijk, delen van scripts gecopypaste van verschillende sites) wat de thumbnails van Vimeo op mijn eigen server opslaat en die dan toont. Simpel gezegd. Het zit iets complexer in elkaar.

Allereerst checkt het script of er een plaatje op mijn server staat met dezelfde naam als de thumbnail op Vimeo. Zo niet, dan maakt hij dat plaatje. Vervolgens genereert het script de nodige HTML voor de 4 thumbnails en slaat dat op in een extern bestand. Dat bestand wordt geïnclude op de homepage. Het grote voordeel hiervan is natuurlijk dat er vanaf de homepage geen verbinding meer nodig is met Vimeo, de laadtijd van mijn site is dus niet meer afhankelijk van de bereikbaarheid van Vimeo. Maar het nadeel is natuurlijk dat de thumbnails niet meer automatisch ververst worden zodra ik een nieuw filmpje heb geplaatst op Vimeo.

Hier heb ik een paar simpele maar niet echt real-time oplossing voor gevonden. De eerste is natuurlijk om het script handmatig te runnen. De tweede, en die vind ik best briljant, is om het werk te laten doen door de Goolgebot. Het script wordt dus gelinkt vanuit een XML sitemap zodat google hem regelmatig even bezoekt. Ik heb hem een hoge prioriteit gegeven en gelogen dat ie elke dag ververst wordt. Ben benieuwd of het gaat werken. Morgen even een nieuw filmpje maken.

  1. Heerlijke nerdpost, Hank. Kan dat histogram misschien ook in gif of png? Dat is kleiner en mooier.
    Dat van die Googlebot is best briljant, maar als het niet werkt dan kun je waarschijnlijk ook wel cronjobs runnen op je server.

  2. Fijne nerdpost Hank, goed idee en vooral erg grappig.

  3. Ik zal eens kijken of dit servertje ook png of gif kan maken. Het was mij ook al opgevallen dat het histogramscriptje jpg’s maakt.

  4. Het zijn nu png’s en ze zijn inderdaad veel kleiner. Een nadeel, nu, is dat alle histogrammen nu opnieuw gegenereerd moeten worden. En dat gebeurt pas als de pagina bezocht wordt. Meer dan 400 foto’s bezoeken zodat ze gasten geen vertraging oplopen, dat moet handiger kunnen. Inderdaad. De Firefox plugin ‘Dust-me Selectors’ kan je hiervoor misbruiken door hem de sitemap te laten spideren op zoek naar ongebruikte stijlen in je stylesheet.

  5. Van zwijmelen in Venetië naar Cron is wel een heel grote stap.

  6. Groot gelijk heb je, ikiro. Daarom ga ik ook geen gebruik maken van cron, maar wel van alle zoekbots, in plaats van alleen googlebot.
    De specifieke sitemap wordt nu in de robots.txt gelinkt. Nu zullen alle bots mijn vimeo-update-scriptje bezoeken.
    De datum die in de sitemap staat komt nu overeen met het laatste plaatje van vimeo, als ie bestaat. Anders is het de datum van het bezoek.
    Doordat nu alle bots, ook supervlijtige zoals yahoo, dit script gaan bezoeken wordt het hopelijk ook nog nuttig.

  7. Juist.

    Nog gefietst in Venetië?

  8. Ik moet in Venetië gaan wonen besef ik me nu. Daar word ik niet voor lui uitgemaakt als ik nooit fiets.

  9. Hier is nog een filmpje voor ikiro:

    http://vimeo.com/2365273

  10. (Voor de volledigheid, het vimeoscriptje wordt nu direct vanuit de sitemap aangeroepen. MSN-bot heeft hem al bezocht. Het werkt dus!)

  11. olo, het is idd goed fietsen in Berlijn.

  12. Tsss, onhandige prutsor die ik ben. Waarom makkelijk doen als het moeilijk kan? dacht ik het hele weekend. Terwijl de oplossing zo simpel is.
    De meest bezochte pagina van mijn site is robots.txt. Da’s ook nog eens een pagina die er nauwelijks toe doet, geen mens die hem ooit bekijkt, alleen bots kijken er graag naar. Ik genereesr robots.txt nu vanuit een php file die ook meteen de vimeo update, als dat nodig is.

  13. :pl0rg:!

  14. Slim bedacht. Deze ga ik onthouden. Moeten er dan nog credits in de comments…

  15. Credits voor iets wat je zelf kunt verzinnen? Lijkt me niet echt nodig.

  16. Dat histogrammetje bij elk plaatje is wel een tof extraatje *noteert het op zijn doe-lijstje*