Latest sites

Quick news

  • 2014-03-27: MongoDB Watchdog module ported to Drupal 8 at the Szeged Dev Days.
  • 2014-01-26: My post on the Symfony web profiler in Silex selected in Week of Symfony. w00t !
  • 2013-10-18: My first commit went into MongoDB today. And, guess what ? It's in JavaScript
  • 2013-09-20 to 29: Working on Drupal 8 EntityAPI at the extended code sprints during and around DrupalCon Prague
  • 2012-08-19: Working on Drupal 8 EntityAPI at Drupalcon Munich
  • 2012-06-15: Working on Drupal 8 EntityAPI at DrupalDevDays Barcelona
  • 2012-03-23: Working on the future Drupal Document Oriented Storage at DrupalCon Denver. D8 or later ? Bets are on Later

Computing

Easy mass deletions

Sometimes, you want to delete a whole bunch of users, terms, or nodes, say to cleanup a site while developing and still keep its configuration, so reinstalling is not really an option, and the normal content- or user-administration pages get in your way because they only show a limited number of entries, meaning you have to delete page after page of entries.

Views 2 training video from DrupalCon Paris

If you haven't been able to attend DrupalCon Paris, or missed the session I led on Views for developers there, you can find its first part on archive.org:

Module Extendr for Flickr

In case you've found Jeff Miccolis' post about the Extendr module for Flickr great, but have been bothered by the fact that the link on the blog was broken and that comments on that article were closed, the good news is that he made his code available on drupal.org too, at:

http://devseed.svn.cvsdude.com/sandbox/drupal-6/extendr/

Views in Paris

In case you've been living under a rock, DrupalCon Paris is happening next week, and features, not one, but two Views Sessions, in addition to merlinofchaos' own CTools sessions on Panels 3 and CTools. One of them being, of course, by yours truly :-)

Gadgets module now available for Drupal 6

2011-08-06: UPDATE: now available from my drupal.org sandbox

New SVN repository for PHP-GTK

After recent complaints in the PHP-GTK mailing list, auroraeosrose mentioned mgdm has set up a SVN repository for the docs, to ease working on them.

This new repository is available at
http://svn.thefrozenfire.com/phpgtkdoc/

If non-admin users can see some user accounts but not others...

After a massive user import to a customer's site, said customer noticed that, while he could see any user profile when logged, he could only see some of them when he was not logged in, receiving an "access denied" on the other accounts.

Now, with the administer users permission, a user can see any profile, so this didn't come into consideration, but since anonymous users could see some profiles and not others, the permissions granting anonymous access to the profiles were obviously set up correctly. So what could be wrong ?

A Gray code generator in PHP

For a recent case, I had to define the behaviour of a system with a lot of independent conditions to check, which could trigger any number of a set of messages and actions on data, and all of this based on a plain english (i.e. non algorithmic) description of the data, which only covered the most commons scenarios for these conditions, leaving lots of undefined combinations of inputs. What's one to do in such cases ?

Documentation of the CCK API

The primary sources are of course the d.o. handbook pages about CCK, the CCK Group on g.d.o., and the source code itself.

There are also a lot of blog pages all over the web, which I'm trying to gather here. I'm opening comments on this page so if you find any good page elsewhere, please add a comment about it so it can be added to that list.

Switching to private downloads to speed up Drupal

It is usually considered a given that "private" downloads, going through Drupal, are slower than "public" downloads, which can be served directly by Apache, or whatever web server the site is running on. This is indeed true in the general case; however, for low-cost hosting, this apparent axiom needs to be revisited.

Context

I recently had to install Drupal 6.x for a french government agency on a low-cost hosting plan. Although the site performed reasonably well considering the limitations of the chosen hosting plan, I soon noticed it was missing mod_deflate and mod_expires, which caused pages to be served uncompressed and every static file to be served without an expiration date.

And, of course, the site had quite a few images: photos on most pages, and several logos at the bottom of each page.

Now, when mod_deflate is missing, using the "Page compression" option on http://example.com/admin/settings/performance is a good workaround for the download page size, but what about the static files ?

Checking a few cheap hosting plans, it appeared these limitations are actually quite common. And without mod_expires, there is no way to tell Apache to serve static content with specific headers. Luckily for us, with Drupal we have a trick up our sleeves, the so-called "private" file downloads.

Syndicate content