Review your favorite Linux distribution.
Go Back > Reviews > Books > Programming
User Name


Search · Register · Submit New Review · Download your favorite Linux Distributions ·

Head First Java
Reviews Views Date of last review
3 34332 05-14-2010
Recommended By Average Price Average Rating
67% of reviewers $50.98 7.7

Description: Some will hate it, some will love it. In my experience with programming books an unsettling trend has emerged: The first few chapters are for users who have never used a computer; the next few are for newbies, and then it quickly turns into a university textbook to appease the elite programmers who need only the differences of syntax. Head First Java points to a path, stays on that path and manages to make it fun along the way.
Keywords: learn java programming
Publisher: O\'Reilly
ISBN: 0-596-00465-6

Post A Reply 
Old 03-16-2004, 01:05 PM   #1
Registered: Mar 2004
Distribution: FreeBSD 4.10 RELEASE
Posts: 40

Rep: Reputation:
Would you recommend the product? yes | Price you paid?: $61.95 | Rating: 10

Pros: thorough, comfortable pace, engaging and often funny
Cons: if you don't get or appreciate the humour, you might get annoyed by the writing style

First, hereís my background for a point of reference. I'm not new to programming, but I am new to Object-Oriented Programming (OOP). I have experience in ColdFusion, PHP and JavaScript. I've been doing webscripting and webmonkeying for about 5 years.

My first venture into OOP was Java. I took a class at a local community college and the instructor was a true geek, having more comfort interacting with a computer than with people, clearly not fit to teach. I learned nothing. It came with a book which followed the usual path: step by step creation of an applet, a few buttons and then turns you loose to create that next killer, multithreaded, JDBC-driven RMI Java app.

A stint of library books on outdated Java versions was fruitless and so I made the very poor decision to pay Sun $1,800 (CDN) for their Complete Java Technology Web Bundle which I hoped would teach me everything I'd need to become certified. Don't get me wrong, it's a good source of information, but I didn't take the "bundle" keyword to task. (happy note: the boss paid for the course, but I nevertheless feel slighted)

So I've had to supplement a $1,800 course with books. A shame. But my misfortune will hopefully be your good fortune. I bought Head First Java after reading numerous reviews online and, with that, here's mine.

You will find Head First Java completely different from any other programming book you've read the moment you turn the first pages. It is laden with retro images, Leave It To Beaver-style clip-art with silly but relevant captions. The visual style intends to make use of the non-programming side of your brain to help remember concepts and, in my opinion, does much more by helping you stay focused and interested. We've all had those late nights trying to learn something and find yourself falling asleep no matter what you do. With some books that happens in the middle of a sunny day with loud music blaring through headphones, even if you're fully interested in learning the subject.

Where Head First Java succeeds is by keeping your attention, teaching by example and introducing key OO concepts by using simple, real-world examples. Its strength is two-fold: "simple, real-world" is obviously easier to identify with and most examples are a little (or sometimes very much) off-the-wall, which makes committing the concept to memory much easier. Though not quite to the implied extent, the difference is learning Java from Jim Carrey or learning Java from Ben Stein.

Granted, some might not prefer this style. Some may even detest it. More than likely, those people would be of the hacker class that already know C, C++, SmallTalk, Assembler, Delphi and Fortran, and are simply looking for something to quickly show them Java's syntax so they can get a project done in a weekend. They should certainly stay away from this book, as it is most definitely not a reference book, nor an intermediate or advanced book. But if you're relatively new to programming and you are interested in Java, here's your book.

Each chapter builds nicely on the previous chapters and ends with some exercises and puzzles. The exercises are (in the authors' words) required content, whereas the puzzles are optional. The exercises are sometimes difficult but not because the content wasn't there to prepare you, but because they are right-brain questions for understanding left-brain content. (More info) The puzzles don't necessarily reinforce the learned content but they help you think abstractly in Java, and many will take you some time to figure out.

Even though Iíve read the first few chapters of Java books, garnering the basic concepts of OOP, before this book I didnít fully understand much of it. And the beautiful thing of OOP is that, once you understand it, creating a solution using procedural (scripting-type) languages seems cumbersome and, surprisingly, abstract.

In my experience, learning a new programming or scripting language comes down to three things:
1. Understanding the methodology - in the case of PHP or other procedural scripting language, understanding how the script is run (parsed), how it interacts with databases and the webserver. In the case of Java, itís the initially confusing but ultimately rewarding concept of OOP.

2. Learning the syntax - which words do what, what order to place them to get the results the compiler (or parsing engine) requires.

3. Knowing where to go to find the answer (read: method, function, object, tag) you require - this is where you become a developer. Books and classes can teach you how to make calculators, bank account programs and online delicatessens, but when you need to build YOUR application, if you don't know what method or function you require how do you find it? If you don't know the name of the person you're looking up in the phonebook, how will you ever find them? What if you don't know how to use a phonebook? It's an extreme example, but understanding the Java API and how it is defined is the golden ticket.

In this book the concepts of OOP are clearly defined and explained in an entertaining and memorable way. Once you begin understanding those concepts, the Java API itself begins to look less ominous. Covering everything from objects to creating graphical user interfaces (GUI), exception (error) handling to networking (sockets) and multithreading, even packaging up your pile of classes into one installation file, this book is quite complete.

If you're hesitant to pick up this book, I definitely encourage you to finger through a copy at the book store or peek through the online sample pages at O'Reilly's site, or get more info at the website. That's the only way to really determine if you like the style. If you do, I'm certain you'll love the book and, like me, hope that the Head First series will expand to many other subjects!

Chapter Listing:
1. Breaking the Surface: a quick tip
2. A Trip to Objectville: yes, there will be objects
3. Know Your Variables: primitives and references
4. How Objects Behave: object state affects method behaviour
5. Extra-Strength Methods: flow control, operations, and more
6. Using the Java Library: so you don't have to write it all yourself
7. Better Living in Objectville: planning for the future
8. Serious Polymorphism: exploiting abstract classes and interfaces
9. Life and Death of an Object: constructors and memory management
10. Numbers Matter: math, formatting, wrappers, and statics
11. Risky Behaviour: exception handling
12. A Very Graphic Story: intro to GUI, event handling, and inner classes
13. Work on Your Swing: layout managers and components
14. Saving Objects: serialization and I/O
15. Make a Connection: networking sockets and multithreading
16. Release Your Code: packaging and deployment
17. Distributed Computing: RMI with a dash of servlets, EJB, and Jini
A. Appendix A: Final code kitchen
B. Appendix B: Top Ten Things that didn't make it into the rest of the book
Old 01-25-2008, 10:35 AM   #2
Registered: Jan 2008
Posts: 0

Rep: Reputation: Reputation:
Would you recommend the product? yes | Price you paid?: None indicated | Rating: 10

Pros: A great book for a beginner

The casual style of all of the Head First books is great. What a nice change from the usually dry material. That being said, there are times when I would have preferred they just get to the point and dispense with the cuteness. Don't let that scare you away however. You will still learn from this book.
Old 05-14-2010, 04:55 AM   #3
Registered: Jul 2008
Distribution: Slackware 14.2 ciurrent, kernel 3.18.11
Posts: 270

Rep: Reputation: Reputation: Reputation:
Would you recommend the product? no | Price you paid?: $40.00 | Rating: 3

Pros: low threshold for starting things
Cons: very low information content, too chatty

Like the other head first books, this one lacks from the same problems. The information content is so diluted and the book tries to be so funny (I'm a european and don't understand much of the baseball hysterics) with silly comics and cartoons.

Even I can cover 100 pages per day in these books. When reading books by Niklaus Wirth I can do 10-20 pages per day. In the head first books, you need to SCORE with ready programs. Learning is brought down to silly quizzes and childish cartoons and interviews.

The Java book was the same as the JavaScript and CSS books. It's like homeopathic learning: infinite dilution of content.


All times are GMT -5. The time now is 10:30 PM.

Main Menu
Write for LQ is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration