Oracle/Sun is reinventing the SCJP into the Sun Java Programmer Plus Certification. The big difference is the new exam will require hands on programming. Good for them!
The original exam
The stated goal of the original SCJP is “demonstrating proficiency in the fundamentals of the Java programming language.” Unfortunately, it does so completely through multiple choice exams. Which turns it into an exercise in how well one performs on such an exam. Whether it’s memorizing obscure details or learning how to “out-guess” the exam, that’s not what makes a proficient programmer. Programming is!
Benefits of the Programmer Plus exam
Sun calls this a “performance based” exam because it involves performing the skill it is testing. This is great because being able to program is what being a proficient programmer is all about. I’ve met SCJP certified candidates who can’t write a simple program. Presumably they cheated, but this is no longer possible with the a proctored programming exam. I look forward to seeing Programmer Plus certified candidates in the future.
Some sticky points
There are a few areas that a hope Oracle/Sun are thinking about with respect to the new exam:
- Memorizing is not the end goal. I sincerely hope use of the JavaDoc is allowed during the programming exam. Developers use JavaDoc in the real world when solving programming problems. Some people say that knowing the API is a sign of experience. I disagree. I think knowing what is available and being able to find it quickly is the sign of experience. Someone who hasn’t studied properly or practiced enough either won’t know where to look or will take too long to find it. Now banning google I would understand.
- A sufficient question bank. I hope there are enough questions and sufficiently changing questions so people can’t scam the new exam. Whether that’s through template-able questions that change each time or introducing new questions regularly. In the United States, the College Board themselves publish the real SAT questions. And yet practicing them doesn’t diminish the test’s ability to test what it does. You can say what you want about the value of the SAT, but it certainly doesn’t rely on people not knowing real questions like the current SCJP does.
- Not encouraging anti-practices. – Some schools encourage students to things in a way that goes against how industry practices. As I blogged in educating software developers, my graduate school asked us to review whether a classmate’s code compiles. (Non-compilable code is useless.) The Programmer Plus exam says it checks for compilation and test fixtures passing which is good. Hopefully there aren’t any other anti-practices lurking.
In summary, I think having programmers program on a programming exam is a great step forward. Hmm. “program” three times in a sentence – is that a tongue twister. I look forward to seeing it play out.