• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Head First Java Question

 
Ranch Hand
Posts: 41
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Kathy, Bert, and Trisha,

Congratulations on first place for releasing this new edition of Head First Java. Getting into the matter, I've always been a follower of the Head First book series, being an enthusiast of this approach to learning tech stuff. Considering what I'm saying, I'd like to ask you a couple of questions:

1. Which Java-related topics do you think have made it more challenging to fit under the Head First approach, considering the Java editions range you're covering with the book?

2. Are there some elements you've kept from previous editions, or has the book been entirely redesigned for this new edition?

Thanks in advance for your attention and your answers.

Best,
Esteban


 
Author
Posts: 49
18
IntelliJ IDE Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Esteban,

1.
Teaching streams was a challenge! Head First is always story-driven and example-driven, and we spent a long time trying to figure out the story, the "why should you care" about streams. Some of the other later features (var, records, shell) could also be a challenge for Head First - we covered these in the appendix, so the style of teaching there was a little different, as it moves faster and goes in less depth.


2.
The core of the book remains as it ever was. The introductory chapters, in particular, haven't changed much, as the fundamentals behind what Java (and object oriented programming) is haven't changed much, although we did update some of the analogies and examples. As the book progresses, the chapters generally had more updates, and often big pieces were added to cover new features, or updated practices, that are now commonly used. We significantly updated the chapter on collections to include lots of new Java features that have been added since the last book, and we added a whole chapter on lambdas and streams, which is probably the biggest, and most commonly-used, new feature added to Java since the second edition of the book. We also did big updates to the sections on concurrency to cover the many features that have been added since the last edition of the book.

Overall though, we hope the book retains the same "feel" as the last two editions, we hope the new material flows seamlessly from the classic content.
 
author
Posts: 9050
21
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
To me, one of the most challenging aspects of updating the book was figuring out how deeply to go into the new topics. If we weren't careful, we could have ended up with a 3000 page book
 
Esteban Suarez
Ranch Hand
Posts: 41
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Trisha and Bert,

Thanks for replying to my questions in a detailed fashion. I'm always curious about the creation process of Head First books due to their particular style, and I'm always interested in how these titles evolve among their different editions. From your answers, I can see it's been challenging to include a significant set of the most recent Java features, but you have used other elements to keep the Head First Style as much as possible, and that's interesting. I hope to get most of this new edition as I did from the previous one.
 
Marshal
Posts: 79412
377
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Bert Bates wrote:. . . a 3000 page book

Shall I do some more pages per dollar arithmetic?

A 3000‑page book would have scared all your readers off.
You could demonstrate Streams with drainpipes and tennis balls, but that analogy will fail when you find you have “exhausted” your source because Streams maintain their sources unchanged.
 
Master Rancher
Posts: 4910
74
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Campbell Ritchie wrote:[...] Streams maintain their sources unchanged.


At least, most Streams do.  Certainly, all streams that come from Collection.stream() do - the collection is unchanged.  However, it's also possible to make a stream from, say, a ResultSet, or a socket stream - and those aren't necessarily repeatable unless you take action to save the data as you go.  Consuming a stream, in general, may or may not affect the source - though usually it doesn't.
 
Campbell Ritchie
Marshal
Posts: 79412
377
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Mike Simmons wrote:. . . most Streams do. . . .

Good point.
reply
    Bookmark Topic Watch Topic
  • New Topic