Categories
Development Testing

How to automatically create testing databases (in PHP & MySQL)

If you use an automated testing platform (such as Jenkins) you may have come across the problem where you need to manually create a new database (and sometimes user) every time you configure a different build or a different host. For small projects it’s not much of a chore, but for larger projects (or complicated […]

Categories
Technical

How to enable IP forwarding with UFW

I’ve just spent the last hour trying to get IP forwarding to work with UFW nicely on Ubuntu. So in the interests of the common good, and so I can find it next time, I’m posting the answer here.

Categories
Development

Sorting an array with version number keys in PHP

There is a very quick and simple way to sort an array with version number keys in PHP.

Categories
Technical

Encrypted Home directories + SSH Key Authentication

There is an interesting it-makes-sense-when-you-think-about-it issue with Encrypted Home directories and SSH key authentication I’ve recently discovered in Ubuntu (it will affect any distro though). Since Encrypted home directories aren’t decrypted until the login is successful, and your SSH keys are stored in your home directory, the first SSH connection you make will require a […]

Categories
Development Testing

PHPUnit was not found in your include_path, therefore no testing actions will be created.

When I was setting up a new Zend Framework application today I encountered an interesting message: valorin@gandalf:~/workspace/application$ zf create project ./ applicationCreating project at /home/valorin/workspace/applicationNote: This command created a web project, for more information setting up your VHOST, please see docs/READMETesting Note: PHPUnit was not found in your include_path, therefore no testing actions will be […]

Categories
Random thoughts

A really long compilation window…

A very simple representation of the procedure programmers follow when developing systems looks like this: The client (sometimes the programmer themselves) comes to the programmer with a problem which needs to be solved. The programmer comes up with a solution to the problem, this can range anywhere from simply saying “I can solve this!” to […]

Categories
ThinkPad Reviews

ThinkPad L520 Review

A couple of days ago I received my brand new Lenovo ThinkPad L520 laptop, and after using it for a couple of days I am really impressed with it. While I’ve been having trouble installing and keeping Ubuntu stable, the hardware itself is fantastic.

Categories
ThinkPad

Installing Ubuntu 11.04 on a ThinkPad L520…

UPDATE #2: I have added a page onto my blog where I will post my troubleshooting notes for dealing with Ubuntu 11.04 on the ThinkPad L520.

Categories
Development

Simple Bash keep-alive script

I came across an interesting issue at work today. We have a PHP script which monitors a socket on our phone system to save call logs into a database. It’s pretty simple, but it needs to run constantly to catch all the phone calls going through the system. So I did some goggling and found […]

Categories
Development

Do you use Version Control?

I wrote this article for my work’s public blog – go there and post comments so I look cool 🙂