Developing to the Views 7.3 API - slides from DDDB

Now that Drupalcon Chicago is over, I found some time to fix the slides from my session at the Drupal Dev Days in Brussels. It took some time because neither Google Presentations nor Slideshare apparently like the MgOpen font family.

The presentation is now on Slideshare at

The progressive code samples are attached to this blog entry, as a tarred Git repository.

Open up to other languages: come to OSDC France 2010 !

The second Open Source Developers Conference (OSDC) will be held on saturday 9th and sunday 10th, October 2010 at "Carrefour Numérique de la Cité des Sciences", in Paris. OSDC is a cross-language event, set up by multiple french language-specific non-profits:

  • PERL: Mongueurs de Perl
  • Python: AFPy (Association Francophone Python)
  • Ruby: Ruby France
  • SmallTalk: European Smalltalk User Group

When Dropbox ignores files to sync on Linux...

Much like many Drupal devs, I happen to make fairly intensive use of Dropbox, and even use a "pro50" account to sync my always increasing set of "current" source folders, including checkouts of all major Drupal versions and lots of contrib.

Which means that, beyond the number of gigabytes of data Dropbox has to sync, the number of the files making up these gigabytes has also been increasing, currently to around 100k files. After I started playing with checkouts of the Drupy project in preparation for the Drupyx experiment, I noticed that, when I created some new files under the Drupy directories, their creations and subsequent changes would not be tracked by Dropbox, but they would correctly sync if I renamed the Drupy directory itself or a directory above it. Something like this:

Action Result on
touch ~/Dropbox/src/drupy/src/ Ignored
mv ~/Dropbox/src/drupy/src/ ~/Dropbox/src/drupy/src/ Ignored
mv ~/Dropbox/src/drupy ~/Dropbox/src/drupa Full sync below ~/Dropbox/src/drupa
mv ~/Dropbox/src/drupa ~/Dropbox/src/drupy Full sync below ~/Dropbox/src/drupy, including ""
rm ~/Dropbox/src/drupy/ Ignored

And all this while operations on a PC running Windows tied to the same account did not experience any similar problem. What could be going wrong ?

Night life in Munich

So we Drupalistas were supposed to gather for some sort of social event at a concept bar (more below), and I bid my time walking the subway corridors, among the incredible crowd one can find out in Munich any Saturday evening around 8pm, as shown below.

U-Bahn 2010-05-08 19.47.01

Tip of the Day: restart Opera without Dragonfly

If you like Opera Dragonfly, as I do, you may have stumbled upon a small annoyance: if Opera is configured to start with the previous window, if you use Dragonfly in a separate window - maybe because you use a dual screen config - if you happen to close the main Opera window with Dragonfly still open, and close Dragonfly afterwards, then you will notice that Opera complies with your choices: when you restart it, it restarts with the main browsing window closed and Dragonfly opened.

At this stage, closing Dragonfly won't help, because Opera will faithfully restore it at every launch. Annoying. Luckily, there is a very simple workaround if you find yourself in that situation...

Optimizing strings in PHP ?

Every so often, I get asked about whether it is really worth it to chase double quotes and constructs like print "foo $bar baz", and replace them with something like echo 'foo', $bar, 'baz', or even to remove all those big heredoc strings so convenient for large texts.

Of course, most of the time, spending hours to fine comb code in search of this will result in less of a speedup than rethinking just one SQL query, but the answer is still that, yes, in the infinitesimal scale, there is something to be gained. Even with string reformatting ? Yes, even that. But only if you are not using an optimizer.

Just don't take my word for it, Sara Golemon explained it years ago with her "How long is a piece of string" post, in 2006.