Planet Drupal
CiviCRM gets a solid A in the 2009 Data Ecosystem Survey Report
Earlier today NTEN released the 2009 Data Ecosystem Survey Report (you need to be an NTEN member or pay $50 to access this report). Long time users might remember that CiviCRM came out on top in the 2007 NTEN CRM Satisfaction Survey. Some of the tweets about this survey include:
- @pearlbear: GPA on Donation Managment from #nten report: CiviCRM:3.85, Salesforce:3.67, Raiser's Edge:3.62, DIA:3.25, Convio:3.22.
- @geilhufe: CiviCRM gets straight As in 5/8 parts of an NPO's data ecosystem (NTEN Data Ecosystems
- @geilhufe: CiviCRM far ahead of competition yet again in independent Report
- @civicactions: Nice marks for @civicrm in the #NTEN 2009 Data Ecosystem Survey
Fosdem 2010
Fosdem 2010 was my 10th fosdem Edition (including the first OSDEM)
As every year Fosdem suffered even more from it's own success.
On Friday evening ther was the obligatory Beer event... however as people need to eat to .. the Devops crowd fled the scene
I had made reservations for a 20 something group and with the CentOS crowd joining us (as there was some overlap anyhow) we were 25 when we arrived in the restaurant .

Dinner and Discussions were great .. I learned about some new projects and we had some insightfull dicussions on how fat your thin foil should be ...
After dinner we went back to the Beer Event were lots of Free Beer was tasted ...
Saturday was the first full day of Fosdem, as usual Fosdem was the victim of it's own success , too much interresting stuff to see .. too little time.
Lots of Devrooms had the "FULL" sign put up more than you want as a visitor ...
I never even made it into the Drupal or NoSQL rooms :(
Sadly I had to correct Ploum's first law but for a lot of people .. Fosdem each time means the battle choosing which presentation you'll go to ... If you can even make it to the talk .. as usually the the hallway track is much more interresting :)

The MySQL devroom was on sunday but on saturday the crowd met in an Italian place nearby the Fosdem campus to get to know each other and chat a lot ..
The discussions ranged from French vs Canadaian and the future of Forks
During Saturday afternoon @patrickdebois suggested a Devops Meetup for Breakfast ... and some how that also happened ...
When I arrived at Fosdem on sunday morning they were still there :)

I spent the biggest part of Sunday in and around the MySQL devroom listening to a bunch of interresting talks
My own talk went fairly well given the time constraint .. sqeezing content for an hour in 20 minutes means you can't really go deep into the topics ...
My initial plan was to only focus on Pacemaker integration however the community had voted for the overview talk :)
After my own talk it was almost time to head to the Janson auditorium for the Footnote of Greg Kroah-Hartman, and as on any Fosdem .. there once again had to be Beer

Technorati Tags: devops drupal fosdem mysql nosql open source
Share with Shareomatic!
-->
Trackback URL for this post:
http://www.krisbuytaert.be/blog/trackback/983IE iFrame Insanity
After I spent THREE HOURS trying to figure out why IE insists on rendering a white background for an empty iframe, Nate pointed this little gem out to me.
IE has default values for iframes. Yes they do. And the default is to put an opaque background and an inset border on iframes that will ignore any attempt you make to change the iframe background color or border using css. So if you put 'background-color:transparent' into your css for the iframe element it will have no effect. That's right IT WILL IGNORE YOUR CSS!
To fix it you have to do this:
<iframe allowtransparency="true" frameBorder="0"></iframe>
See the documentation for this stupid behavior here
- http://msdn.microsoft.com/en-us/library/ms533072%28VS.85%29.aspx
- http://msdn.microsoft.com/en-us/library/ms533770%28VS.85%29.aspx
CCK individual field themeing
CCK is a great module for allowing use to create custom content types without having to write a node module. Out of the box CCK provides everything a user would want. But there are times where I need to do some custom queries or add a custom theme function to get things just right. So here's something I like to do to keep things well and organized.
The best way to do this would be to copy the content-field.tpl.php from the CCK theme directory into your own theme directory. This will target ALL fields, but you'd like to modify onlt that one text field in that one content type. Well, you'd start off again by moving the content-field.tpl.php to your theme directory, and then create a copy of this file with the following schema:
content-field-FIELD_NAME-NODE_TYPE.tpl.php
If you'd like to modify a field that spans across multiple content types, you could use the following naming convention:
content-field-FIELD_NAME.tpl.php
Getting a Views Page Display to Appear Inside an Organic Group
I have been hitting my head against a wall for a few weeks now, trying to get a few different Views-created pages to appear as if they were normal pages inside an Organic Group (meaning they would appear inside og-menu-enabled menus for that particular group, and group blocks would also appear on the pages.
After reading up on the thread "Organic Groups and Views 2", I found that I could use an argument to help solve my dilemma. Here's how I set up an argument for a particular view:
On the page display (I could've also done this as a default), I added an argument ("Organic groups: Group node") with the following properties:
- Title: <none>
- Breadcrumb: <none>
-
Action to take if argument is not present: Provide default argument
-
Default argument type: Fixed entry
- Default Argument: 6116 (this is the node ID for the organic group under which this view is posted)
-
Validator options
-
Validator: Group nodes
- Argument type: Node ID
- Validate current user: <unchecked>
- Action to take if argument is not present: Hide view / Page not found (404)
-
Validator: Group nodes
-
Default argument type: Fixed entry
- Allow multiple terms per argument: <unchecked>
- Exclude the argument: <unchecked>
Doing this allows Organic Groups to treat the Views page display as if it is actually a page within that particular group. Another problem solved! (I'm really beginning to fall in love with Views... and, apparently, Views 3 is going to be even more full of win!
A crash course in AHAH
Asynchronous HTTP And HTML or AHAH is a technique which allows you to update parts of a DOM without reloading the entire page. In Drupal, AHAH refers to adjusting forms dynamically by changing a part of a form based on input given in other form elements without a page reload.
While Drupal 5 was downright lacking support for AHAH driven forms, it became part of the FAPI in Drupal 6. Module developers are able to design dynamic forms without worrying about writing complex JQuery. Yet, implementing and debugging AHAH in a secure and maintainable fashion is still tricky business.
Drupal SEO (Is it any good)
Back when I was first starting to look at different Content Management Systems (CMS) one of the reasons I decided to go with Drupal was because I heard from different people that it was much more Search Engine Friendly (SEF) when compared to the other CMS’s out there. This excited me not because I was an SEO expert but precisely the opposite – because I knew SEO was valuable but didn’t know what it meant to optimize my sites.
Since then I have learned much more about Search Engine optimization and I have come to two conclusions:
The World Bank's climate change site using Drupal
The World Bank has many websites and a varied online presence and some are running Drupal. Their climate change site, http://beta.worldbank.org, which launched a few months ago uses Drupal. The site serves as a beta for the new content strategy the Bank would like for the future: an integrated model of publishing around shared topics, countries, and products to achieve greater audience reach and satisfaction. This site takes a single topic: "climate change", and aggregates World Bank content from a variety of sources in an automated fashion.
The World Bank's mission is to reduce global poverty and improve living standards. It serves as a vital source of financial and technical assistance to developing countries around the world. Global climate change is a major priority for The World Bank as developing countries will be particularly vulnerable to adverse conditions caused by it.
The World Bank has reams of information regarding climate change but it was separated by organizational groups and internal systems and it was nearly impossible for a visitor to find and combine these different sources. To counter this problem, The World Bank engaged Phase2 Technology to launch a pilot site that demonstrates the potential success of a topic-based site with large amounts of data. In addition to great tools for data integration and visualization, the site has support for low end mobile devices and multimedia integration.
It's very satisfying to know that Drupal is powering such an important site which is poised to help better the plight of developing countries. Experts anticipate climate change will hit the third world the hardest. This site is one of the more prominent Drupal sites The World Bank currently has, but it is a great example of how to effectively showcase data on important issues. I hope they will consider using Drupal for future projects.
Borders uses Drupal!
While looking to print a coupon for Borders, I was presented with a Drupal "database is overloaded" error message from their coupons site!
On Drupal.org moving to a distributed version control system
Drupal.org's use of CVS as a version control system has long been a thorn in the side of the project and its contributor community. As many newer (and sexier) version control systems have popped up over the years, most of us have switched to something else for our day-to-day work, and the only time we need to remember how to use CVS again is when we are interacting with Drupal.org. It's a pain even for the most "blue-blooded" among us, and for some, this is a blocker to contributing back altogether. Dries has even identified playing around with other version control systems in his 8 steps for Drupal 8, and Larry also identifies it as a requirement for Drupal to realize it's not an underground success anymore.
Naturally, this situation prompts the periodic raising of the (perfectly reasonable) question by someone every few weeks of, "Why the %&#! is Drupal still using CVS?!" At one point, we got sick of expending time, energy, and focus on this question constantly, and so wrote up Why is Drupal still using CVS and how can I help change that?.
Unfortunately, no "help" ever materialized from the repeated linking of people over there, so after an impromptu IRC discussion the other day prompted by serial trouble-maker walkah, a few of us decided to brainstorm a list of what exactly it would take to gain some momentum on this goal (hey, testbot has been down for a few days, so we needed something to do! :P).
We created the following wiki page to centralize information and discussion, and coordinate mobilization around this effort:
Action items for moving Drupal.org off of CVS
The page has been up for about four days, and has had some very interesting discussion so far (happily, almost entirely devoid of meaningless "+1"-style comments). We've also in the process managed to wrangle a pretty nice list of resources for other projects who might be considering a similar move (or at least that's the hope)!
Here's a very high-level summary of the discussion so far:
- Based on our project/community goals, as well as the effort required to get there, there is no point in moving to a better centralized version control system. Distributed version control seems to clearly be the way of the future for massive hubs of collaboration such as Drupal.org, and so we've eliminated Subversion as a contender. We also eliminated Mercurial, based on lack of community expertise.
- Of the people in our community who use distributed version control systems, the overwhelming majority use Git. And by pulling random project metrics, Git also seems to be far and away the project with the most thriving community and most momentum behind it.
- However, Bazaar has the support of the Drupal.org infrastructure team, since it is capable of functioning as both a centralized and decentralized version control system, making the mental shift easier.
- We're currently exploring what sort of Drupal.org-related action items exist, as well as what possibilities exist for moving off of project* module, should we decide to do that, just to get all possible cards on the table.
So if you have expertise in Git or Bzr (or preferably, both), knowledge of the various Drupal.org infrastructure/Project* module details, and/or can provide more details to flesh out the blanks in the wiki, please head over to Action items for moving Drupal.org off of CVS and pitch in!
(Note: Comments are off on this post, because you should be posting over there instead. :))
Using different images in translated content
I've been looking at how we can include different images in translated content. Translating the text in content is fairly straight forward but keeping track of hundreds of different images in many languages quickly becomes a serious problem.
We have had an inquiry from a client that has an online help system using Drupal. Many of the help pages include screen shots and these screen shots need to be different in each language. We're talking about thousands of images, translated into at least six languages.
4 Drupal Security Issues
UPDATE: There is some controversy about 1), see more information here: http://drupal.org/node/475858.
While Drupal is a secure system, there are 4 configuration issues that are often overlooked when developing a Drupal site. By following a few easy steps, we can make a Drupal site much less vulnerable.
1) Leaving Drupal Version Information Text Files on Server
A lot of developers forget to delete the Change Log and other text files that come with the Drupal package. By leaving the text files on the server and having them accessible, you enable potential hackers to know about the exact version of Drupal that you are using. Once the hackers know about the version, they can more easily find the exploits to hack into the Drupal site.

2) Cross Site Scripting
Drupalcon SF 2010 session submission - How to build a Jobs Aggregation Search Engine with Nutch, Apache Solr and Views 3 in abou
Yea I just submitted my Drupalcon San Franciso 2010 session now I have to wait to see if it's worthy of a talk fingers crossed
Here are the details and the Drupal Con session submission link just in case you where wanting to vote for it on Feb 16th, 2010:
-->We're not an underground success anymore
Filmmaker John Waters began his career as an "underground success", making films that mainstream wouldn't touch because they were too controversial, raunchy, or just plain weird. After several underground successes, however, he started to get noticed outside of underground and indie circles and move into the mainstream, where he had even more commercial success.
Many of his fans derided him for the move, claiming he was "caving into the man" or betraying his underground roots by adapting his style for wider audiences. In an interview for his 1998 film Pecker, Waters made the comment (sadly I do not have the direct quote handy) that the problem with being an underground success is that you then, by definition, cannot stay underground. And yes, that means you sometimes have to change things.
Why do I bring this up? Because Drupal has long since ceased being an underground success and is now a major mainstream open source player... and it's time that the community acted like it.
Better SEO Using The Page Title Module
Anyone who has been doing Search Engine Optimization (SEO) for a very long knows that what you title your web pages is very important. To get a little technical, since there can be some confusion, when I refer to Page Titles I mean what is between the <title> and </title> tags in the heading portion of a web page. This is the title that shows at the top of your web browser when visiting a page.
Aegir 0.4 Alpha 5 installed on my Linode VPS, and now I've got my little ecommerce platform kicked-off!
I read on the Development Seed blog about a New Release: Aegir 0.4 Alpha 5, and since aWebFactory finds itself in the midst of retooling (Git! Aegir! ... more soon), I knew this was a great moment for biting the bullet and stop reading about Aegir and actually installing and enjoying all that hard work the devs had been doing.
The post includes a link to mig5's incredible video (see below for References and links), which also basically follows the step-by-step instructions found in the officially supported INSTALL.txt and the first part of this article basically consists of the steps I took following along. It took me about two hours to install Aegir and make my first use of it (deploying some new staging sites), as well as writing this post.
Towards a perfect Drupal Development Environment.
Below you'll find my slides for the presentation at fosdem 2010
Setting up a new machine to be able to do drupal development often takes a lot of time, googling and tweaking. To ease that process i've created a automated installation process which takes you up to speed in roughly 20 minutes.
The whole installation process is split up in three different steps.
- Setup Lamp Server
- Setup Drush
- Setup Eclipse
These steps have been automated based on a freshly installed Ubuntu 9.04.
Just run the following code and follow the trivial installation steps.
Presentation evolution
I remember how skeptical I was looking at some presenters traveling around to multiple conferences with "the same" presentation a decade or so ago. Having been a course instructor for years and being a presenter for even longer, it looks completely different now. It's not that the topics you cover under the same looking umbrella can be quite different, you also find much better ways to express whatever you want to tell your audience as you experience feedback.
Of course the best would be to present your story crystal clear from the start, but despite being an enthusiastic follower of Garr Reynolds and Nancy Duarte, you'll undoubtedly need lots of time anyway to take a relaxed look on your story and distill to the level needed to form a great presentation. I've actually found it quite hard to refine my slides without actually showing/presenting them to an audience. The faces, questions, smiles and sometimes plain staring expressions you get tell you how you'd done and you can derive ways of how can you improve.
Two interesting examples are my slides on Drupal 7 and localize.drupal.org.
D7 Fields in Core
In Drupal 7, one of the major advantages is Fields in Core, the concept that any and every entity can have fields added to them in a standardised manner. All of the CRUD is dealt with by core rather than replying on contributed modules. It is an evolution of the CCK module for Drupal 6 and before.
We have been using Fields in Core in the update of the Storm module to Drupal 7, and it is quite easy to get going with.
Drupal Backup and Migrate 2.2 Module Issue?
Over the past two days I spent quite a few hours trying to figure out why the update for Backup and Migrate 2.2 would not save to the scheduled folder.
Since I had two sites and it was only occurring on one of them I knew it was not the module itself but more likely a permissions issue. This is where I spent most of my time, verifying the various folders permissions, ownership etc...
The Drupal module Backup and Migrate places an htaccess file in each of the folders, manual and scheduled, with:
order deny,allow
deny from all
