I’ve never been a huge fan of certification. Although I understand it is supposed to help gauge an industry benchmark in a given field, I often feel like it’s given the IT world a generation of good test takers who are not necessarily good designers. Still, I’ve programmed with PHP on my own for years and want to eventually move my career path towards that direction. I decided to get a one up and try for my Zend PHP5 certification. What I came away with was a massive sense in disappointment in Zend’s entire certification process.

I bought the package deal from Zend’s website which included a study guide, ten practice tests and a voucher for an exam. First of all, the study guide wasn’t a study guide but a PHP manual repeating a lot of documentation that can be found on the official PHP website. I had passed four of the practice exams, two with a score of ‘Passed’ and two with a score of ‘Excellent.’ Needless to say I was surprised when I failed the actual PHP5 certification exam.

The actual exam’s questions barely intersected with the material on the practice exams. Many of the questions weren’t even covered in the PDF that Zend labeled a “Study Guide.” I checked online to see if there were similar reactions over the certification test. I found one post on the Zend forms by a user named Nick A Williams that looks as if it were lost after Zend preformed an upgrade to their bulletin board software. The following is taken from the search engine cache of the forum1.

I must say I am very disappointed with the certification program so far. I have found the practice exams and study guide to be very misleading while preparing for the exam.

ZCE Study Guide
The very existence of a study guide suggests its purpose is to adequately prepare the reader for the real exam, covering everything the exam questions will ask. This is extremely misleading and actually reduces the value of the book, as it is clear that there are things asked in the exam that are not touched upon in the study guide.

Without explicit indication of this, a potential exam taker such as myself would have no reason to believe further studying beyond the scope of the book is necessary.

Online Practice Exams
I have found these practice exams to provide absolutely no value whatsoever. I have yet to fail a practice exam (having taken 6 so far), 3 of which were scored as “Excellent” yet I have now failed the actual exam twice. This would suggest that the practice exam does not help one to determine his/her readiness for the actual exam. If this is the case, what is the purpose of the practice exams and why does it cost money to take them?

Zend has established the expectation that if one passes the practice exam, the likelihood of passing the actual one is very high. A quote from Zend’s website:

Quote:

The questions on the practice test are different from the ones used in the real exam, however, they are also more difficult and complex-thus, if you score well on this exam, you should be comfortable that you are well-prepared to take the real test.

Combine this statement with the scores I received, and one can see how easily one can be convinced they are prepared for the real exam when, in fact, they are not.

Purchasing practice exams is supposed to help mitigate the potential for having to purchase re-takes of the actual exam (spend $20 for a 10-pack, aovid another $125 for a re-take). Instead, it has achieved the opposite – providing test-takers with a false sense of confidence (which is quickly shattered upon completing the actual exam).

So the nutshell version?

Test takers: Don’t bother with the study guide or the practice tests. Just RTFM and maybe read everything in the manual realted to the study guide’s section headings. Do that and you should be fine.

Zend: Adjust the descriptions for both the practice exams and study guide in your store to avoid confusion. Inform customers that the study guide is no substitute for the PHP manual. Remove your current practice exam description, and suggest how to properly use the practice exams for studying.

I hope the adoption rate of this certification program is indeed more important to Zend than the sales volume of books/practice exams/real exams. More certified PHP developers will add far more value to your business objectives than a few pointless sales1.

I don’t want to sound whiny about this at all. After all, certification exams should be somewhat difficult, be challenging and show an aptitude for the technology or language being tested over. Still, I do agree with Mr. Williams statement about how the practice material didn’t relate accurately to the actual exam. Whether this is simply due to Zend not updating their training material or if it’s an intentional attempt by Zend to gain money out of retests is unknown.

I also found some interesting concerns about PHP5 certification in the comments to a post from Michael Kimsal’s weblog back in 20082, showing that if the material is simply out of date, it has been for a very long time. From

Evert

I’ve tried the Zend Certification Training, I thought it was absolute bullshit (about 1/2 years ago). The exam tested on things like order of parameters and lots of stuff that can be found in the PHP manual. It’s much more important for new hires if they have problem solving skills, including being able to go to the manual, instead of memorizing it. Real skill comes from experience and being a good PHP developer means writing maintainable, secure and scalable code. Not being able to know the manual inside-out.

And another from Rb:

FYI: I took the PHP architect PHP 5 certification class, studied the PHP 5 Zend certification guide, took the online practice tests and passed. I have been coding PHP for 6 years. Yet I failed the Zend certification test. The test feedback was non-existent. I feel I am a better coder because I have studied. I will not waste my time to take the Zend Certification exam again.

Having been in Java web development for over three years, I also feel like I’m slowly being priced out of the market. Although tools like Spring have eased the burden of Java development in some ways, I still feel like scripting languages like PHP, Python and Ruby are vastly superior in web development to Java.

The horrors of Java Server Faces (JSF) attempt to turn the web into a component based system that HTML was never intended for. Like its .NET competitors based around C# and VisualBasic.NET, I think JSF abstracts way too much of the underlying HTML and makes it very difficult to accomplish the same tasks accomplished easily and cleanly in scripting languages and frameworks.

Although I feel gaining PHP5 certification would open me to more opportunities in that job market, I do not believe it will make me a better programmer at this point. I may simply focus on creating more tutorials and release some of my own custom framework designs to show my knowledge in the field. I’d hope that good potential employers would look past my resume to my portfolio.

1 Certification Exam – Very Disappointed – PHP Certification – PHP support & tips – Zend.com. Retrieved from Google Cache on March 4, 2010. Original cached December 30, 2009

2 PHP certification views? Michael Kimsal. May 27, 2008. Retrieved on March 4, 2009.

Comments

Kris 2010-06-27

I've been thinking of getting Zend PHP certified. I was leaning towards it after I found a job ad asking for it as a bonus, but not a requirement. I'm not so sure after reading your post. My situation is that I'm pretty new to PHP and was going to spend my summer studying up on PHP anyway and I thought if I had an exam at the end to study for, that it might make me a better PHP programmer. Any thoughts?

Also, what makes you say that "scripting languages like PHP, Python and Ruby are vastly superior in web development to Java?" I'm learning Java now and was wondering if I should pursue it further as a Web Developer.

Sumit Khanna 2010-07-01

I don't think studying for the exam will necessarily make you a better PHP programmer, but if you do pass the exam, you'll be familiar with some of the weird nuances in PHP syntax. It's like being a contestant on Jeopardy. Impressive: yes. Useful: maybe. It will help you in the PHP job market though.

I think my Java paragraph was more of a rant because I've been programming in it for so long. The big advantage to a scripting language is being able to write applications quickly. A lot of people talk about how Java is more scalable, but think about web applications and think about where your greatest bottleneck is. What are your applications always having to wait on? They wait on the database. I listened to a presentation by a YouTube engineer who talked about their reasoning for using Python. They realized their biggest bottleneck was waiting on the database and they'd rather have a language they could develop in very rapidly to deal with constant growth.

That being said, Java web applications can bet written to cache database results in memory and some application containers can distribute this cache across a cluster (although IBM WebSphere's DynaCache is horrible). But even in that respect, many scripting languages can access tools like memcache. Some good examples of highly scalable applications built on scripting language frameworks include Facebook (PHP) and YouTube (Python at one time, although currently it's unclear what they use). Twitter was once entirely written in Rails, however now only their web front-end is in Rails with the message system written in Scala (a functional language that runs on a Java Virtual Machine).

With Java, you're talking about more initial setup for your web application environment. It also takes time to deploy changes, where as in a scripting language it can be instantaneous depending on your setup. In either case, you want to use some type of model/view/controller (MVC) framework (Struts, JSF, Cake, Rails, or a custom one) rather than dealing with just JSP/PHP files.

And in both instances, scaling for massive growth isn't instantaneous. It takes planning, good system administrators and engineers to scale up any type of web application. You can also write horrible code in any language or framework.

With all things being equal, I'd rather work on web applications in a scripting language. But just always keep in mind, there are always trade-offs in how you chose to implement something.

Back to the PHP certification question, I'd say it's worth it to have on your resume. Just don't expect to be able to study for it using the Zend training materials. If you find a better and more accurate third party study guide, let me know.

Kris 2010-07-01

Thank you for the thoughtful reply! I think I'll stick with scripting languages for websites as much as possible after reading your reply.

I understand that Facebook is written in PHP, then compiled to C, and finally compiled to a binary. It was originally written and run in PHP, but it didn't scale well enough by itself.

I'm still not sure if I'm going to take the Zend's PHP5 Certification Exam. The job market in my neck of the woods is really competitive, so I'd love to have that on my resume. On the other hand, It's just not clear how much it would improve my programming ability by becoming an expert in the strange quirks and gotcha's of PHP (or any other language for that matter) when I have such easy access to quality documentation for those quirks.

Kel 2010-12-10

Did you ever thought of retaking the exam? Wonder how many retakes can you do.

Let me know if you already have retaken it.

Thanks

LAYGO 2011-01-26

Wow, some great thought provoking material. I've been studying off/on for the PHP Cert exam for last few months. My voucher expires soon & I've been buckling down as I've scheduled my test for 2/19.

I've been using PHP for quite awhile too (2001), but not day in, day out in awhile. Right now I'm working at a company willing to teach me Java (Grails/SpringMVC based project) & I've got a decent grasp of it.

Point is, the PHP Cert exam isn't really going to help me at the moment, but I hope it will in the future. You've given me a lot to think about!

Steve 2011-10-15

Thanks for this article, I finally have some absolution in my failure. I feel exactly the same as the more verbose block-quote above. Throughout the training courses and throughout the practice exams the focus was on thinking through convoluted code and one instructor even stated the exam would be on the ability to work out complex code and not on memorization. This turned out to be completely opposite. I feel I aced the code example questions, about 5% of my exam while I completely bombed the "technical" questions. All of those questions can be quickly found in the manual. What a disappointment. I will be retaking the test in 15 days and memorizing as much of the manual as possible. Note to others, be sure memorize file, array and string functions, much of the test revolves around parameter placement and "proper" use.

Gerald 2012-01-20

Ha! Found this post just in time. You've saved me some money my friend. I was starting to feel very confident... too confident, but after reading this I realise I have a lot to do. I know my limits as far as PHP goes (though I am a good developer by my own judgement). I have been scoring high at practice tests, making me feel and fly like Batman. Now I have to start growing fresh new wings. Just great!

Hi Sumit Khanna,

I have had a Pro PHP-ier replied to your frustrations here: http://7php.com/zend-certification-advice-michelangelo-van-dam/#A_Response_To_Some_Frustrations_Around_The_Web

:) :D

Would love to have your feedback as well ;)

Cheers!

Rowinson Gallego Medina 2013-02-27

Hi there! I will take the exam on March 1st, 2013. I'm preparing for the exam and I am trying to read as much as I can because I don't want to waste my money. I'm a little scared because learning the function names which are not uniform is too difficult. Also PHP has a lot of little issues regarding his behavior. So, I will tell you what happened. Also, I'm thinking in the exam re-take and that scares me. I've spent around US $ 315 for this test (195 in the Zend exam voucher and 115 in exam training), and the re-take costs another US $156. :/ Any way... Keep rocking!

Comments are closed. Why?