Netsensei

Much Ado About Nothing

Wordpress

Een tijdelijk theme, een experiment

Na 4 jaar heb ik mijn op maat gemaakte theme ingeruild voor een het standaard Twenty Twenty theme dat mee met WordPress wordt geleverd. De directe aanleiding? Een experiment rond optimalisatie voor zoekmachines. En in tweede instantie ook een aanzet om even na te denken hoe ik verder wil met mijn blog.

Alles begon dit voorjaar. Ik merkte toen al enige tijd dat dit artikel zowat alle verkeer naar mijn blog trok. Blijkt dat ik het derde zoekresultaat ben als je zoekt op “van proximus naar telenet“. Mooi, maar wat me echt opviel was dat de rest van mijn blog niet terug te vinden was in de zoekresultaten op andere trefwoorden. En een zoekactie op ‘site:netsensei.be’ leerde mij dat hoofdzakelijk de ‘tag’ overzichtspagina’s nog aanwezig waren.

En dus ben ik de laatste maanden af en aan wat aan het sleutelen geweest terwijl ik met de Google Search Console oog probeerde te houden op hoe de Google Bot reageerde. Ik heb onder de motorkap wat verbeteringen aangebracht qua performantie. Ik heb de sitemap liefde gegeven. En ik heb wat tweaks aangebracht in de meta tags om de zoekrobots ter wille te zijn. Helaas, niks lijkt echt te helpen.

Een groter probleem is dat de Google Search Console noch andere tools zoals Google Lighthouse je vlak af zullen zeggen wat het probleem precies is. Ergens is dat ook wel logisch. Google wil immers niet dat handigaards het systeem uitbuiten en zo overal de eerste plaats in de zoekresultaten inpalmen. Alleen, daardoor is het lastig voor bonafide website beheerders om ervoor te zorgen dat hun website beantwoordt aan Google’s vage eisen.

En dus, na eliminatie, vermoed ik dat een en ander te maken heeft met de HTML en CSS van mijn eigen theme. Die is ondertussen ook al weer een dikke 4 jaar oud. Een kleine eeuwigheid is dat in de wereld van de technologie. Bij wijze van experiment schakel ik tijdelijk over op het standaard theme van WordPress om dan na te gaan welke impact dat heeft op Google’s zoekresultaten. Het is een beetje de botte bijl, maar op dit punt is dat wel gerechtvaardigd denk ik.

De andere reden is de aanzet om even na te denken over waar ik naartoe wil. Een website bouwen en technisch onderhouden is leuk, maar ergens hoor je die wel regelmatig van updates en inhoud te voorzien. Anders houdt het ook wel op een gegeven moment op. Ten andere gaat deze blog mee sinds 2005. Het is leuk om mijn jongere zelf terug te lezen. Maar ik tegelijk ben ik nu in een ander hoofdstuk in mijn leven aanbeland. Ik worstel wat met de vraag in welke richting ik met mijn blog heen wil. Het is ook een vraag die ik onbeantwoord voor mij uit heb geschoven. En dus is deze back to basics ook voor mij even het moment om even na te denken over de toekomst van dit journaal.

WordPress Calypso

Dit berichtje werd geschreven en geplaatst via WordPress Calypso. Als je dit leest, dan betekent dat alles werkt zoals het zou moeten.

Wat is WordPress Calypso?

Normaal log je via je browser in op je WordPress site en dan sla je van daaruit aan het schrijven, bewerken, beheren en configureren. Dat werkt zo reeds jaar en dag en dat werkt fantastisch. Een probleem is dat het niet zo evident is om de gebruikersinterface van WordPress zonder meer te moderniseren. Dat vraagt zowel van gebruikers als van de makers van WordPress geweldig veel tijd en inspanning. Waarom? Omdat blogging software waar een massa mensen dagelijks mee aan de slag gaan, altijd, betrouwbaar moeten kunnen werken. En browsers zijn nu net een notoir lastig beestje om een dergelijke oefening tot een goed einde te brengen.

De heren en dames van Automattic bleven natuurlijk niet stil zitten. Ze lanceerden vorig jaar een aparte desktop toepassing: Calypso. Het is een aparte programma dat ik zonet op mijn (quasi) nieuwe Windows 10 battlestation heb geïnstalleerd. Calypso laat mij toe om mijn blog te beheren zonder dat ik daaarvoor via een browser moet inloggen. De interface oogt een stuk moderner en biedt een aantal extra mogelijkheden. Ik kan meerdere sites tegelijk beheren, de interface om artikels te schrijven is sterk vereenvoudigd en alles reageert enorm performant. Zodra ik op de ‘publish’ knop duw, maakt Calypso verbinding met mijn blog en publiceert volautomatisch dit stukje in mijn plaats.

De eerste use case van Calypso is het beheer van WordPress.com blogs. Maar ook self-hosted blogs – zoals deze – kan je met Calypso beheren. Je moet dan wel Jetpack installeren en over een WordPress.com account beschikken. Verder is het een kinderlijk eenvoudig: je opent Calypso, logt in met je WordPress.com gegevens en je kan starten. Dat Calypso niet rechtstreeks met je self-hosted blog communiceert maar via het WordPress.com platform gaat, is meteen ook mijn grootste kritiek op deze toepassing: het is opnieuw een afhanklijkheid van een gecentraliseerde silo. Een dergelijk anti-patroon zie ik persoonlijk liever niet in een product omwille van privacy en een rist andere redenen. Stel dat het WordPress.com platform straks uit valt, dan zal Calypso ook niet of niet helemaal meer werken. Vanuit business perspectief zie ik de opportuniteit wel om het zo te doen – aanmoedigen van gebruik van het platform – maar voor individuele gebruikers kan dat wel eens nadelig uitvallen.

Hoe dan ook, buiten dat ik niet meer moet inloggen via een browser, moet ik nog ondervinden of Calypso uiteindelijk echt iets voor mij zal zijn. We shall see.

Ik kocht een Blue Snowball microfoon

Kijkt. Ik heb nieuw speelgoed!

Wat is het? Een Blue Snowball microfoon! Voor 77 euro op de kop getikt bij de Bax Shop. Eergisterenavond besteld, gisterenmorgen geleverd. Like a boss.

Wat ik daar mee ga doen?

Wel, screencasts maken, tiens!

Waarover dan?

Tjah, Drupal en WordPress natuurlijk. Maar in feite kan het over gelijk wat gaan. Zolang ik er maar op het scherm een uitleg over kan geven. Er zijn uiteraard al duus’d-en-een mensen mij voor gegaan. Dus ik écht iets nieuws doe ik niet. ’t Is natuurlijk ook niet meteen de bedoeling om domweg beginnertutorials te maken wegens dat het juist dat is wat die duusd-en-een mensen reeds hebben gedaan.

Het idee is om tips ’n tricks op te nemen die een stapje verder gaan. Interessante kneepjes die ik doorheen mijn werk tegen kom en die het waard zijn om te delen. Ik ga niet met voorbereidingen en battle plans heelder screencastreeksen te maken. Het idee is om er eerst een paar losse opnames te maken en dan te kijken waar het mij brengt. Zoals alles is screencasting een kunst. Ik heb mij er vroeger al eens aan gewaagd: slechts door oefening en veel proberen wordt je materiaal beter.

Waarom screencasts?

Omdat het gewoon makkelijker en leuker is om een YouTube filmpje te maken dan een hele tutorial uit te schrijven. De ervaring leert trouwens dat een bitesize filmpje van 5 à 10 minuten interessanter is als je een nieuwe techniek moet leren, dan een abstracte beschrijving in een artikel. Het is natuurlijk ook een stuk persoonlijker wanneer je je stem leent.

Een nieuw theme

Zo. Ik heb er even over gedaan, maar het nieuwe theme staat on line. Eigenhandig gebouwd want dat hoort zo als rechtgeaarde web developer. Eat your own dogfood en al.

Het ontwerp is alvast niet zo heel erg veranderd. Ik had eerst een pak schetsen gemaakt en in mijn gedachten wilde ik de structuur helemaal omgooien. Maar toen besefte ik dat de vorige layout al een eeuwigheid meeging en perfect werkte. Dus heb ik ze eerder een update gegeven. De grijze balk was een gimmick, maar eentje die niet zo fantastisch werkte. De site lijnde ook helemaal rechts uit. Op een groot scherm breekt dat het evenwicht. Dus is er nu een nieuwe sidebar en is de site gecentreerd.

De oude HTML en CSS code dateerde van ergens begin 2008. Dat zijn bijna de “duistere Middeleeuwen” * in de wondere wereld van het web. Ondertussen hebben we HTML5, CSS3, is Internet Explorer 6 ten grave gedragen, heeft Google Chrome een flinke hap uit de browsermarkt genomen,… Het is trouwens wonderbaarlijk dat het tussen dan en nu, nog altijd, ondanks een paar mankementjes, redelijk werkte met de laatste updates van WordPress. Afin, ik heb ervoor gekozen om het theme van de grond af te herschrijven met de toekomst in het achterhoofd.  Ik heb de HTML 5 Reset startertheme genomen en ik er boven mijn eigen theme geschreven. Wie naar de broncode kijkt, zal zien dat er een pak HTML5 tussen zit. Backward compatibility wordt gegarandeerd door Modernizr dat in het startertheme zit.

De zoekfunctionaliteit is gesneuveld. Ik heb ze zelf in al die jaren nooit gebruikt. Google indexeert reeds jaren deze blog. Ik durf dus al eens te Googlen naar een oud artikel.

De Recente Commentaren widget is nu meer uitgesproken. In plaats van domweg de 5 laatste reacties te tonen drijven nu de artikels waar frequent op wordt gereageerd naar boven. De Get Recent Comments plugin doet de heavy lifting. En ja, ik heb het idee overgenomen van Michel.

Het Archief steekt anders in mekaar. Ik heb het idee van Tumblr.  Een overzicht van artikels in blokjesvorm leek me wel een tof idee. Ik heb een tijd geëxperimenteerd met de Infinite Scroll plugin. Ik merkte echter dat die in Internet Explorer 7 niet helemaal proper werkte. En ik vroeg me ook af of het breken van een verwachtingspatroon, de navigatie onderaan elke pagina, wel zo’n fantastisch idee zou zijn. Ik heb het idee uiteindelijk laten sneuvelen. Misschien dat het er bij een volgende versie toch in zit.

Tenslotte heb ik mijn Colofon eens stevig onder handen genomen met een gereviseerde tekst. Dat mocht ook wel eens.

Op de todo lijst staat de inhoud van de site. Alles steekt in een paar basiscategorieën zoals Blog, Life, Internet, Drupal, Techtalk,… Ik ben niet altijd even consequent geweest in het toekennen van categorieën. Die categorieën zelf zijn ook redelijk geëvolueerd naarmate mijn interesses zich verlegden. Dat moet dus drrringend eens worden opgeschoond.

Laat maar weten wat je ervan denkt!

* Als medievist hou ik niet zo van de term “Duistere Middeleeuwen”. Die zijn nooit zo duister geweest als men laat uitschijnen. Het was zeker niet zo dat bijgeloof en onwetendheid hoogtij vierden. Integendeel. Wikipedia leert je meer!

Updeet

Zo.  Ik heb tussen het gedoe met kartonnen dozen en zo in, ook nog even mijn blogje van een update voorzien. WordPress 3.0.1 zoemt nu onder de motorkap. In de zijbalk heb ik ook maar meteen eens de linklove herbekeken.  Mocht ik jou onbedoeld uit de weg hebben geruimd, geef dan een schreeuw. Voor zover we mekaar kennen, plaats ik je er graag (opnieuw terug) bij.

WordPress 3.0

Hoera! WordPress 3.0 “Thelonious” is uit! Feestje! Upgraden maar!

Belangrijke wijzigingen? Een volledig nieuwe look voor de backend en Twenty-Ten vervangt Kubrick als default theme zijn de eerste dingen die opvallen. Maar belangrijker is dat Wordpres MultiUser en WordPress nu één zijn. Je kan dus meerdere blogs opzetten vanaf dezelfde installatie.

De, naar mijn mening, belangrijkste toevoeging is dat je naast pages en posts ook zelf je eigen inhoudstypes kunt bouwen. Da’s een eerste, bescheiden stap in de richting van wat Drupal’s kunstjes met content types en content fields. Drupal 7.0 heeft die begrippen nog verder doorgetrokken in zijn Fields API. Nu, als je naar de rauwe code van WordPress kijkt, dan zal je al snel merken dat daar (en elders) nog veel, heel veel, werk in gaat kruipen om een unified API te bouwen die op eenzelfde niveau staat. In versie 2.x waren er wel al een aantal plugins zoals PodsCMS, maar die bieden niet dezelfde flexibiliteit en gebruiksvriendelijkheid.

Een succesvol CMS is meer dan alleen maar de software. Het gaat ook om community. En dat heeft Matt Mullenweg duidelijk begrepen. Ze doorbreken de development cycle even om de focus te leggen op het verbeteren van documentatie (codex.wordpress.org), de plugin repository en what-not. WordPress.org kent immers het centrale begrip “issue queue” zoals dat op drupal.org bestaat, niet. Nochtans is een centrale plaats om bugs, features,… per project/module te melden dé kern van de zaak als het gaat om de participatiekracht van de community te maximaliseren.

Naar mijn mening blijft WordPress net dat: een uit de kluiten gewassen blogging tool waar Drupal ontegensprekelijk een flexibele blokkendoos of content management framework is. Wil dat zeggen dat WordPress ondergeschikt is aan Drupal? Verre van. Maar met WordPress stoot je gewoon veel eerder tegen grenzen dan met Drupal als het gaat om de implementatie van een site die veel meer wil zijn dan alleen maar een blog.

En ondanks de verbeteringen in WordPress 3.0 blijft het uitkijken naar wat de toekomst zal brengen.

Two years of Mollom satisfaction

Davy started a meme: show off how well Mollom has been performing on your site over the past weeks, months or even years. I picked it up at Wim’s place. Here is the lowdown for my own blog.

2 years of Mollom satisfaction

To be more exact: Mollom was activated 703 days ago. Until now, 1,355 submissions were accepted and 23,999 rejected. Yesterday, Mollom blocked 12 spam attempts and accepted 0 ham messages. So far, Mollom blocked 13 spam attempts and 0 ham messages today.

Quite impressive.  The least I can say is that Mollom took away a big nag of mine. The gap in Q1 of 2009 was due to a critical bug which needed fixing in my code.  I ran Mollom in developer mode which means no real life statistics were recoreded during that particular timeframe. Apart from that, Mollom has been protecting my WordPress blog for the past 2 years and held on to it’s own.

Of course, you’re all probably eager to know whether I’m still maintaining the plugin. Yes, I am. Over the past few months, I’ve been working off and on to get a new version a the plugin ready. It will be a total rebuild with lots of improvements. I’m covering what’s to come and my own developer experience in depth in a future blog post.

So stay tuned!

Mollom 0.7.4 and more

One of my ongoing efforts is trying to get WP Mollom translated. I’ve put the plugin up on the wp-polyglots mailinglist and I’ve received several translations. Which was enough a reason to tag a new release. So, now you can enjoy the power of Mollom in these languages:

  • Vietnamese (vi)
  • Bulgarian (bg_BG)
  • Bangla (bn_BD)

I’ve already written about revising the codebase and making room for improvement. I’ve made a small list of things that are on my wanted/todo list.

  • More OO
    At this point, all the functionality is contained in 28 functions. These functions implement everything from the different calls to the Mollom API, over handling comment form input to showing a pretty graph. Although most functionality is comprised to it’s own function, there’s still lack of a good architectural design. I’ve come to a point now where adding new features or optimizing code means ripping apart large pieces of the plugin. For instance, the function that let’s the configuration page work contains code to handle the form but also to build and show the form. Boxing functionality limits the ability to reuse code or adapt it efficiently. Identifying separate segments of functionality and assigning them to their own classes and functions will make the plugin more agile and able to cope with change.
  • Implementing AJAX
    Over the last iterations, WordPress has incorporated loads of AJAX. This technology makes it possible to, for instance, moderate a comment without the need to reload the entire page. And as a bonus, add a nice colored fade effect. It would be nice to leverage the AJAX API of WordPress and make WP Mollom more userfriendly. AJAX in Mollom would not only be applied in the administration panel, but also made available front-end to theme developers.
  • Usability
    The current interface has already gone through several iterations but there’s still room for improvement. I’m thinking of several things. Instead of a percentage with no label, it should be a more visual indication of the spaminess of a comment. Comments that had a CAPTCHA should stand out more in the list. Pagination needs more refinement. The configuration page needs some rethinking. The quality indicator in the moderation module should be more verbose. I would also like to make the plugin more informative: a better breakdown of statistics and performance monitoring of the plugin.
  • Hooks
    Wordpress allows plugin developers to define their own hooks. This enables plugins to ‘hook’ onto each other. A nice example is Ozh’ Admin Dropdown Menu that allows plugin developers to define a custom icon through a hook. I would like to keep an eye out for places in the plugin code where functionality added through third party plugins can generate added value. Mollom is designed not only to protect comment forms, but any form that’s presented to an end user. So it would be a plus to make Mollom protection available to other plugins through well placed hooks.
  • Widgets
    Wordpress 2.8 will ship with a new improved Widget API. This enables plugin developers to write easy to create widgets which can display all kinds of neat things on your blog. An easy to install Mollom widget that displays the effectiveness of Mollom would be a nice-to-have.
  • WordPress MU support
    This is something I’ve been talking a long time about: adding support for WordPress MU. The current codebase doesn’t allow this in an easy fashion. Incorporating WordPress MU support is one of the main reasons to rethink the way the plugin should be designed.

It’s pretty clear this means going back to the drawingboard. Development should progress pretty fast though, since most of the code which is now in the current stable version, can be reused. One lesson I’ve learned is that I should to code the plugin against the development version of WordPress (in this case: bleeding-edge 2.8) to cope with the changes and make use of newest features in WordPress.

In retrospect, the plugin has been a project which I’m working on little over a year now. The log of wp-mollom.php tells me that I started working on the plugin itself (after testing the Mollom API and very premature versions in february-march 2008)  on april, 2nd of last year. So, a bit late: but happy 1st birthday WP Mollom!

Mollom blocks fifty million spam attempts

Mollom blocked over fifty million spam attempts since its inception. Just over two months ago, that was little over twenty-five million. Just in the past 24 hours, Mollom caught 480,000 attempts. This shows how important it is to get the best protection that can guarantee a clear user experience. It also shows that Mollom is getting more and more traction with over 7,000 sites protected.

As for the WordPress plugin, the development has been on the slow side in the past weeks and months. The plugin can  use more fine tuning. It still doesn’t support WordPress MU (well, there’s a hack). I’m planning to revisit the code to give that some more attention.

Anyway, I would love to hear how the plugin is performing on your site and what I can do to make it even better!

WP Mollom 0.7.3

Another month, a new release. I just tagged WP Mollom 0.7.3. It’s got the shortest changelog up to date, but the translations that are included make up for that.

  • fixed: multiple moderation would incorrectly state ‘moderation failed’ due to incorrect set boolean.
  • added: german (de_DE) translation
  • added: italian (it_IT) translation

Many thanks go out to Alexander Langer and Gianni Diurno for sending me their translations. With only 88 strings, translating the plugin doesn’t take that much time. So, If you could spare the time and you know your way around POEdit (or you’re willing to learn), just go out there and make this plugin easier to use for non-english speaking users of WordPress!

Of course, if you don’t use the plugin already: you can get it right here!

« Vorige blogposts Pagina 1 van 5 pagina's Volgende blogposts »