I know this will be moved to the Certification Results forum but there are some comments here that some might be interested in that are studying so I posted this here first.. First thanks to all those on the Ranch (Velentin, Rob, etc ). You guys are very knowledgable and very helpful. I did pass the exam today with an 88%. I'm actually not happy with the score because I thought I did better than that plus I think if I would have taken the test a few weeks sooner without my brain cluttered with some last minute foolish cramming I would have done much better. I think there were only 3 questions on the exam that I was a bit stumped on and two of them I know I got right since I got 100% in those categories. Ironically as I'll mention later the category I thought I'd do the best in was my worst, yet I'm guessing I just made some foolish mistakes since I didn't see anything that I hadn't answered correctly at least somewhere along the line. I do agree that before you embark on taking the exam you should have done some regular Java programming. How much and for how long? I can't really say. I started picking up some Java about 2 years ago without having had any computer science background (that means no C or C++, etc.). If you are new to programming and want a good Java book I HIGHLY recommend 'Beginning Java2' by Ivor Horton (Wrox Press). It assumes that you don't know C/C++ and it's just an excellent book. 'Thinking In Java' by Bruce Eckel is of course great also, but I found starting out that Horton's book was much easier to grasp not having a background in computer languages. All of my Java experience, however, was in developing web applications using JSP. Most of the Java I did(and still do) is based on coding beans and classes to deal with HttpRequests and database stuff(JDBC). Don't get me wrong, this experience helped a lot, but I certainly knew I didn't know much about the Java language. This quest to get certified really opened my eyes and made me learn a lot of new things which I'm so ever thankful. The reason I say that I think you should have this basic Java knowledge under year belt is mostly for "idealistic" reasons, since after taking the exam today I realize it's possible you could take a crash course in Java and do a lot of mock exams and be able to pass the exam. From the mocks you would get used to seeing certain constructs and you would pass. You won't know how to program but you will be able to pass the exam. My biggest complaint during my studies was that it seemed like once you got past the fundamentals there was all this API stuff that would come up on the harder mock exams ( JQ+ ). Looking at Khalid & Rasmussen's book, Vel's study notes and then JQ+ and JWhiz exams, and you get to a point where in order to get over the 86% mark it seems you have to know some more obscure stuff. Now some I know will argue that this is good- that it makes sure you have done lots of coding and then you won't even have to think about what constructor to call or what return type is returned. They'll argue that this stuff you talk about Rick is not that "obscure" if you code a lot. Obscure probably is a wrong word to use and while it certainly is true that knowing some of this more 'detailed' information certainly is a good thing, I found out that the real test really DID NOT get that picky in areas of say AWT, IO, or collections. I think this is a good thing on Sun's part because they seem to care more that you know the fundamentals and basics. What I am slightly angry about is that everyone so highly recommends JQ+ and Vel's notes and even Khalid's and Rasmussen's book. Before you go "WHAT?", I'm not upset that people recommended them as good souce material but that they were recommended as good study preperation guides geared just for the test without much disclaimers about them having a lot of information that is what I would consider "overkill" as far as test preperation goes. The three above resources are EXCELLENT!. With that said, however, they are very misleading in once sense and studying them intently could actually IMHO end up causing your score to be lower than it might have been had you just stuck to RHE's book. After my first pass through RHE, and then taking some JQ+ tests, I was like "How could some recommend this RHE book- it seems to not cover a lot of stuff I get asked questions about?" Well, now I see why. RHE is good because it doesn't really delve into areas that you will probably never get asked about. I really should have just stuck to that book alone as my study guide. Not that K&R was a bad book, quite the contrary it's an amazing book, and I'll actually keep at my desk as a nice quick reference book. K&R's book simply covers certain topics in way too much detail. Granted I've only taken one exam, but the test seemed to just stick to the basic fundamentals. Not that that meant that the test was easy. (Obviously not, since I only got an 88 . The same could be said for Vel's notes. Those notes are great, but I think way over detailed for what could be asked. Many of you are saying well I'd rather it be "overkill" and thus I'd be prepared everything. For many of you this might be perfect depending on how long you really want to prepare. I thought this way as well, and although I did learn a lot more than I needed to know about things I never got tested on, I don't think this was really a good thing in relation to taking the exam. During these last two weeks I started really studying much more detailed information (i.e.- all kinds of AWT methods, detailed understanding of the constraints in Grid Bag Layout, all kinds of methods and constructors in java.util, etc.). I think what happened with me, is that during the last two weeks I simply neglected more of the simple basics. Granted that was my fault, and most will say that it was stupid, you should have been working on both. Probably some truth to that, and I thought I was doing both, but what happened was I got a false impression that in order to get a really high score I was going to have memorize/learn a lot of constructors and method signatures. From what I can see from my one test this was not the case at all. In my opinion to get a better feel for how the real exam is going to be , I would go ahead and use JQ+ but customize it. On JQ+ I'd customize it where all the real tough ones were included on everything except for IO, AWT, and collections. JQ+ also asked way harder questions concerning inner classes and overridden and overloaded methods. (I don't think you could make those easier though without effecting some other things, not sure though, since I don't have the exam simulator in front of me). I'm sure some will say that it is stupid, why not train for the harder ones than the easier ones will come to. I tend to think it doesn't work like that. It's not like weight training where just because you can squat 600 it means squatting 300 will be a piece of cake. Too many of the harder questions on JQ+ or some of the other exams are on ones where you are required to know a more obscure detail of what is going on that really doesn't hinder on you knowing the basics. So what happened in my case (and yes this is my fault) is that I worried so much about the off chance I might have to know, for example a less a known method in the AWT class, that I over-studied too detailed information which I think scrambled my brain a bit. I think I also overanalyzed and second guessed myself on some pretty easy questions because I was so used to JQ+ where I was thinking "Hmmm...I bet there is a trick here." Yes, I know if I was better prepared this might not have happened. JQ+ is a great tool though and I recommend everyone buy it. I just think it should be customized some for some people and also keep in mind (from what I can tell) you won't be asked some specific detail about a method you might not have ever heard of. The bottom line is RHE seems to cover everything you could be asked on the exam. Sorry, Michael, I wish now I had just stuck to reading and rereading your book While I was preparing I cut and pasted every bit of code I got wrong on the JQ+ exams and made sure I understood it and the trickier ones I pasted into a separate document with some explanations. I highly recommend NOT going over these tricky situations the day before or the morning of the exam. I did that and I think that is what made me second guess some relatively simple questions. Unless other tests are very different, the test does not ask you any of these really tricky ones that can come up. Sure I may be the better off for learning a lot more than I needed to know for the exam (although tell that to my wife who put up with my grumpy attitude and late nights with no sleep , but the bottom line from my point of view is don't sweat all the stuff where you go "Man, am I going to have know that?" From what I can tell if you don't see it in RHE you won't have to know it for the exam. Last night I was thinking of I passed the exam I was going to shed all this good light on how I did it, but I think that has now been drastically altered after taking it. For what it is worth what I did do: Before I was really serious on setting a date for when I wanted to take the exam I bought both RHE and K&R's book and just took my time reading them and playing with code trying stuff out. Then later I got more serious and went through each book and compiled notes from each chapter. In between I took a few exams here and there just to monitor some progress. Then after some time off I got serious again and said "OK let's get to work." I went through every exam on JQ+ and every exam on JWhiz. Everyone I got wrong I cut and pasted and wrote notes explaining why the answer was the way it was. Also if it wasn't in my notes I added the explanation there also. In the last week I finished up these tests and concentrated mostly on trying to learn some methods and stuff that I hadn't really used much. Now, Valentin has a definite point... If you code at all with AWT (even a few little aps) and do some coding with java.io you'll know it and you'll do fine on the test. It's funny because these two areas were my two worst fears long with Threads and it turned out in IO and AWT I got 100%. The questions were so easy in those two areas that I knew them several months ago. But see this goes back to the problem though of the misleading nature of some of JQ+ and even some of the other stuff you hear about it. JQ+ did not ask very easy AWT and IO ones all the time so I figured man I must really need to learn more. I knew, though, that no amount of coding was going to install all the methods that could come up from the file class, etc so I just sat down and tried to memorize them. Bottom line, is all of this was a bit overkill on my part. My advice now for those who want to do well on the exam: 1) Buy RHE. Read it one time straight through without even taking notes or doing any code. Just get a feel for everything in the book and how it all fits together. DON'T answer the questions yet at the end of each chapter yet. You aren't really ready yet since you didn't really 'learn' much yet. 2) Go through the book again. This time taking notes on each chapter and practice all kinds of code with each topic. Try crazy stuff out. Experiment, whatever. Make sure you understand every example. If you don't ask on the ranch after searching the archives and trying stuff out on your own. 3) Now after you practiced coding in each chapter, do the questions at the end of each chapter. As usual make sure you understand why you got it wrong. Make a note what exactly you screwed up on. 4) When you get to the end of the book, buy JQ+ and JWhiz (I'm sure there are other good ones, I just only did these two). I actually felt JWhiz mimics the feeling of the test the most, but I think I learned more from JQ+. I suggest customizing the JQ+ exam, but many will say not to. If you don't customize it just don't sweat the ones that seem really picky. For example, yes you have to know the Math class but I got asked once on JQ+ about IEEERemainder, and atan2. (I doubt those would come up on the real exam. Maybe they would, but I'm just using it as a point that you'll get asked some very picky ones sometimes on the mocks but don't worry about them like I did. I got asked some picky Collection method questions also. Of course I'm not saying it's unwise to know these, but in real life there is an API . IMPORTANT: as you take these exams keep your editor and/or IDE open at all times. I think it's actually more important to test the code right away that you don't understand. At least do this on the first 4 or 5 mocks. Then maybe later to get a true feel how you are doing take a few tests straight through. Regardless paste code in your editor that you don't understand. I just keep a running list for each mock. 5) In between taking test keep reviewing your notes you have taken from RHE. If a question comes up on test and you don't see your notes explaining it or mentioning it, check the RHE book. If it's in there and you just forgot to comment on it in your notes be sure to add it. 6) Also keep a shorter running list of your OWN tricks/traps. There are plenty of lists out there and I'll post my list also shortly, but I think it helps keeping your own list as when you manually put in your entry that you messed up on or found tricky it will hit home more in your brain than just reading it off someone elses list. 7) Save 1 or 2 Marcus green tests and a JQ+ test a few days before you think you might be ready. If you score well on those (80 or above) I'd go take it. Finally, I wouldn't study on the same day right before the test. Maybe go over your list of tricks/traps but that's about it. I think me studying in the morning messed up my head some. I knew better in college not to look over stuff right before the test but I guess I just forgot to follow me own advice It's funny because the area besides threads where I did the worst was in Language Fundamentals! and this is the area that I got the consistently highest marks on in JQ+ and JWhiz. I really wish so badly I could see the test I took and look at my mistakes. I guarantee I'd shoot myself for getting them wrong. A lot of people gave advice about having a clear head for the exam and I sort of brushed it all off as "yea, OK, whatever, that's just something you say" but honestly if there is one thing that would have improved my score the most it would have not having been so tense in the morning and the night before. Overall, my final comments are that the real exam is fair. ( I got way more Thread questions than I would have thought, however and I don't think I had a single question on casting and only a couple dealing with polymorphism. My exam seems mostly weighted on Threads, looping constructs, and increment,decrement stuff ). Know and understand everything in RHE and you'll do fine. I also think it's great that this community exists where we could all help each other. The fact is the more people actually learning Java (and not just getting certified) the better for all of us. If good programmers are out there, people will see how valuable Java is the technology flourishes. I also don't want people to get the impression that I'm implying "Hey, just take the shortcut and follow these easy steps to get certified." I think you should have a decent grasp of the language before you even think of getting certified. I don't think it's wrong, though, that once you are intent on getting the certification for whatever reason, that you focus on just what you can be sure you'll be asked. After taking this test i realize that even if someone got a 100 on that exam it wouldn't mean at all that they could develop a decent application. I wish all of you the best. I'm sure this long post was written pretty poorly so forgive me. I didn't get much sleep, I was nervous Send me an email if you have any questions. firstname.lastname@example.org
Good job Rick! An 88% is a pretty good score in my book. Thank you a thousand times for your advice. I'm scheduled to take the exam on Thursday and was planning on trying to memorize a bunch of constructors/method signatures. I guess I will stick to RHE instead and review the basics. Bob
Great job Rick. You should be proud of yourself. And thanks for the great description of your studies and experience. I'm sure it will be helpful to a lot of people for a long time to come, and probably end up being linked to quite a bit. Congratulations! [ February 12, 2002: Message edited by: Rob Ross ]
Rick rocks That's one hell of a text you wrote there, Rick Well, congratulations, don't worry about the score, it doesn't say much. If you feel, you are now confident and that you and Java speak the same language, I'd say that it's the main thing. Moreover, I think the weird things that happened to you during the exam are for something in your result. It's commonly agreed upon that taking an exam in bad condition does not help much... Anyway, well done. I'm moving this to the result forum. [ February 12, 2002: Message edited by: Valentin Crettaz ]
Congratulations for your success, Rick. And thanks for your feedback on the mock exams. In general, I am not a big fan of mock exams...if they don't help up get a good score then they are worthless; if they do, then it's like running with steriods. They give unfair advantage to the candidate. Anyway, enjoy your success.
Congratulations ! A very detailed description ... Very Very useful for folks preparing for SCJP . Wish somebody wud tell me something like that on what to do next after SCJP ... I know the basics of the language.. but dont know where it all fits in .. a real time environment... or what I shud know/learn more at this stage after SCJP ? I have been seeing all these other certifications but not able to decide on what path to pursue...which would land me in a job ! Still looking for answers and trying to locate the right books which would guide me..! Anyway, Enjoy your moment of success! [ February 13, 2002: Message edited by: Jennifer Wallace ]
Based on what you've said in your posts Jennifer, I think you would do well by studying for and taking the SCJD. It's a step up from the SCJP, which is a prerequisite for the SCJD. Basically, it's about creating a "real world" application, investigating various java technologies, and solving problems. It gets your feet wet, challanges you,and teaches you about developing a real system. I think after you do this, you would feel more than confident enough to do an open source project, or seek work as a java developer. Good luck!
Thanks Rob for ur advice! First will try to get 'my feet a little wet' by doing some small modules on my own and will also work up my knowledge level. Thanks to all who have been sharing their views! Jennifer