Tuesday, May 30, 2006

Learning Java Enterprise Edition (Java EE)

I started my learning of J2EE 1.4 late November 2005 with the book Head First Servlets and JSP by Kathy Sierra et al. It was a good book and i could understand what a MVC pattern means to the web application development. I took about 2 months to complete this book (in parallel i started developing a small application from my team in my place of work). I used the learnings from this book and by beginning April i could also read up Mastering EJB 3rd Edition by Ed Roman et al. It was excellent but a tome and i needed to revise the concepts from the beginning chapters by the time i could reach the end of the book. So i was not able to understand the sample application initially and did not give much effort to understanding in the first go as i thought i needed to make study notes to burn in the matter in the initial chapters. But reading the whole book in a go gave me some confidence in my approach to learning Java EE based development.

Then i thought of taking the Sun certifications and found that SCJP was a prerequisite so i bought the book SCJP 5.0 study guide by Kathy Sierra and Bert Bates and prepared for the exam. I scored 90% in the exam which i took mid of May. I then resumed with Mastering EJB book and started making my notes. By the end of this learning i strongly felt the need of some good book which explained how a real-world J2EE application is being developed. I had this notion after having read about Hibernate ORM being a preferred choice on the persistence tier and books like J2EE desing and development without EJB by Rod Jhonson which cautioned the developers against unwanted use of EJB in enterprise application development. Fortunately i found the mention of JBoss at work: A practical guide by Tom Marrs and Scott Davis book on jboss.org site. I could also get an Indian edition for that book which was released in October 2005 thus was reassuring enough that what it talked about must be latest practices in the developer community with regard to J2EE based enterprise development. I started reading the book and could cover most of it in 2 days. Yes it was easy cruise considering my sound foundations of Java SE edition and the knowledge i gained from Mastering EJB and HF Servlets & JSP books. Also this book gave me the knowledge of how the XDoclet and Hibernate can be used. This is where i am now in my learning cycle as of this writing.

As for my plans for the coming months, i want to complete my notes from HF Servlets & JSP book (for the sake of completeness and also to accumulate APIs i did not use in my small project work before i move on), then i want to start with the Struts: The complete reference book and finish that in 8 days gathering as much as possible in that time. Then the plan is to read J2EE Webservice book by Richard Monson Haefel. This is all for the month of June. After that in July i plan to read 3 books in order - Head First Design pattern (8 days), Core J2EE Patterns(10 days) and Mastering BEA Weblogic Server 8.1 (12 days). In the following month of August, i want to take SCDJWS certification exam and cover a book - Ajax in action which i bought long back but have not had the time to cover so far. The idea is to understand J2EE development on all tiers (web/presentation, business, persistence). In the month of september, i have not planned for yet, but what seems most logical to me now is that i will want to cover Mastering JSF and Hibernate in Action.

In october this year, i plan to start some open source project work, probably related to my field of expertise (network management systems and SNMP). I have contributed in the past on one open source project http://www.mibble.org in the UI development for SNMP MIB Browser using the mibble parser and westhawk snmp library in Java. I am still not sure what work i will be doing in october but it has to use my learnings on J2EE in some way. The idea is to gain enough expertise on the J2EE development and also to be in touch with the SNMP/NMS domain before i start my job search again.

Tuesday, May 02, 2006

Preparing for SCJP 5.0 Exam

While preparing for SCJP 5.0 exam, i did the following:

  1. Bought a certification guide (SCJP 5.0 Study Guide by Kathy Sierra & Bert Bates)
  2. Read the book from cover to cover
  3. The guide came with a ebook in pdf format on a CD with the book. I used the pdf document for copy pasting the contents i wanted to revise later into a word document notes i prepared.
  4. I first copied the 2 minute drills part (which was like a quick summary of essential parts of the chapter). Then i went to the relevant parts where i needed some examples copied from into my notes.
  5. I also copied the exercise examples to the respective sections of my notes. This really helps to see the kind of question on a topic you can get near to the notes on that topic.

I did the above for all chapters and captured my notes in one word document which i took a print out of and then revised and kept adding any special question which i could not answer from one of the several mock exams found on the internet.

As an end result, following the above process for any certification exam, will help one prepare not only a exam cram but a worthy quick reference for work and refreshing your knowledge on the subject for a job interview.


Well i passed the exam on 15th May, 06 with 90% score (65/72 questions answered correctly). And here's my final words on how i prepared for this exam: Thread on JavaRanch Discussion Form where i declared my pass result

15 sorting algorithms visualized in 5 minutes, with awesome arcade sounds

15 sorting algorithms visualized in 5 minutes, with awesome arcade sounds from r/programming