File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Beginning Java and the fly likes Question for Peter Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "Question for Peter" Watch "Question for Peter" New topic
Author

Question for Peter

Gregg Bolinger
GenRocket Founder
Ranch Hand

Joined: Jul 11, 2001
Posts: 15299
    
    6

Thanks for joining us this week Peter. Althought I have been programming in Java for about 4 years now I have never owned a book specific to Java basics. I have a lot of API specific books (Swing, JDBC, JSP, Servlets, etc) but nothing that is a general Java Book. I don't do Java for a living so I consider myself an intermediate java developer.

Would you recommend your book to someone like me? How many chapters are going to possibly bore me (no offense) with things like "This is what a class is"? Should I even consider a book like yours considering my level of experience?

Also, how do you think your book stacks up against Head First Java? I realize the strategies are different between the 2 books, but the goal is the same; learning Java.


GenRocket - Experts at Building Test Data
Peter van der Linden
author
Ranch Hand

Joined: Sep 28, 2004
Posts: 46
Hi Gregg,

Great series of questions!
And it gives me the opportunity to get on my soapbox, and throw a few opinions up in the air!
(Always appreciated!)

If you are teaching yourself by buying API-specific books, like a book on Swing, a book on JDBC,
then I would certainly agree that you are at least an intermediate level Java programmer. Many of
those books are very good indeed, and some of them were written by people who designed the
APIs (I am thinking of the Swing and JDBC books from Sun here - those volumes are just crammed
with relevant knowledge).

My own text, Just Java was originally written all the way back in 1995, before the first release
JDK 1.0 release of Java. At that time, I could see that Java was a really important development
in the world of software, and I wanted to get information about it in front of busy software
professionals in a form they could easily and quickly assimilate.

Java has had 5 more major releases since 1995, and for each of them, I have completely revised
and updated Just Java. I track changes in both the language and the libraries, and pull them
together in one place for readers. My aim has always been to present a single volume that is
not overwhelming, and that covers the language and the most popular libraries. There is a reason this text has been in print nearly 10 years when so many other Java books have come and gone. I take a lot of care to keep the book up-to-date with the fast-evolving Java world.

Over the years, the concept of "the most popular libraries" has changed. Early on, I
dropped coverage of applets to make room for JDBC (databases) and that was a very good call.
Later I added Collection classes, and in the latest edition I expanded that to a full chapter on
its own. The current edition has a new chapter on Web Services, which I think is going to be
a very important technology in the years ahead. It is being built into many online systems
of the past 2 years, but it still has a low profile because of the simplicity of the basic technique.

Of course, enumerated types, and generic types get their own chapter. These chapters were
read by a large number of programmers before I committed them to print. I was able to
improve them significantly with this feedback, and I think you'll find they set the standard for
describing enums and generics. You probably haven't seen much of these new features
yet, nor other ones I explain, like variable-arity methods, and covariant return types.

In addition, I try to share experiences that practising programmers and computer science
students can relate to - amazing bugs, pitfalls, bad design choices (Java certainly has its
share of those), war stories and the like. Each chapter ends with a kind of war story that I
call "Light Relief". Some readers send me email and ask for a whole book of Light Relief!
As an example, one Light Relief concerns the web competition I ran to sponsor the creation
of a programmable Furby (animated doll of a few years ago) - how the competition was won
with an Intel 8051 mod, and how I subsequently did the FCC part A and B testing on the
result.

What I am saying here is that, unlike many other texts, Just Java takes a wide-ranging
look at Java, and has a great deal of new and original material that you won't find
anywhere else. And that changes in each edition. If you like that kind of style, then this will be a
good book for you. Some people don't like that kind of style. and they might be happier with the
language reference manual (if there was a fully up-to-date one), or even no book at all. There is
the beginner material, because I don't want to leave anyone behind on classes, objects and
inheritance. But there also a lot of more sophisticated material that you will find useful.

Since Amazon now offers a very easy way for people to sell books online, I never have any
hesitation in buying a book. Just buy it, read it, and if it wasn't quite what I was looking for,
I can re-sell it and re-coup almost all my investment, less postage! After all, we are IT
professionals, and we live and die by the quality of our knowledge. Time spent learning new
things that are relevant to our profession is a very good investment.

Let me close by saying that I just received the humbling news that Just Java, 6th Ed has
been nominated (along with a dozen other texts) for the "Best Java Book of 2004".
In 2002, the 5th edition of Just Java was similarly nominated, and in that case I was nudged
out by Josh Bloch's excellent "Effective Java" book, which fully deserved the top slot. Josh was
the chief Java API designer for several years at Sun, and has now moved on to work at Google.
So maybe [B]Just Java, 6th Ed[B] will have a shot at Java Book of the Year this time round!

Voting opens soon, so bookmark [URL= http://sys-con.com/java/readerschoice2004/] http://sys-con.com/java/readerschoice2004/[/URL] and check back periodically to vote for the book of
your choice.

This suggestion wouldn't be complete without me pointing out that the 5th edition had a light
relief story in the Networking chapter that explained how to write Java code to rig an online poll!
However, I dropped that from the sixth edition in favor of a story about "The 500 mile limit on email". Maybe I should put the "poll rigging" Java code online at my web site
at http://afu.com ...

Cheers,

Peter


Author of <a href="http://www.amazon.com/exec/obidos/ASIN/0131482114/ref=jranch-20" target="_blank" rel="nofollow">Just Java(TM) 2 (6th Edition)</a>
Ko Ko Naing
Ranch Hand

Joined: Jun 08, 2002
Posts: 3178
Originally posted by Gregg Bolinger:
Also, how do you think your book stacks up against Head First Java? I realize the strategies are different between the 2 books, but the goal is the same; learning Java.


I'm also eager to read the Peter's opinion about Head First Java. Since the second edition of HF Java is coming soon. Will it be some kind of competition between the two books, which are commonly based on Tiger in general?

ASAIK, people are willing to read the technical books non-technically as HF approach... How do u think about that approach, comparing the approach that you have been using, since your Just Java first edition?

Thanks for the great explanation above, Peter...


Co-author of SCMAD Exam Guide, Author of JMADPlus
SCJP1.2, CCNA, SCWCD1.4, SCBCD1.3, SCMAD1.0, SCJA1.0, SCJP6.0
Peter van der Linden
author
Ranch Hand

Joined: Sep 28, 2004
Posts: 46
OK, folks are asking me my opinion on "Head First Java", and so let me share my thoughts.

Of course, I should emphasize that these are just my opinions. Everyone should look at these
texts from their own point of view and make their own mind up. All too often people overlook
that each book has its own style, its own voice, its own rhythm. What works for one person,
another may find somewhat grating.

That's why Amazon has started putting extensive parts of books online, so you can read a chapter
or a substantial part of a chapter, and answer the question "is this giving me information that I
can readily absorb?" A text book is like a piece of music in some ways - different people
will perceive the same piece of music differently; some will love it, some will hate it, some will
not be moved either way. There is no piece of music that is perfect to all people, and there is no
Java book that is perfect for all readers. You have to expose yourself to many different kinds
and choose the ones that work for you personally.

The two authors, Kathy Sierra and Bert Bates, are both incredibly talented people individually,
and together form a team with deep software insights and communication expertise. Kathy also
has a committment to Java Ranch, and is no stranger to this forum (whereas, although I am a
big time supporter and cheerleader for the Java Ranch and have been for some years, I am also
a somewhat infrequent visitor -- this is due to my committment to a "Introducing Linux to
Windows Users"
book that I am currently preparing).

So having said all that, I think that "Head First Java" is a wildly original book in the programming
language space. It could only have come from a small, confident publisher like O'Reilly - you
would never see one of the big publishing houses take a risk like this. And it *was* a risk.
In the week it came out, I was chatting with a couple of O'Reilly marketing managers about
"Head First Java" and its prospects. They were very anxious to know what I thought of it, and
what my friends thought of it.

Basically, people love originality. The publishing world loves fresh ideas (as long as someone
else takes the risk). The risk with Head First Java was that people would discount the
very carefully thought-out underlying syllabus. It is cleverly thought-out - most books are
a solid wall of text, and it takes real effort to plough through a chapter. HFJ breaks that mold,
and aims to engage people with images, jokes, icons, handwriting.

We now know that HFJ has succeeded brilliantly. Kathy was able to prepare a "HF EJB", and soon
there will be a second edition of HFJava. I think this is great news for everyone: it makes
Java more accessible to a wider group of people, and it expands the pool of acceptable ideas
for book design. Plus it's a win for clever, creative, original authors.

Now, it's an incredible amount of work to create a book like HFJ. Because the format avoids
a dense wall of text, you have to choose carefully what you will put in and what you will
leave out. You can't cover as much ground as you can in a traditionally-styled 600 page book.
So HFJ does not have the depth of coverage that most other Java books do. On the other hand,
if a book is so dull that the poor reader falls asleep halfway through every chapter, then what
good does it do to have "in-depth coverage"? You will never fall asleep reading HFJ!

So here's the bottom line (only my opinion, remember. Yours is equally valid for you)...
Head First Java is a genuinely original text and a real accomplishment on the part of
the authors for thinking of it and O'Reilly for having the guts to publish it. The success of the
book and follow-ons has handily proven that that was the right decision! Head First Java makes
a nearly-perfect first book on Java for some large number of people. In this way it is a win/win
situation: it increases people's skill level by giving them something they will actually read.
And it raises the number of Java-knowledgeable people in the world.

The "Head First Java" style isn't for everyone; some people in programming really like quiet,
ordered, numbered lists of data. They love to know every last detail and minute point.
But for people who want to dive in, swim around, and still come up for air, HFJ is a great
first book. With that under your belt you can easily go on to fill out and extend your
knowledge with other books.

And you should read other books. I have probably 40 feet of shelving devoted to Java books
of the last ten years. If you want to become an expert in a topic, you have to put in that
kind of effort. People do it because they are genuinely interested, so they don't think of it
as effort. HFJ is a great place to start, and don't forget to go on and read other texts, too.
I loved it!

Cheers,

Peter
Gregg Bolinger
GenRocket Founder
Ranch Hand

Joined: Jul 11, 2001
Posts: 15299
    
    6

Thanks for the wonderful answers Peter. If you had to state it, would you consider your book to be beginner to intermediate, or beginner to advanced?
Kathy Sierra
Cowgirl and Author
Ranch Hand

Joined: Oct 10, 2002
Posts: 1572
Well then I get *my* opinion too

The best way I can think of it, from the perspective of this forum is that Peter's book has something for beginners AND intermediate (and potentially beyond) readers, where ours is almost *exclusively* for beginners. I think that both Peter's book and ours are somewhat rare for tech books in that they have not sucked the life and joy out of the topic and that we care about both your ability to learn *and* the quality of the experience you have. In other words, for both Peter and us -- there is more to this than just getting the technical information right!

Again, not everyone likes this. And certainly the HF style is more extreme. Very few people would ever *hate* Peter's book, but there are certainly people who hate HF books--with a passion.

But Gregg, because of your level, you'd probably get VERY little from our book, yet you *would* benefit from Peter's book, in many different ways.

Both are clearly targeted at the non-dummy smart person, but Peter's book has cool things for multiple levels of readers, where ours (we believe) is extremely focused on taking absolute beginners and letting them completely nail the foundation topics.

I suppose on a venn diagram, our books technically overlap *somewhat* in the market, but in reality, they're not trying to do the exact same things. But in our ideal world, people with almost no experience in Java would buy BOTH books, while people with experience in Java would buy Peter's, not HF Java.

No, let me change that-- in my PERFECT world, everyone on the planet would buy multiple copies of both books

So to put this in movie terms, and again, this is my opinion only--if you have some Java experience and you can buy only one general Java book, buy Peter's.

If you can buy TWO, it won't hurt to add ours

If you have zero experience, try very very hard to get your hands on BOTH, but I'll lean slightly toward ours, but *only* if you have seen and are comfortable with the style.

As I said in my earlier post --Peter was a major inspiration for us. Anyone who has benefitted from a HF book can be thankful for him, because without Peter's work, I'm not sure the HF books would even be here. That "Clear only if already known" has been our main mantra.

Sheesh, I better stop before I get all mushy about him

Peter, thanks so much for your encouraging words!!

cheers,
Kathy
Ko Ko Naing
Ranch Hand

Joined: Jun 08, 2002
Posts: 3178
Originally posted by Gregg Bolinger:
Thanks for the wonderful answers Peter. If you had to state it, would you consider your book to be beginner to intermediate, or beginner to advanced?


Hi Gregg,
I just would like to guess the range of level on Peter's book as beginner to intermediate... As far as I've been through the book-related threads in this forum and Peter's replies, I think the book does not cover the topics that are in advance level...

And moreover as u said above, the book emphasize on Java in general, which I guess it's impossible to get into details on each API... So IMO, the book should be for beginner to intermediate...
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Question for Peter