PHP Developers Network

A community of PHP developers offering assistance, advice, discussion, and friendship.
 
Loading
It is currently Fri Nov 24, 2017 11:45 am

All times are UTC - 5 hours




Post new topic Reply to topic  [ 42 posts ]  Go to page Previous  1, 2, 3  Next
Author Message
 Post subject:
PostPosted: Sat Jul 09, 2005 1:36 pm 
Offline
DevNet Master

Joined: Thu Jan 30, 2003 9:26 pm
Posts: 2893
Location: Glasgow, Scotland
Roja wrote:
If your only criteria of an "expert" level exam is the presence or not of knowledge of unit testing, I can't say I could agree.

The gamut of topics and issues in php is vast, and there are plenty of other items to judge on. Its a wide test, and a deep test.. that it missed a corner of the map that to you is critical doesn't change the fact that it covers a very large portion of that map.


Disagreement is healthy but you can't paint testing into a corner - it's a cornerstone, rather. It's a watershed event in one's coding life. I don't really write code any more: I write tests and the code just happens incidentally while I'm testing. In fact, I'll usually have more LOC in the tests than in the classes themselves.

There's the obvious benefit of quality control, of course. When people begin testing for the first time they always find bugs they didn't know about. The testing discipline makes you think more carefully about the code.

No-one in their right mind wants to waste time debugging. With testing, you don't have to. Difficult bugs are a rare rather than routine event. I was involved in a discussion recently about debuggers. The testers all said they never use them. If something does go wrong, fine-grained tests will tell you what's to blame.

Let's say I have 5,000 individual assertions for an app. The tests will be run many times each day I'm working on the code. They'll be run again after every update to a live site. There will literally be millions of individual checks made over the lifetime of the app. Without automated tests, you simply cannot get near this kind of precision-checking. Not even close. That in itself is reason enough to claim that it's unprofessional not to test. Regression testing and continuous integration are very, very important.

For example, trying to integrate phpBB patches alongside our custom mods is a nightmare without tests. What should be half-hour jobs can turn into several days of frustration. It's a mess and I just can't bend my mind round that stuff any more. I've been spoiled. I've learned that programming can be fun and frustration-free. With frequent test runs, everything always works because nothing ever gets so bad it can't be identified easily and fixed quickly. Without tests, when something goes wrong you may not even know what question to ask never mind a possible solution.

It doesn't stop there. Mock objects and interaction-based tests provide an "agile" design tool from the XP school. That's a very important technique which, although not followed by all (Fowler himself appears to prefer state-based testing), is something that you at least have to know about.

Generally, testing is just a huge force-multiplier. OOP is good but OOP and testing combined are incredibly powerful. Tests give you the confidence to refactor and refine in ways which you probably wouldn't dare to try without them. I'd be extremely reluctant to use a piece of open source php code which wasn't fully covered by tests. There are issues with quality control which I've mentioned above (basically it doesn't have any). It's also a dead thing: intractable, unmodifiable. Tests bring code to life, making it more open to change.

So, a practice on the periphery of php? In terms of numbers, maybe, but not in terms of its importance. All the "expert" programmers I know are utterly, incurably test-infected.


Top
 Profile  
 
 Post subject:
PostPosted: Sat Jul 09, 2005 1:52 pm 
Offline
DevNet Master

Joined: Thu Jan 30, 2003 9:26 pm
Posts: 2893
Location: Glasgow, Scotland
Roja wrote:
I sincerely hope thats not the case, or if it is, the alternative would have to be shockingly, stunningly similar in functionality to phpbb. I *despise* several other php forums because they use truly non-user-friendly forum software, and I'd hate to leave here for the same reason.

If you are planning a switch, please ensure that the replacement is virtually identical (at the user level) to phpbb.. As much value as these forums have, I can't say that I have the patience or willingness to learn yet another forum interface.


Well... thanks for the vote of confidence :o

It might, depending on what everyone wants, be identical in every way with all changes under the bonnet. I'd need to check the subsilver licence. phpBB does look good which is probably the reason for its success (it's certainly not security or code quality).

The big plus, apart from having maintainable code, is that it should help to develop the site. Too often we've had ideas which just fizzle out in part because we don't have the right software. If we're rolling our own, we can create whatever we need - and no hassles with multiple logins for example.

This is a long-term project however so no changes anytime soon and anything I come up will have to be agreed by the rest of the team.


Top
 Profile  
 
 Post subject:
PostPosted: Sat Jul 09, 2005 3:23 pm 
Offline
Tutorials Group

Joined: Sun Jan 04, 2004 11:30 pm
Posts: 2692
McGruff wrote:
Disagreement is healthy but you can't paint testing into a corner - it's a cornerstone, rather.
...
So, a practice on the periphery of php? In terms of numbers, maybe, but not in terms of its importance.

Yes, but to be clear, your statement exaggerated its importance from "One important item", to "It can't be an expert level test without it".

I think the two are rather significantly different, and the gap between contains our disagreement. :)

Regardless, as many others have said, the cert won't hurt, only help a potential career, as will experience and a portfolio (which could easily contain many fine unit-testing examples).

If you truly feel the cert is lacking by not including unit testing as a core element, write to zend. They are (in my experience) extremely responsive to comments.


Top
 Profile  
 
 Post subject:
PostPosted: Sat Jul 09, 2005 10:06 pm 
Offline
DevNet Master

Joined: Thu Jan 30, 2003 9:26 pm
Posts: 2893
Location: Glasgow, Scotland
I have discussed this with one of the test authors, Chris Shifflet. He agreed that testing is important but wasn't sure how this could be included in an exam which is focussed on php rather than general programming skills: "once we get into testing to see whether someone can program in general versus program in PHP, where do we stop?".

That basically just leaves you testing knowledge of the manual rather than expert-level skills, at least as I see them. It doesn't do any harm to have an encyclopedic knowledge of php functions but IMO it's not that important. With a complex ever-changing field like IT you can't possibly know everything you need to know. You have to have the ability to pick up a new brief quickly and the skills with which to manage complexity - such as OOP & testing.

Programming ought to be a branch of philosophy: "semantic engineering". I just did a quick google and it seems the term is already in use: what I mean is the need for programmers to imaginatively create concepts like domain layer, application controller logic etc in order to disentangle code into a flexible, easily understandable design. This is a fundamentally different skill to rote learning.


Top
 Profile  
 
 Post subject:
PostPosted: Sun Jul 10, 2005 1:19 am 
Offline
Tutorials Group

Joined: Sun Jan 04, 2004 11:30 pm
Posts: 2692
McGruff wrote:
That basically just leaves you testing knowledge of the manual rather than expert-level skills, at least as I see them. It doesn't do any harm to have an encyclopedic knowledge of php functions but IMO it's not that important.

Everyone has a different opinion about what "expert" is, which is why companies develop a consensus certification so there can be at least a middle-ground agreement that someone is knowledgable about a given technology.

It removes the guesswork and opinion, and sets a guideline criteria for consideration.

Obviously, like so many things, you can take it or leave it, but the vast majority of businesses today use certs as a screening mechanism. (For better or for worse). Arguably, few businesses are yes/no'ing for a cert that has only been out for roughly a year now, but it certainly doesn't hurt.


Top
 Profile  
 
 Post subject:
PostPosted: Sun Jul 10, 2005 5:43 pm 
Offline
Forum Contributor

Joined: Sat Mar 19, 2005 2:38 am
Posts: 257
i would but my parents dont let me buy anything online because they think if they use their credit card to buy a book or something online the people will use their credit card number and use it to buy stuff with. is there any way i could buy the studyguide in a book store instead of online? and where could i take the exam offline?

thanks,

matt


Top
 Profile  
 
 Post subject:
PostPosted: Sun Jul 10, 2005 5:53 pm 
Offline
DevNet Resident
User avatar

Joined: Tue Jan 20, 2004 5:58 pm
Posts: 1537
Location: Minnesota
If you go to Borders or Barnes and Noble you can ask at the desk if they can order it for you. They can order just about anything. That's what I'd try. Zend also offers a wide range of payment possiblities online besides credit card. I think you can even call them and order it that way. phpArch offers it too. I should have ordered from them instead of Zend. :? :roll: Looks like their having a sale and offer PDF versions for download too.

http://www.phparch.com/shop_product.php?itemid=73


Top
 Profile  
 
 Post subject:
PostPosted: Sun Jul 10, 2005 6:25 pm 
Offline
Forum Contributor

Joined: Sat Mar 19, 2005 2:38 am
Posts: 257
thanks :D
i will look into this


Top
 Profile  
 
 Post subject:
PostPosted: Sun Jul 10, 2005 10:09 pm 
Offline
Tutorials Group

Joined: Sun Jan 04, 2004 11:30 pm
Posts: 2692
neophyte wrote:
If you go to Borders or Barnes and Noble you can ask at the desk if they can order it for you. They can order just about anything. That's what I'd try. Zend also offers a wide range of payment possiblities online besides credit card. I think you can even call them and order it that way. phpArch offers it too. I should have ordered from them instead of Zend. :? :roll: Looks like their having a sale and offer PDF versions for download too.

http://www.phparch.com/shop_product.php?itemid=73


Notably, thats not the *study* guide (Which is what zend offers on their site), thats the practice test.

The study guide is a manual on the items in the test, while the practice test is just the sample questions and answers.


Top
 Profile  
 
 Post subject:
PostPosted: Sun Jul 10, 2005 11:04 pm 
Offline
Forum Contributor

Joined: Sat Mar 19, 2005 2:38 am
Posts: 257
on the site neophyte gave me you can get a combo of the study guide and practice test for a cheaper price then buying them seprately


Top
 Profile  
 
 Post subject:
PostPosted: Sun Jul 10, 2005 11:16 pm 
Offline
Tutorials Group

Joined: Sun Jan 04, 2004 11:30 pm
Posts: 2692
method_man wrote:
on the site neophyte gave me you can get a combo of the study guide and practice test for a cheaper price then buying them seprately

Oh this is just getting silly now.

http://www.zend.com/store/books/index.p ... tion_Guide - the study guide, first entry, its $30 USD. The second entry, the practice test, is $22 USD.

http://www.phparch.com/shop_product.php?itemid=73 - The practice test is $20 USD,
Together its $50 USD. You save $2 USD. They don't sell the study guide alone.

I didn't bother checking shipping, but yes, you save a whopping $2. :P


Top
 Profile  
 
 Post subject:
PostPosted: Tue Jul 12, 2005 7:58 pm 
Offline
DevNet Resident
User avatar

Joined: Tue Jan 20, 2004 5:58 pm
Posts: 1537
Location: Minnesota
The practice test and the study guide arrived today. FYI the study guide and the test covers:

PHP 4 (No PHP 5)

Quote:
Test the level of PHP knowledge of the candidate without prejudice to other technologies

Use a set of testing questions that reflect real-world scenarios as accurately as possible

Avoid question that rely on a person's understanding of the language rather than his or her understanding of PHP and its related programming techniques.



Top
 Profile  
 
 Post subject:
PostPosted: Tue Jul 12, 2005 7:59 pm 
Offline
Spockulator
User avatar

Joined: Wed Feb 04, 2004 9:15 pm
Posts: 4713
Location: Eden, Utah
GL, let us know how it goes for you....


Top
 Profile  
 
 Post subject:
PostPosted: Tue Jul 12, 2005 8:08 pm 
Offline
DevNet Resident
User avatar

Joined: Tue Jan 20, 2004 5:58 pm
Posts: 1537
Location: Minnesota
Will do Burrito. I'm not sure how long it will take me to prepare. The exam covers a WIDE range of topics and evaluates you mostly be having you look at snippets and decide their outcomes. There also not afraid to throw coding mistakes in there side by side miscues. There's no way you can take this test without coding experience.


Top
 Profile  
 
 Post subject: Zend Certication
PostPosted: Fri Jul 15, 2005 7:35 am 
Offline
Forum Newbie

Joined: Fri Jul 15, 2005 7:23 am
Posts: 9
Location: Sydney Australia
I completed the Zend certification about 3 months go. My name and certification was listed in the Zend Yellow Pages and the only emails received through this site has been from other programmers considering the certification themselves. Some of the questions in the exam were really quiet silly and I felt that some of the questions were actually wrong. I passed though and thats all that matters.

All i can say to a prospective candidate of the exam to do all the practice exams in the study guide and maybe do them a few times to make sure.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 42 posts ]  Go to page Previous  1, 2, 3  Next

All times are UTC - 5 hours


Who is online

Users browsing this forum: Bing [Bot] and 4 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to:  
Powered by phpBB® Forum Software © phpBB Group