At
about the same time that my first book
Using
C++
(Osborne/McGraw-Hill 1989) came out, I began teaching that language. Teaching
programming languages has become my profession; I’ve seen nodding heads,
blank faces, and puzzled expressions in audiences all over the world since
1989. As I began giving in-house training with smaller groups of people, I
discovered something during the exercises. Even those people who were smiling
and nodding were confused about many issues. I found out, by chairing the C++
track at the Software
Development Conference for the past few years (and now also the Java track),
that I and other speakers tended to give the typical audience too many topics
too fast. So eventually, through both variety in the audience level and the way
that I presented the material, I would end up losing some portion of the
audience. Maybe it’s asking too much, but because I am one of those
people resistant to traditional lecturing (and for most people, I believe, such
resistance results from boredom), I wanted to try to keep everyone up to speed.
For
a time, I was creating a number of different presentations in fairly short
order. Thus, I ended up learning by experiment and iteration (a technique that
also works well in Java program design). Eventually I developed a course using
everything I had learned from my teaching experience – one that I would
be happy giving for a long time. It tackles the learning problem in discrete,
easy-to-digest steps and in a hands-on seminar (the ideal learning situation),
there are exercises following each of the short lessons. I now give this course
in public
Java seminars, which you can find out about at
http://www.BruceEckel.com.
(The introductory seminar is also available as a CD ROM. Information is
available at the same Web site.)
The
feedback that I get from each seminar helps me change and refocus the material
until I think it works well as a teaching medium. But this book isn’t
just a seminar handout – I tried to pack as much information as I could
within these pages and structured it to draw you through onto the next subject.
More than anything, the book is designed to serve the solitary reader who is
struggling with a new programming language.