Ads are back - this time FLOSS only though!
This month I found out about the free software advertising network. I took the opportunity of moving my blog to Drupal to add ads for ethical computing, approved by the Free Software Foundation: "The Free Software Community now has an ethical alternative to ad networks that promote proprietary software".
Damn, I'm even tempted to click on these ads myself!
Moving my blog from WordPress to Drupal
WordPress is a great blogging platform. I've been using it for a couple of years now for my blog. However, with some small exceptions I haven't really dived deeper into it. Since most of my professional time (and a lot of my hobby time) goes into Drupal I started looking into moving my blog to Drupal. I've also been thinking about how I want to publish more about the work I've been doing.
So I naturally came across the WordPress import module and started playing with it. It was mostly great. I had some password protected pages on my WordPress blog. The module didn't really handle these, it didn't even inform the user about these pages. I posted an issue and the module got updated a while ago. drupal.org still seemed a bit weird in its inner workings, but since this WordPress issue I got back into it again. Anyway, now the pages are just left unpublished, which is good enough for me.
Views has a nice monthly archive view to replace the archive functionality in WordPress, but the links to archives in WordPress look like guaka.org/2010/02, which is currently a bit harder to achieve in Drupal. It would be possible with a smart .htaccess rule but I found out that Google and Yahoo haven't indexed any of these archive pages, which makes it much less urgent to fix this.
Fixing tags and categories URLs took a little bit of tampering with pathauto, and I don't think it's completely working already, but I don't mind a minor SEO penalty for a couple of broken links if it allows me to add a lot more and varied content to guaka.org.
For the theme I decided to give Acquia Prosper theme a try. Through the Skinr module it becomes really easy to make quick changes. I decided to be lazy for now and used the CSS injector instead of subtheming Prosper.
So as it stands I'm happy enough with the current state of guaka.org and I'm going to switch right now...
memcache doesn't necessarily speed up your Drupal sites
$ sudo pecl install memcache downloading memcache-2.2.5.tgz ... Starting to download memcache-2.2.5.tgz (35,981 bytes) ..........done: 35,981 bytes 11 source files, building running: phpize Configuring for: PHP Api Version: 20041225 Zend Module Api No: 20060613 Zend Extension Api No: 220060519 shtool at '/tmp/pear/temp/memcache/build/shtool' does not exist or is not executable. Make sure that the file exists and is executable and then rerun this script. ERROR: `phpize' failedSince I run Debian I solved this by running
apt-get install php5-memcache instead.
I restarted php-fastcgi (needed for nginx) and added $conf['cache_inc'] ='sites/all/modules/memcache/memcache.db.inc'; to settings.php.
Then I ran some tests in Hammerhead. Not on the front page since there is an embedded Youtube video. I chose a page without any external elements. I was a bit confused at first, and ran several short tests. I forgot to log out and the memcache module was adding a lot of extra information in the bottom. I thought that was the reason that my site was a lot slower with memcache than without it. So I logged out and tried again:
| count | latest | median | avg | |
|---|---|---|---|---|
| empty cache with memcache | 4 | 1449 | 1449 | 1759 |
| primed cache with memcache | 4 | 1277 | 1186 | 1184 |
| empty cache without memcache | 4 | 1239 | 1283 | 1483 |
| primed cache without memcache | 4 | 1014 | 900 | 950 |
Adding Group overview to CiviCRM contact summary page
{include file="CRM/Contact/Page/View/GroupContact.tpl"}
In order to keep my customizations separate from the core CiviCRM code I tried adding the following lines to the template.
{php}
require_once 'CRM/Contact/Page/View/GroupContact.php';
CRM_Contact_Page_View_GroupContact::browse();
{/php}
But that did not work unfortunately.
So for now I stick with adding the following lines to CRM_Contact_Page_View_Summary extends CRM_Contact_Page_View::view() in sites/all/modules/civicrm/CRM/Contact/Page/View/Summary.php:
require_once 'CRM/Contact/Page/View/GroupContact.php';
CRM_Contact_Page_View_GroupContact::browse();
There should be a nicer solution that doesn't require hacking core CiviCRM code...
A job?! And, time tracking in Drupal?
Hitchwiki everywhere
Wanted: Wireless Researcher for project in Dharamsala, India
AirJaldi, a nonprofit dedicated to harnessing the capabilities of the internet for the benefit of rural communities in developing countries, is looking for a highly-motivated and experienced person to take a central role in carrying out an innovative research project aimed at developing a viable Bandwidth Maximizer for rural Wireless ISPs (WISPS). The job is based in Dharamsala, HP, India. Your technical work will be supervised and monitored by AirJaldi’s CEO and CTO. You will report directly to AirJaldi’s CEO, based in Dharamsala. Responsibilities/Scope of Work: Lead Research focusing on, amongst others:
- Searching and testing low-cost or Free software and hardware products for use as parts of the BwM system.
- Adapting and integrating hardware and software components to create the BwM system.
- Test and deploy a prototype BwM in the lab, on an emulated network and on a production network in Dharamsala.
- Document and summarize research findings and participate in preparing project reports for funding body and general circulation.
- Prepare Operation manuals on setting up, configuring and operating the BwM.
- Assist in other AirJaldi tasks as needed and required by the CEO.
Qualifications / Skills / Experience In order to successfully carry out your work and as importantly, enjoy it and derive as much satisfaction from it as we do, you will need to: Be willing and able to live in a small, rural setting. Ability to work within a multi-national multi-lingual and multi-cultural team. Be an excellent team player – we mean this. Our team is built is based on getting the most from each of our team members, which calls for mutual respect and support. (professional and personal). You will be required to adhere to these principles.
- Extensive hands-on experience with administration of GNU/Linux and Linux-based networks and systems. Past employment with an ISP, hosting-facility or IT department of a large enterprise a major plus.
- Strong familiarity with F/OSS tools and their integration.
- You should be very confident with the following terms, protocols, servers and environments: multilayer IP switching and routing, firewalls (iptables), Policy-routing, DNS management and debugging, SMTP (sendmail, exim), POP/IMAP, HTTP (apache), Squid, Radius, LDAP, VPNs (OpenVPN), etc.
- Familiarity with NMS and network provisioning systems is essential- the job will require setup of advanced Nagios-based network monitoring systems for very large and complex networks.
- Familiarity with the following tools and similar ones required: Nagios, Cacti, MRTG, RRD, SNMP, Munin/Orca.
- Experience with routing protocols, QoS setups, Embedded-Linux, MS-Windows machines support (Samba, wins) a plus.
- Previous knowledge of RF a plus.
- Previous field experience, in particular in a developing country, a great asset.
More to follow: wikis without nofollow
- Cultwiki
- Hitchwiki (only in English)
- Cashwiki
- Wikifurniture
- Wiki-Limburg
- P2P foundation wiki (edits only open for people with accounts - account creation not open)
We're working on 73 pages. If this number somehow bothers you you are very welcome to start a new page.
Cultwiki.org is a wiki about cults.Great great fun. "Objectivism is a cult whose members have no opinions on anything. So seemingly there are no human objectivists." "Deserts play a big role in cults. Think of Jesus, Moses and Burning Man."
- April 12th 2009 - Cultwiki was started by guaka and Realitygaps.
- July 24th 2009 - guaka couldn't take the inertia and started a wee sprint, Realitygaps followed soon thereafter.

