Vimugdh Lall

Ranch Hand
+ Follow
since Jan 17, 2021
Vimugdh likes ...
Eclipse IDE Java Windows
Cows and Likes
Total received
In last 30 days
Total given
Total received
Received in last 30 days
Total given
Given in last 30 days
Forums and Threads
Scavenger Hunt
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt Green check

Recent posts by Vimugdh Lall

Jeanne Boyarsky wrote:Vimugdh,
Congrats! This is a great post. I particularly like how you showed incrementally where you started and how your (practice) scores went up with work. That's encouraging for someone who reads it and thinks "I only got a 20%!" It shows that passing is still achievable!

Thanks Jeanne! Appreciate the feedback! The exam sure is tough but definitely doable and both you and Scott have made it achievable for all of us! See you around on the ranch!  

Nani Ksowy wrote:Hi.

Which learning method for the 1Z0-819 exam do you think is more effective? I am using Study Book guide and the new Practice Book (1000 questions). Both books seems very decent and are of the same authors.

Do you think it's better to keep the 1000 questions book for after the whole Study Book book is finished reading?

Or perhaps would it be better to read both books simultaneously, that is: to increase the number of questions after each chapter from the default 20-25, to the 70-75, by including the extra 50 questions from the 1k questions book?

Can you share your thoughts which method might be more effective? I know it might be subjective.

If that matters: seems like I usually score about 60% when doing the 20-25 questions after each chaptter. :/

Well, I'd kept it for the end. I'll tell you why. Jeanne and Scott have designed the Guide book review questions themselves to be solved 2-3 times easily. Not at a single go obviously. Come back to each set after 3-4 days (spaced repetition). Keep a note of all the questions you answered correctly and incorrectly the first time and when you solve the questions again, see if you made those mistakes again or perhaps answered incorrectly what you had answered correctly in the first try. If it's the former, you need to revisit that particular concept again because there's an understanding gap and if it's the latter, you just need a quick revision of the topic.
The point is that it is easier to have just one chapter on your head and get all the answers correct than to have 13 chapters in your head and be able to answer any question from any of them with the knowledge at your fingertips. For this reason, I actually started solving the practice tests book after my first go through and a subsequent revision of the entire material. That way, you'll know if you really understood and have internalized everything. I mean this is what worked for me. Choose your own approach with whatever keeps the stuff in your memory longer.

Paul Anilprem wrote:
Personally, there are several topics in the exam that I use rarely outside of certification related work (e.g. modules, File/Path API, Localization) and I don't always remember their details. I usually refer the JavaDoc API documentation for such things. The OCP certification covers a lot of ground and I don't think anyone would remember all those details even a few weeks after the exam. But one would always remember the outlines of all the topics and can look up the details whenever required. So, don't worry about it

Phew, that's a relief! Thanks a lot Paul! I appreciate the feedback. You guys keep up the great work at Enthuware!  
Hey Henry,

I really appreciate the goodwill and kindness but I've already got a copy and I've passed my exam too. I don't mean to be ungrateful but I'd rather you chose one other person in my stead so that someone else in need could benefit from this benevolent gesture of Jeanne and Scott. I hope you understand.  

@Jeanne and Scott: I can't thank you guys enough for your amazing work. I'd never have qualified the test if not for all the effort ya'll put into your books. May your cows yield a bounteous feast this spring.  

Charles O'Leary wrote:

If the parent class doesn’t have a no-argument constructor and the child doesn’t define any constructors, then the child class will not compile.

More precise?

If the parent class doesn’t have a no-argument constructor but has at least one non-no-argument constructor, and the child doesn’t define any constructors, then the child class will not compile.

You're right Charles. I had made a post about this a while back asking the same thing The wording in the book is definitely confusing.
I qualified the exam with 74% today.

You may skip this para and the next one if you just want to get to the exam review and preparation notes. A little background about myself. I'm a self taught coder working as a junior dev for around 1.5 years now developing RESTful APIs and have worked on other two major projects in Java. I'm kinda in between jobs right now so I thought getting a cert would add another layer of legitimacy (other than my work exp) to my resume given that my BTech is actually in Electrical Engg  I'd been using Java for 1.5 years so how difficult would it be, I thought.   I was clearly wrong. Even before properly going through the syllabus, I booked the test, giving myself 1.5 months of prep time.

I started my preparation with Herbert Schildt's Java - The Complete Reference (11th Edition). I'd covered around all the topics of 1Z0-815 from the book. At that time, I thought I'd just check my preps with a mock test. Got the Enthuware test series. Hang me dead! I got 28% in the first test. I realized then, that while the book is excellent reference material, it certainly isn't meant to prepare for the cert exam.  Then looked through Udemy. Found nothing good there either. It was at this time that I serendipitously discovered Coderanch and eventually Jeanne and Scott's book from Simon Roberts' class on the Safari platform. Got the book. Started reading through it and realized I don't know Java at all. Hell, the entire part from 1Z0-816 was absolutely unknown to me except for exceptions. By then it was January end and I had exactly 1 month left to the exam. I tried to reschedule the exam only to find out the voucher that I had used to schedule the exam had an expiry of 28th Feb so I couldn't extend it any further. There was no way back. 1 month that's it.

Preparation Points:

So given that everything was absolutely new to me and I just 1 month to crack this, I planned things out very carefully.
There are three parts to learning something new:
1. Reading.
2. Understanding.
3. Internalizing.

Yeah. You read a brand new knowledge material right now. You understand it. But can you remember all of it tomorrow? Or a week later? Forget remembering because 1Z0-819 isn't a fact based exam. You have to apply the knowledge to questions. That is where internalizing comes in. I'm attaching a graph in this post that shows how spaced repetition helps us remember things for a longer time (and why cramming fails for the exact same reason). You better understand things.
So anyway, I got to it. My plan was simple. I would study a new chapter (or two depending on how tough) everyday and I would make it a point to go through another chapter than I'd read the previous day and one other chapter from previous study. Some parts were very difficult to understand given this was my first proper foray into Java. Generics, Functional Interfaces, Arrow functions, Concurrency, NIO2. But I kept at it.
When I'd solve the review questions at the end of the chapter after my first read, I'd get around 40-50% but the very next read through would bump it up to 60-70%. No, you can't learn questions in one read through. I just got to internalize the matter better after a second read through.
I completed the whole syllabus in around 21 days. Last remaining week, I took up Jeanne and Scoot's new book of practice tests. It further showed gaps and told me where I was lacking. I read through those topics again. Their book was instrumental in helping me further understand topics because this exam tests you more on corner cases of Java than a normal happy path and while that knowledge comes with experience, since I didn't have that, the only thing I could do was solve more questions. The new Practice test book really puts forward amazing questions that'll make you go, "Oh, well, I certainly hadn't though of that. What happens if you actually do that?"   I solved through the entire book in 3 days. I didn't do the practice tests though. I thought well I've done the entire learning and question solving through Jeanne and Scott's perspective, atleast the mock tests should be different. I went back to Enthuware with 4 days left. First test was 54%. I was disappointed. But I recognized my mistakes and kept moving. The score kept rising till I hit a max of 70% after 7 tests. I didn't solve any more. With just 1 day left, I just went through all the topics I thought I'd have a hard time with. If you look at the Enthuware data that they show in Average Scores section, there's a 4-5% increase in actual exam from all test takers' combined enthuware average. I'd say that's pretty accurate.

I can't possibly overstate the immense help that this community has been throughout my preparation. Any doubt I had. Any question, somebody would take their time out to answer it. Not just for technical but mental support as well. I'd like to thank everyone here. I'm going to stick around help others like they helped me when I needed it.

Exam Experience:
I reached the Pearson Vue centre an hour early because the anxiety was too much for me to bear. There was nobody else around so they let me take the test early.
The questions I got on the exam -
1. Questions from inheritance and calling overriden/hidden methods.
2. Streams. Several questions. You gotta know collectors really well.
3. 2 questions from Strings and stringbuilders. Performing several operations on them using their inbuilt methods.
4. Comparator/Comparable being used together with compare and compareTo confuse you.
5. Concurrency. Questions from cyclic barrier.
6. One question from generics.
7. A lot of questions from loops, identifying correct instantiations of data structures, finding lines that don't compile, finding outputs etc.
8. 1 question from NIO2 and also from serialization of objects.
9. A couple of questions from module and naming of jars.

I'd say the Enthuware questions are the closest thing to the actual questions that I could find. I'm sure I found a couple of questions that were almost identical to the ones I solved.

Now, getting to the is it worth it part!
Is it worth it?
Every. Dang. Bit.

Pros first:
Whenever I had to implement something, I had to google [read StackOverflow] around how to do things and while I could modify the code I found online to fit my needs, I could never write them from scratch. But now, it's like a whole new realm of possibilities has opened up. Whenever I have to do something, so many different ways come up to my mind. Should I use the regular DS? Or use streams (Oh streams are so magical!)? Or why not use a functional interface? I can go back to the old code I have written and compress dozens of lines of code into small snippets using streams (You ever gone back to old code and gasped at how terrible it is?). I finally understand how JDBC works. Oh and security - never paid any thought to it before now. I finally know how to write secure code! I have learnt so so much I can't possibly put it all down on paper (Scott and Jeanne have though - in their 1400 page book   ). I think it's this journey that matters more than anything else. Yeah, I didn't get as high marks as everyone else here. People getting 93% and what not. Respect for all of them!
I started as an overconfident fresher a month back and stand today, humbled by this experience that I got to share with ya'll. Attaching another graph that shows the Dunning-Kruger Effect - if anything, it pretty much sums up my journey of this one month. This is just the beginning though. I'll keep honing this knowledge. Planning to next go through the Clean Code books by Uncle Bob.

Cons next:
Well, the first thing that makes me anxious once again is that how much of this information shall I be able to retain, say 6 months from now? How much of this will I actually need? For that reason, I'm going to keep Jeanne and Scott's book handy and sift through it once in a while to keep the topics fresh in my mind. I've got around 11 tests from Enthuware still with me unsolved. Probably solve them once in a while to make sure I'm not slipping.

P.S. Experienced devs: How much of Java do you always have at your fingertip-knowledge and how much of it do you use reference for?

All said and done, I don't know if it is within community guidelines to post such long posts on the forum. Apologies for the long read - I know it can get tedious. Thanks again everyone. See you around on the ranch!  

Campbell Ritchie wrote:

Vimugdh Lall wrote:. . . I got a 96/150 on the very first go at your new practice test book . . .

That isn't “pretty much nailed” at all. That is, “lots more work required.” You will probably get much better marks once you put that work in however

lol I said that because the mistakes I made in the questions were very silly. Nothing due to lack of understanding the topic. But yes, you're right. Glossing over the gotchas in the questions aren't going to fetch me any marks even if I've understood everything. So yes, promptly getting back to it.  
I just hope the questions in the exam are as kind as you Jeanne.

I've pretty much nailed down modules and as for streams, I got a 96/150 on the very first go at your new practice test book, most of the mistakes being due to lack of attention lol. I'll go through them again. Streams are fine I guess. I am currently going through my third trip with the NIO2 chapter in hopes of remembering everything.  
Thanks Paul for pointing those out. I just went through them. Got the associativity part nailed down. I've understood the statelessness too I guess. I'll go through some problems relating to those to solidify my understanding!
This is the only chapter which I am facing the maximum problems in. I know it's counterintuitive given it's logically the simplest of the chapters but the huge number of methods and which one throws which exception are just too much. I've already gone through the chapter in the OCP book twice now but I can't, for the life of me, remember all the methods and which exceptions they throw. It's extremely confusing when combined with I/O. Paths, Path, Files, File and the exceptions all over the place. Sorry if that sounded like a rant but my exam is this Friday and this chapter has me freaking out.  
P.S. How do you deal with exam anxiety?  
I'm having trouble understanding statelessness and associativity of accumulators in the reduce() method for Streams. I'd appreciate some insight into it or even a link to some article which explains it properly. Thanks!
Oh, well that makes sense. I guess I was just confused because earlier the question mentioned "The magic.helper module..." and then there was that line that you mentioned. Got it. Thanks man.
I'm a tad bit confused here. When we use the requires keyword in a file, we mention the name of the module that we need right?
Here in this question, the correct answers are listed as B, E and F. However, Shouldn't E and F be requires magic.helper instead of requires magic.util since the question mentions magic.util being the package inside the magic.helper module?
I'd appreciate any help.

James Craven wrote:Wow... I'm scheduled to take the test today. Wasn't sure if it was going to be delayed again like it was in December (I pre-ordered in November), so I decided to just go ahead and schedule the exam instead of risking it. Wish I had known about that sooner.

Well, one week was more than enough to go through the whole book but it's alright, I'm sure you're well prepared. Please drop a review about the exam and the sections you got the questions from for the rest of us still preparing! All the best man!