Archive for the 'PHP' Category

Zend PHP 5 Certification

Sunday, 18th June, 2006

I bit the bullet last week and ordered a Zend Certification Voucher. This afternoon I went to book an exam; during Pearson Vue’s registration process Zend require you to enter a Zend network username (I forgot I had one). While scouring the site for my username I stumbled across this thread on their forums.

With the new PHP 5 certification going live in just 5½ weeks (26th July) I figure I’ll hold off booking my exam until this materialises. Now to Ebay my Zend Certification Study Guide!

To become a ZCE or not to become a ZCE?

Monday, 12th June, 2006

When Zend released their certification in 2004 I promptly picked up their study guide in October 2004 (along with MySQL’s study guide). However, even now I’m still not certified, I’ve studied the material but never booked the exam. When I stumbled across this thread it reminded why I never booked the exam.

An interesting quote from Chris Shiflett (PHP security guru and member of the Zend Advisory Board) about the study guide:

However, I feel obligated to voice my concerns about the book. It was very rushed (we each had a couple of weeks to write our chapters), and the production time was nearly cut in half. As a result, the book has more errors than the average technical book. In addition, the practice questions in the back are ones that were thrown out of the real exam. This means that they were considered to be too hard, too tricky, or too useless (like memorizing the order of arguments passed to a function). I think the guide actually hurts the exam for this reason – people see those questions and begin to form an opinion about the exam itself.

This was exactly what put me off certification. I’ve lent this study guide to other (who I would consider experienced) developers at work, and they would only pass 60% of these test questions. Are they poor developers, or not bright enough? I hope not because I failed the same questions!

The problem with these questions is they’re assessing programming problems that rarely apply to "real world" programming. For this reason certification lost it’s appeal. An example:

What will the following script output?

<?php
$a = 1;
$a = $a- + 1;
echo $a;
?>

A. 2
B. 1
C. 3
D. 0
E. Null

This isn’t actually from the back of the book but the exam prep questions from the first chapter! Post your answer in the comments :)

MySQL 5.0 not so production ready?

Monday, 29th May, 2006

For several months now I’ve thought MySQL 5’s push to a production ready status was more of a political move than technically justified. First I read this and again today when it came time to compile any MySQL support into PHP 5.1.4 on my newly installed Linux box I ran into problems.

We’re in the process of making the move to MySQL 5.0 at work too; however since we’re moving from 3.23.x there’s nothing too clever going on with the SQL. I always check up on the changes made in recent point releases. MySQL 5 scares me because of some the bugs still unpatched (SELECT DISTINCT queries sometimes returned only the last row), we’re now on more point releases for 5.0 than 4.1 (21 vs 19).

Goodbye Fedora, Hello Slackware

Sunday, 28th May, 2006

So I got XDebug working a couple of weekends ago. After much fun trying to install KCacheGrind on Fedora and setting up X forwarding to my Windows box I finally saw the fruits of my labour.

KCacheGrind on Windows via XMing

I was impressed with the Call Graph which shows the flow of execution. This is a framework I spent some time developing in April for a music store. I hope to make more use of this profiling at work some time.

Ironically just as I had got this working my Fedora install starts to play up (after running fine with no X for 18 months beforehand). The filesystem would become read-only after several hours idling. Turns out a part of the filesystem was corrupt; I was constantly having to reboot and run fsck to correct these errors. However yesterday fsck took ages to sort things out and more and more files were being lost so I figured it was time to re-install.

Fedora has been my distribution of choice for a couple of years but this is the second time I’ve had to wipe the drive due to disk errors. I think this is largely due to heat issues, my linux box is a shuttle PC and it gets pretty hot compressing off-site backups from this co-located server come 5am! After re-partitioning, formatting and running check disk in Windows, the drive seemed completely healthy (most odd considering on boot it was reporting “S.M.A.R.T bad” errors). When re-formatting in Slackware and checking for bad sectors – none found! Strange albeit good news I guess.

So why Slackware? Well after the messing around required to get KDE up and running on Fedora I wanted to move to a pro-KDE distribution. I’m not a fan of managed distro’s like Gentoo (emerge yuk!). Call me a control freak but too much happens behind the scenes, I like to install the major applications from source so unexpected changes don’t occur when you update system packages. I also prefer the default layout of Apache/PHP/MySQL, upgrades are easier, no waiting on your fav distro to prepare customised packages.

Slackware has thrown me a few curve balls early on though (just getting vim working correctly!). I forgot to install atk, which appears to be a GNOME library (so much for a GNOME free system), and ‘vi’ was symlinked to elvis (which from my brief experience seems horrible). Turns out Slackware is BSD init based not System V, meaning it doesn’t use the rc.1, rc.2 directories like Redhat etc. This was enough to trip me up when trying to install the mysql.server init.d script, easily solved though:

cp support-files/mysql.server /etc/rc.d/rc.mysqld

Umm’ing and arrh’ing

Saturday, 27th May, 2006

We’re moving offices soon at work, in the process we’re having a serious clear out due to the reduced space we’ll have at the new premises. As a result I’ve picked up a couple of unwanted Java books. I never appreciated how similar OO PHP5 code is to Java, infact it looks like a complete rip off! I had also not appreciated how many OO concepts I’d become familiar with…

This of course got me thinking, I might stretch my programming legs and have a look at Java over the summer. I can’t see it being much of a leap from the PHP5 code I’ve been writing in my own time. There’s a few new things in there like inner classes, nested interfaces and threads but with the majority of the concepts I feel I’m already comfortable. Continued squabbles on the PHP internals list only encourage me to do this, who knows, there’s a whole lot more Java jobs out there (which are better paid too!).

This is a turn around from the time I spent over Christmas looking at C# :)

You are currently browsing greg's weblog archives in the PHP category.

Categories

xhtml 1.1 compliant   xhtml 1.1 compliant