Code Baboon is the online home of Mark Theunissen - software developer, web enthusiast and Drupal devotee. This is the front page with my latest articles and blog posts.

Feel free to leave a comment or grab the RSS feed. Thanks for stopping by!

firebug-xdebughelper.png

If you're a developer who uses the XDebug PHP debugger, you probably already use a Firefox extension called XDebug Helper, which provides a convenient toggle switch for enabling debugging. You probably have Firebug installed too. Here is a method for setting up keyboard shortcuts to toggle them on and off (I use F1 & F2).

First, install the keyconfig Firefox extension (unfortunately it doesn't have an official page). Click Tools->Keyconfig... and you should get the following window:

keyconfig-screenshot2.png
Drupal surfboard

So what does everyone think of my new surfboard? It's a custom 6'3" made by Clayton (site under construction) in Durban, South Africa, my home break. I took it for a test drive last week and it is a sweet board indeed! Very reasonably priced too, especially after converting British pounds into South African rand.

I'm currently based in London, but I'm planning a few surf trips to Indonesia and Western Europe in the near future. Look out for photos of Druplicon inside some sick barrels. I hope.

fragfx-v2.png

I received my Splitfish FragFX V.2 for Playstation 3 yesterday, and I'm very pleased so far! The response in games I have tested (Bioshock, Killzone 2 demo) has been awesome. So much better than using the analog sticks. I can easily strafe sideways while staying locked on a target, something that I find almost impossible using sticks. That said, it's not as good as a PC mouse, but I didn't really expect that. Ultimately the FragFX has to translate mouse movements into analog commands, and thus it will never give you perfect 1:1 movement. But it's good enough!

Only problem is that the frag button doesn't work, but according to Splitfish there will be a firmware update next week that fixes this. Until then, I think I'll be starting Bioshock from scratch. Awesome!

versions-screeny.jpg

Versions has finally made it out of beta. It's a very intuitive GUI for managing subversion repositories and working copies. We've been using this application for a long while now, and found it to be user friendly and suitable for designers and developers alike. Recommended!

digital-people.png

The company I'm currently working for is called Digital People, a creative agency based in London. We make exclusively Drupal-based sites, which normally showcase the results of market research, and increasingly act as portals into the research departments of large companies.

We develop using a subversion based workflow. Here's a great article by Nick Sergeant which closely approximates our current development practices:

http://nicksergeant.com/blog/drupal/my-thoughts-small-scale-drupal-development-production-environments-cvs-and-subversion

The only difference being that we don't check our "files" directory into subversion, as it often contains video and other large files.

ubuntu logo

Just a quicky for those experiencing problems getting desktop effects to work in Ubuntu Intrepid Ibex 8.10, after enabling dual monitor or dual head support. In my case, the problem is the Intel driver not supporting a high enough texture size. This is not yet fixed in 8.10, but should be at some point. Here is the link:

https://bugs.launchpad.net/ubuntu/+source/mesa/+bug/146859

The problem is that compiz is checking GL_MAX_TEXTURE_SIZE and failing if the value is not as high as the Virtual Screen size that's set in xorg.conf. You can check the value by running:

glxinfo -l | grep GL_MAX_TEXTURE_SIZE

If this is lower than the value in your /etc/X11/xorg.conf file, compiz won't start! You'll see the error if you try run compiz from the command line.

In the meantime, you can work around this by stacking your monitors on top of each other instead of side by side, thus reducing the virtual resolution to within the required bounds. This works for me as my secondary screen is my TV, so it doesn't really matter what the virtual positioning is!

I'm moving to London soon. From sunny South Africa to a place where it's currently snowing! So with that in mind, here's a pic from the Nature's Best Photography Awards:

codebaboon london

I'll look something like the one on the left, except I'll be clutching a snowboard in one hand and a ticket to Austria in the other...

A method of syncronising database changes from development to live using Toad for MySQL.

Requirements: advanced Drupal, database administration, experts only

toad-mysql

One of the recurring problems faced by Drupal developers is database change management. If you don't encounter this problem yourself, then just imagine a scenario where you have a live site that needs to be running 24/7, while all your changes are made on a development server.

The big problem comes in migrating all the database changes from the dev server to the live one, without overwriting any data. Some people simply fiddle with dev until they’ve got it right, then duplicate all their work step-by-step on live, until they’re the same. You can imagine how perilous this process is!

I’ve been needing a solution to this problem for a while now, so I’ve pieced together this guide in the hope of receiving feedback from those who are wiser than me! I have not thoroughly tested this method on a real server configuration, only on my localhost, so I don’t know if it’s foolproof yet. But please take a look!

Requirements: basic css, image editing, basic theming

The fivestar module provides a tidy little voting widget that allows users to vote on nodes. It also provides a CCK field of the type "Fivestar Rating", which can be used to rate a node on multiple criteria.

One of my pet projects, Hill Bomb, requires just this functionality. It's a maps-mashup site for downhill riders, for example skateboarders or mountain bikers, to upload details and maps of awesome hills around the world. Here are the some of the ratings that users can give to hills:

ratings-1.png
Syndicate content