Look, most new products spend YEARS in development - god only spent 6 days rushing out the entire universe, and only a single day on humans (if that). When you rush things out they contain bugs and after that you need to patch them and maintain them.
Adam and Eve were corrupted by a snake (worm) and everything went south from there - you can see it time and time again; god backed up his important documents and placed them in an ark and then formatted the world, before declaring he should never have to do it again, yet he reguarly formats mini sections of the globe in a haphazard manner.
Jesus represents a sort of Service Pack, however it is clear that after that God just sort of gave up and hasn’t bothered to make any updates since.
God the Software Developer
Chocolate ice cream
Whenever there’s an offer on the premium chocolates I tend to stock up. Lately I’ve been eating my chocolate quite slowly and have built up a little cache as a result. So what do you do when there’s yet another offer at the supermarket?
You make chocolate desserts, of course.
As it’s summer, the first dessert you ought to make is ice cream. It’s simple to make if you’ve got an ice cream maker, otherwise it can be a bit of a faff to freeze slightly, blend, freeze, blend, freeze… the manual process makes it a special occasion piece, the ice cream maker enables it to be a regular occurrence.
This recipe from Olive magazine gives you a rich, bitter chocolate-lover’s ice cream. I prefer to substitute half the cocoa for an equivalent amount of 70% dark chocolate - not a large difference, but I prefer it.
Lighttpd, PHP 5.3 and MySQL 5.1 on a small VPS
To save money, I decided to migrate several of my family’s websites to a VPS. Now, setting up lighttpd is a piece of cake, but because these websites are dynamic, database-backed affairs, you have to do a little more work. I might be a programmer, but I’m not really a Linux expert.
That said, it was relatively painless, and in contrast to some previous experience. Besides, who needs tech support if you have Google and a decent brain in your head?
Why Lighty?
Apache is very well known and full-featured. It’s also rather memory-hungry. Lighttpd has a far smaller memory footprint, but still has a lot of capability; if YouTube and Wikipedia prefer it over Apache, it’ll be just fine for my piddly little sites.
The smaller memory means I can get away with a smaller VPS. I’m using an incredibly inexpensive 128MB instance from Prgmr. Even that is overkill, but then I’m not using the server solely for websites.
Also, configuring lighty is pretty simple. I never had much fun configuring Apache.
Step 0: download all you require
I chose to build lighttpd and PHP from source for more control. For MySQL, I decided to install a package provided by the IUS Community Project (more details on doing this yourself here).
Step 1: get lighttpd working
Follow the guide, obeying the instructions for your particular distribution.
It would be wise to create a unprivileged user for lighttpd to run as. After installing,
addgroup www
adduser -g www -M www
Now let’s create somewhere for the websites to reside:
mkdir /var/www
mkdir /var/www/default
echo hello world >/var/www/default/index.html
chown -R www:www /var/www/default
Finally, setup lighttpd.conf (should reside at /etc/lighttpd/lighttpd.conf) with the following:
server.username = "www"
server.groupname = "www"
server.document-root = "/var/www/default/"
mimetype.assign = (
".html" => "text/html",
".txt" => "text/plain",
".jpg" => "image/jpeg",
".png" => "image/png"
)
Run /usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf and try connecting to your server. If you get the ‘hello world’ message, everything is rosy. Press Ctrl+C to stop lighttpd and install the other bits.
Don’t forget to /sbin/chkconfig lighttpd on so that lighty runs on server startup.
Step 2: install MySQL
I did this from a package, so nothing more to say here than yum install mysql51 mysql51-server mysql51-devel.
It’s important you install the development package as PHP requires the MySQL libraries/header files for MySQL support.
After installation, run /usr/bin/mysql_secure_installation to finish setting up the database. (Very important!) Follow the prompts and accept their suggestions.
Check you can connect to the database with mysql --user=root --password. If everything’s fine, go create a database and a user account for your PHP website to use later.
Again, /sbin/chkconfig mysqld on.
Step 3: build and install PHP
yum install flex bison
tar xvjf php-5.3.2.tar.bz2
cd php-5.3.2
./configure --with-mysql
make
su make install
cp php.ini-production /usr/local/lib/php.ini
You probably want to pass more options to ./configure depending on what libraries you need support for, or alternatively don’t want support for. A full list is here. Configure will complain if it can’t find PHP’s dependencies, but it’s not too hard to sort out (hooray for package managers!).
Edit your lighttpd.conf to add the following:
server.modules += ( "mod_fastcgi" )
fastcgi.server = ( ".php" =>
( "localhost" =>
(
"socket" => "/tmp/php.socket",
"bin-path" => "/usr/local/bin/php-cgi",
"bin-environment" => (
"PHP_FCGI_CHILDREN" => "16",
"PHP_FCGI_MAX_REQUESTS" => "10000"
),
"bin-copy-environment" => (
"PATH", "SHELL", "USER"
),
"min-procs" => 1,
"max-procs" => 1,
"idle-timeout" => 20
)
)
)
This sets up FastCGI for use with PHP. You should restart lighttpd to make the changes take effect (/etc/init.d/lighttpd restart) and test if PHP is working in the classic manner (echo <?php phpinfo() ?> >/var/www/default/phpinfo.php). Go to http://
Now go and configure to your heart’s content. Have fun!
Things I do
I use mod_rewrite, mod_redirect and mod_accesslog, among others. As you can see, lighty is quite powerful.
# Redirect subdomainless addresses to their www equivalents
$HTTP["host"] =~ "^([^.]+)\.(com|co\.uk|net)$"{
url.redirect = ( "^/(.*)" => "http://www.%0/$1" )
}
# Rewrite subdomains.domain.com to doc-root/subdomain
$HTTP["host"] =~ "^(.*)\.starfishgames\.co\.uk$" {
server.document-root = "/var/www/starfishgames.co.uk/pages/"
url.rewrite-once = ( "^/(.*)" => "/%1/$1" )
accesslog.filename = "/var/www/starfishgames.co.uk/access.log"
}
There is good espresso, and then there is bad espresso
This article appeals to the coffee snob in me, and might go some way to explaining why you might love coffee but hate espresso.
I had no idea that anyone could contemplate using as much as 20 grams of it for a double, let alone a single - ugh! At least now I know how some places manage to make such syrupy drinks. And these are the same places that will give you weak tea, when they’re doing the coffee equivalent of stuffing four teabags into a mug.
Crazy world.
Electoral reformers... proportionally represent!
The election results are in and the UK has a hung parliament. Nobody wins.
Especially not the people.
The Conservatives have 36% of the popular vote and 47% of parliament.
29% of people voted Labour, awarding them 40% of seats.
Finally, the Liberal Democrats get 23% of votes, but just 9% of seats.
(source)
In what world is this disparity between the electorate’s wishes and the actual result fair?
It’s not even the first time our voting system has given skewed results. In 2005, Labour got 3% more votes than the Conservatives across the entire country, yet this translated to 24% more seats in parliament.
As a result of our political system’s inherent need to form a majority government, we are going to see a possible Con-Lib or Lab-Lib coalition. This is unlikely to please voters of any of the three major parties due to conflicting policy interests. Britain simply isn’t used to compromise, and as a result we have a real problem dealing with it in times, like now, when it is required.
Storm clouds of discontent have been brewing ever since it became possible for less than two-fifths of the population to set the government for the entire country. Now we have no majority party we are forced to deal with it. Perhaps, at long last, we will.
We don’t need superficial change, as presented by the Tories. We need genuine reform.
We need to take back parliament.
More info on the hard facts, with charts visualising where your votes go - or don’t.
Tis the season of asparagus
Ooh, you know you want some. My first encounter with asparagus was at an Italian restaurant in a risotto - it was pretty damned delicious. Besides which, there are few vegetables with that unique, inviting look, much less any that retain that look post-cooking.
(photo by itsjustanalias)
Tonight I am going to try it with tomato salsa and mild, crumbly cheese. I’m personally substituting the suggested cheese for Caerphilly; one day I’ll have the budget to let me mimic the foodies’ experiences, but knowing cheaper and more readily available substitutes to the niche ingredients is very useful for a budding cook.
Also on the menu: diced tuna lightly rubbed with Cajun spices (Bart’s make a nice mix). Clearly I’m making up for our grill pan’s months of disuse.
Jarvis Cocker's Ragdoll Records

Has anyone played those games where you have to drag a ragdoll body with the mouse?
That’s what immediately sprang to mind when I saw the picture of Jarvis Cocker on iPlayer. Someone’s clicked on his head and is dragging him across the side of the screen, hoping they might rub some static electricity into his hair.
It’s not just me, is it? Probably is. Oh well. Jarvis’s show is really good, though. Support him, and with it, 6music, by listening in. 6music needs all your help - nay, INDEPENDENT MUSIC NEEDS YOUR HELP. There are few outlets for new artists or anyone who strays from the mainstream; if the BBC follows through with its plan to axe 6music it will be a serious blow to musicians and music lovers. Do all you can to convince them otherwise.
Delicious chocolate pots
A rich, tasty and easy-to-prepare dessert - all it requires is patience
Serves 2-3, depending on how greedy you feel
Ingredients:
- 100g good-quality dark chocolate (for eating, not baking)
- 150ml carton of double cream
- 1 medium egg yolk
- A splash of milk
- A pinch of salt
- 2 drops vanilla extract
- 2-3 ramekins to store/serve
Break the chocolate into small pieces into a pyrex bowl. Heat the cream in a saucepan on a moderate heat; when it reaches boiling point, pour the cream into the bowl to melt the chocolate.
Separate the egg yolk from the white. Keep the white for another day - they freeze well, and there are an awful lot of things you can bake with them.
Beat the yolk in a separate bowl/mug, then add to the chocolate/cream mixture along with a splash of milk to loosen the whole thing. Add a pinch of salt and a couple of drops of vanilla extract. Stir well, making sure all the lumps melt away into homogeneous, chocolatey goodness.
The consistency of the mixture should be dense but pourable due to the warmth. Which is perfect, because now you’re going to pour it into the ramekins. Cover the ramekins with clingfilm to keep smells out and put them into the fridge to chill for 4-6 hours.
I suggest you take them out of the fridge for half an hour before you eat them. There’s nothing wrong with eating them straight from the fridge, but I reckon you experience more of the bitter cacao deliciousness when they are a little warmer.
Lights On
In just under 40 minutes, Ellie Goulding answers the question “What would Imogen Heap sound like if she did pop?”
You’d think the producers had decided that nothing on each track may sound harsher than Ellie’s voice. I mean that in a good way - it’s comparable to (but softer than) Cerys Matthews, interesting enough to act as an instrument in its own right, and often the driving force in each song. Although considering her acoustic folk roots, it’s no surprise.
In some ways it’s a shame she has transitioned only halfway between folk and Frankmusik. For example, I don’t know whether to be impressed or disappointed that the synthesisers didn’t break out of their soft, inoffensive bubble during Pink-soundalike ‘Every Time You Go’. Having access to a vast range of electronics affords you an intensity a lone singer-songwriter could only dream of achieving, but that capability isn’t used here. Goulding has stuck to what she knows best, in a move that has undoubtedly disappointed many critics expecting her to go one further than ‘Under The Sheets’.
That said, effects are put to very good use, keeping it fresh and interesting, even while you’re saying to yourself “this is a bit like Linkin Park here” or “ooh, they nicked that from ‘Last Christmas’”.
All in all, ‘Lights’ is a decent bit of pop with good melodies, an interesting backing track, a bit of emotional response and a nice voice to listen to. Really, everything pop music is meant to be, rather than Simon Cowell-produced noise pollution. If I wanted the full wrath of synthesisers and samplers I’d put on some Animal Collective, thankyouverymuch.
Bean salsa wrap
I had a few leftovers that needed using up - most importantly, the remnants of my homemade salsa after my housemates attacked it with their army of tortilla chips. Fortunately for me, I have a well-stocked food cupboard at my disposal.
Ingredients
- 130g mixed beans, rinsed and drained
- 1 tsp olive oil
- 1 heaped tsp Cajun seasoning (I use Bart)
- 100g tomato salsa
- a little bit of green pepper
- 20g cheese, grated
- 1 large wrap - a brand like Discovery works well
- 1 leaf of a large lettuce
- a little soured cream
Throw the beans in a saucepan pan together with the oil. Mix the Cajun seasoning into the beans and heat gently for 5 minutes.
Add the pepper and the salsa. I turned the heat up a little since my salsa just came out of the fridge. Sometimes you feel impatient, and that’s okay in its place, where you can afford to do it. (i.e. right here.) Anyway, heat through - probably another 5-7 minutes.
While you wait for that, grate the cheese and tear up the lettuce into itty bits. Have the decency not to use iceberg - that stuff is barely acceptable in a cold salad, let alone any place where warmth is involved. But if, say, your partner or housemates buy it, use it anyway and remember to scold them thoroughly afterwards for having such a mundane taste in vegetables.
Seriously. Iceberg lettuce is as pointless as a vacuum cleaner in space. It sucks hard yet achieves nothing. Feel free to take that analogy to the bank, by the way.
Er, where was I? Ah yes. Now you’ve cut up your cheese and lettuce into small pieces, it’s time to dispose of the evidence. But first, zap the wrap in the microwave for 10 seconds - no point having a warm filling if its container is going to cool it down before you even manage to get halfway through.
Cover the wrap with lettuce, spoon the bean salsa on top in a wide line, sprinkle the cheese over the mixture, and finally pour soured cream on top.
Folding wraps is the only hard part in this entire exercise. One careless move and you could get a creamy hand, except in this instance it’s socially acceptable to lick it off. And now you have that on your mind, happy eating! Tee hee!
Postscript: It might pay to mash the beans a little. Ersatz refried beans, if you will. I might try it with proper ones someday.



