Categorieën
Techtalk

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.

Categorieën
Techtalk

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!

Categorieën
Asides Techtalk

WordPress hacked

U blog draait nog niet op de laatste versie van WordPress? Ik stel voor dat u dat nu eventjes doet! Waarom? Daarom!

Categorieën
Leven

Colada.be

Bij een nieuwe business hoort er ook een nieuwe website. Gisteren heb ik colada.be online gezet.

Colada. Freelance web en drupal development

De nieuwe site bevat ook een blog. In het verleden blogde ik nogal graag over webdevelopment en technische kwesties. Het Mollom project heeft de laatste maanden nogal wat blogruimte ingenomen terwijl niet iedereen noodzakelijk interesse hiervoor had. Het technische krijgt dan ook een nieuwe plaats op mijn Workingman’s blog.

Natuurlijk draait de nieuwe webstek op Drupal.

Categorieën
Leven

Jonge ondernemer

In de laatste maanden is mijn blog een beetje stil gevallen. Niet zonder reden. Ik word tegenwoordig namelijk helemaal door mijn werk opgeslorpt. Mijn dagen beginnen vroeg, eindigen laat en zijn gevuld met code, todo’s, projecten en veel, veel meer. Om nog maar te zwijgen van vrienden, en mijn H.! Ik pendel bovendien nog altijd wekelijks tussen Leuven en Brugge.

Neen, meneer, ik verveel mij dus absoluut niet.

Eerlijk gezegd heb ik de laatste maanden mijn handen meer dan vol gehad want vanaf begin juli mag ik mezelf een jonge startend ondernemer noemen. Jawel, ik zit in volle voorbereiding om de stap te zetten naar een bestaan als zelfstandige.

Wat ik ga doen? Wel, ik word freelance web- en Drupal developer. Concreet doe ik wat ik op mijn huidige job doe, maar dan voor mezelf: ik ga websites – of een deel ervan – al dan niet in onderaanneming op basis van een slicing, documentatie, informatiearchitectuur en met een stevige dosis vakkennis ontwikkelen. In eerste instantie richt ik mij op webbureau’s, grafische ontwerpers, andere freelancers, e.a. die een Drupal project hebben liggen maar niet meteen de kennis of mankracht in huis hebben om aan de slag te gaan. Daar spring ik tijdelijk in.

Ik mik voornamelijk op projecten in Drupal en alles wat daar rond hoort. Ik heb het afgelopen jaar zeer intensief met Drupal mogen werken en ik ken het pakket ondertussen door en door. Niet dat er niet altijd valt bij te leren, maar ik heb het genoegen gehad om bij Statik, mijn huidige werkgever,  een aantal serieuze Drupal uitdagingen aan te gaan. Daarnaast sta ik, uiteraard, ook open voor WordPress opdrachten. In hoofdzaak gaat het om het volledig ontwikkelen van een site op basis van een (basis)slicing, documentatie met een stevige dosis vakkennis maar ik stel mij ook beschikbaar voor kleinere projecten: ontwikkelen van een plugin, module,…

Webdevelopment is geen webdesign. Ik kan jammer genoeg niet helpen door in Photoshop of Flash om een animatie of een kick-ass ontwerp te maken. Ik ben nu eenmaal geen grafisch genie. Ik laat dat over aan zij die daar wel talent  voor hebben: grafische ontwerpers, front-end engineers, flash/flex experts, etc. Wat natuurlijk ook niet wil zeggen dat ik hun taal niet spreek of dat webdesign een vreemde wereld voor mij is. Ik doe gewoon waar ik goed in ben en de rest laat ik over aan andere specialisten.

Voor de ene komt dit misschien wat onverwacht, anderen weten dat ik al langer, veel langer, met het idee speel. Het is iets dat heel lang heeft liggen rijpen. Zelfstandige worden doe je niet zomaar. Zonder een strak plan begeef je je immers op glad ijs. Het zou bij een idee gebleven zijn ware het niet dat mijn eigen werkgever mij de spreekwoordelijke trap onder de kont heeft gegeven om er werk van te maken en mij met heel wat argumenten wist te overtuigen.

En dus ben ik twee maanden geleden begonnen met de eerste voorzichtige stapjes: informeren, documentatie doornemen, met veel mensen praten,…

Gaandeweg werd het idee concreter. Ik begon het financiële plaatje bijeen te cijferen. En natuurlijk begon ik na te denken over wat ik precies wilde doen: een heus ondernemingsplan(netje) opstellen. Uiteindelijk haalde een positief gesprek met een doorwinterde boekhouder, mij volledig over de streep. Vorige week vrijdag heb ik mij ingeschreven bij een erkend ondernemersloket en kreeg ik mijn ondernemingsnummer.

Van begin juli sta ik dus op eigen benen en ben ik mijn eigen werkgever.

O ja, mijn commerciële kant heeft ook een naam: Colada. De website van mijn eenmanszaak wordt momenteel volop afgewerkt.

– “Wow! Da’s geen kleine stap. En wat met die Crisis? Ben je niet bang om kopje onder te gaan?”

Wel, ik probeer het met een nuchtere blik te bekijken.

We leven nu eenmaal in tijden waarin niets zeker is. De tijd dat je tot je pensioen dezelfde job kon uitoefenen is gepasseerd. In mijn omgeving heb ik mensen zich zien suf solliciteren om in een (tijdelijke) positie te belanden die verre van hun droomjob is. Veelal moet je door ettelijke selectierondes spartelen, examens afleggen in de hoop toch de job te hebben. Bovendien is in tijden als deze een vaste job vinden die verloont naar je capaciteiten en diploma’s niet echt een evidentie. Zelfs een universitair diploma is geen garantie.

Verder is er het financiële aspect. In tegenstelling tot (verontrustend?) veel leeftijdsgenoten heb ik nog geen huis af te betalen, vrouw noch kind(eren) te onderhouden en al helemaal geen auto. Veel meer dan de maandelijkse huur is er voor mij niet om mij écht zorgen over te maken. Webdeveloper worden vraagt  nu ook geen kapitale investering. De meeste hard- en software heb ik reeds. Minimale opstartkosten zijn dus een extra plus.

Aan de andere kant komt het er vooral op aan om voldoende opdrachten te mogen aannemen en die te kunnen factureren. Nu de ene na de andere bezuinigingsronde wordt doorgevoerd kan het wel eens tegenvallen om als starter voldoende klanten te vinden. De sociale en andere lasten die ik nu zelf aan vadertje staat zal mogen afdragen maken het er niet makkelijker op. Daarom dus beter geen wilde verwachtingen. De focus ligt nu op de opstart en het leefbaar maken van de zaak, niet op de aanschaf van een vette Porsche (Oké, misschien ook wel, als mijn boot over 10 jaar binnen blijkt te zijn.). En dus houd ik alvast nauw contact met mijn boekhouder. Blijk ik maand na maand op mijn spaarvarken in plaats van uit mijn inkomsten te leven, dan is het boeken toe en opnieuw beginnen solliciteren.

In ieder geval zal ik op zijn minst kunnen zeggen dat ik het geprobeerd heb!

PS: Geïnteresseerden mogen altijd een berichtje achterlaten op info@colada.be.

Categorieën
Asides Techtalk

WP Seek

Hat tip: WP Seek. Eindelijk een handige referentie voor alle template/theming functions in WordPress.

Categorieën
Techtalk

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!

Categorieën
Techtalk

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!

Categorieën
Techtalk

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!

Categorieën
Internet

WP Mollom 0.7.2

I just released version 0.7.2 of WP Mollom. Here’s the changelist

  • fixed: closing a gap that allowed bypassing checkContent through spoofing $_POST[‘mollom_sessionid’]
  • fixed: if mb_convert_encoding() is not available, the CAPTCHA would generate a PHP error. Now falls back to htmlentities().
  • improved: the check_trackback_content and check_comment_content are totally rewritten to make them more secure.
  • added: user roles capabilities. You can now exempt roles from a check by Mollom
  • added: simplified chinese translation

So, for the most part, this release is about security related under-the-hood changes. Another great adition is the use of user roles. With previous releases, you didn’t have to pass the Mollom check if you were logged in. Which was a bit of a security issue in it’s own. This release allows you to exempt certain user roles from Mollom scrutiny.

Finally, I owe a big thank you to Donald for the great work he did translating the interface into simplified chinese and his numerous suggestions. Thank you!! I would like to encourage others to translate the plugin! German, French and/or Spanish, if you know them, now is the time to put them to use!

So, go grab it from WordPress Extend or upgrade your installation through the famous one-step intaller in your Dashboard!