Whishlists

I wonder if the concept of amazon whishlists work. Or have you ever got something from your whishlist, because you did something in/for PHP?

Mercurial bookmarks

A few month ago, Matt Mackall the maintainer of the Mercurial version control system, came up with the idea to implement so called bookmarks for mercurial.
Read the rest of this entry »

Music Industry: Failed!

I really like to buy CDs. Actually if I hear a few good songs from an album, I usually buy it, but this time it get’s really hard. I want to buy “Tales of the Forgotten Melodies” from Wax Taylor. In fact, it is not available in germany. I mean: WTF. It is a damn good album. Amazon list it but doesn’t really sell it. I want to have this album, but no chance to get it. I want to buy it. Dear ******* music industry: how can I buy my beloved album? No chance? What should I do instead?

International PHP Conference 2008: On sharding architectures

I gave a talk about sharding at the International PHP Conference 2008. I started with a short introduction about the problem that sharding tries to solve. Most of the talk was about the actual implementation and problems that people might run into if they try to use sharding in their projects. Ulf already gave a about optimization possibilities using mysqlnd’s ability to do asynchronous queries. And last but not least, it was nice to have the ability to talk to Jan or other people, who gave me interesting new ideas on sharding. The slides of my talk can be found here. Feel free to comment.

Sharding Architectures
View SlideShare presentation or Upload your own.

distcc with Ubuntu and Gentoo – Knowing your defaults

I didn’t use distcc for quite a while. Usually modern dual or quad CPUs are fast in enough to compile in a reasonable time, but after compiling PHP 100 times, I wanted to make things faster and use distcc with my server which otherwise just idles around. My laptop, where I usually compile PHP, is a 1.2Ghz dual core with 2gb ram running Ubuntu 8.10 beta. The server is an up-to-date Gentoo on a 2.7 Ghz dual core with 4GB ram. If you install distcc, which is pretty straight forward, and start compiling you might run into the following error:

/usr/include/bits/stdio2.h:98: undefined reference to `__builtin_va_arg_pack’

Read the rest of this entry »

Compiling PHP under OpenSolaris

As I switched my main system recently from Linux to OpenSolaris I compiled PHP. Quiet obvious things are a little bit different on Solaris. The usual ./buildconf && ./configure && make install doesn’t work anymore. The good news: It’s not much harder. Let’s start to get the prequisites:
Read the rest of this entry »

Zend Con [UPDATE]

So I’m finally at Zend Con, and guess what, got the first problems. Even I’m Zend Certified and a Dev, I’m not allowed to go to the ZCE Meeting as I just have the exhibitor badge. I just wonder why it’s called ZCE Party than if ZCEs are not allowed to attend. Thanks to Cal, I was able to attend, and it was really a great party. Thanks Zend. Nervermind, so I have more time to finally fix some bugs and go to the lobby afterwards.

Speaking at IPC

So following the tradition of announcing the own talks:

I’m going to hold a talk at IPC (end of october) about a particular of database partitioning: sharding and I’m going to Zend Conf, even not holding a talk there. So looking forward to meet people there.

Optimization

“Every language has an optimization operator. In C++ that operator is ‘//”

Extension development on windows

When it comes to choose a operating system to run PHP applications often Linux is the choice. PHP, it’s buildsystem and it’s extensions are developed and optimized to run under Linux (and Unices). There are several reasons that Linux is the better supported operating system. Maybe due to historical reasons, maybe most of the core developers work und Linux (rumours were afloat that this is not quite true) or maybe just because the extensions finally run on a Linux server, so therefore it only counts if it runs under the target system.

This is actually the reason to not even try to compile my ktaglib extensions under Windows. Well but this approach is doomed to fail as most of the developers out there use Windows as their operating system. Therefore they are not able to run the extension and might not be able to ingerate your extension into their application. So actually I ended up booting up windows again (well after searching for the harddisk that contains a running windows) and try to compile it. Otherwise my fellow collegues wouldn’t be able to fix my buggy PHP code.

I remember compiling extensions under Windows a year ago, which actually doesn’t seems to be very easy for me. Since then a lot changed. Ongoing pecl2 efforts from Pierre with great help from Elizabeth and Rob now makes compiling on Windows without deeper knowledge about the Windows buildsystem easy. They carry together various notes about the build dependencies in the official php wiki. Furthermore Elizabeth recorded a video showing how to compile PHP on windows in a few minutes. So I actually ended up going to the pecl2.php.net page and just get the necessary libraries, put them into the right directory and compile PHP the same way as under Linux.

This helped to actually get ktaglib running under Windows. Just take the taglib windows port from the taglib website and compile your windows ktaglib using the PHP windows build system. Maybe the new scripts from the php-internals-win repository, that Pierre recently commited, help you to get you way through. It’s really amazing to concentrate on the work and not trying to get a buildsystem working.

ktaglib is a PHP binding for KDE’s taglib that helps you to read id3 tags and audio information from MP3s or OGGs. The current version is 0.0.1a1 and can be downloaded at http://pecl.php.net/package/KTaglib