Thinking in Java
An OpenLevel™ Seminar
For Beginning, Intermediate, and Advanced Java Students
Taught by Bruce Eckel
For an in-house seminar,
This course uses the 4th Edition of Thinking in Java.
The Thinking in Java OpenLevel™ Seminar is an multi-level Java seminar, for beginning, intermediate and advanced Java students.
If you want to learn Java as a beginner, you should be comfortable with C syntax. (Here is an e-seminar to bring you up to speed on the basics of C).
Intermediate and advanced students should choose the chapter(s) in the book that they desire to learn.
You should bring your copy of Thinking in Java, 4th edition to the seminar.
What is an OpenLevel™ Seminar?
A new approach that emphasizes individual learning rates.
The typical seminar, including the ones that I have taught over the years, includes lectures followed by exercises. To cover the material during the time allotted for the seminar, each activity can only be given a certain amount of time.
This model assumes that everyone can learn at the same rate an important assumption if you are implementing the traditional school-as-assembly-line-factory approach to teaching.
But we all know that each person learns in a different way and at a different rate. We just ignore this fact, because if we can just assume that everyone is the same, assembly-line teaching works.
On top of that, lecturing has been shown again and again to be far from the optimal way of transferring knowledge.
So what is optimal? Experience. Getting your hands on something and experimenting and struggling with it. Then, after you've had some experience, you're ready to understand the theory behind it.
During the Web Frameworks Jam and my previous seminars, I've discovered that it was very helpful for people to work on the same problem together. That is, each person is solving the problem on their own computer, but they are working side-by-side and so can discuss that exercise and help work through the issues together.
You'll be doing exercises from the 4th edition of Thinking in Java, in groups and within a supportive environment. You will move at the speed that is comfortable for you, learning at your optiminal rate. Guidance is available if your group gets stuck.
The course is for all levels: beginning, intermediate, or advanced. You find your own level and work there, at the pace that is comfortable for you.
If you're a more advanced Java programmer and you want to work on something that doesn't have a group, that's OK too. And of there's only one chapter you want to work on all week say, concurrency you can do that.
You may be wondering, "What if I get into a group where everyone is moving too slow or two fast for me, and I'd rather work on more/less advanced exercises?" Here's where the OpenLevel™ concept comes in, inspired by Open Space conferences.
It's called "The Law of Two Feet," and it means that if something isn't working for you, you use your two feet and go somewhere else that will work for you. In this case, it means you go to another group. You can join the group of your choice and work on that exercise. And if no one is working on the exercise that's right for you at that moment, you can start your own group.
The goal is to keep you Fully engaged, all the time.
What to bring
Bring your laptop computer. Before you arrive, carefully follow the installation instructions for the Thinking in Java 4th edition source code, which will also walk you through the process of installing and testing the Java 5 (or Java 6) JDK.
Make sure you also install the electronic JDK documentation which you can find Here.
Bring your copy of Thinking in Java, since that's the book we'll be working with.
Bring any other books or learning resources you feel might be helpful.
You can use the Java development environment of your choice, which you should install before coming to the seminar. However, the exercises don't require that much typing so you can also use a plain text editor such as UltraEdit. JEdit is a popular free Java-oriented editor. Both Eclipse and NetBeans are free, full-featured, industrial-strength IDEs which are in broad use in organizations. JetBrains IDEA is a payware editor, but many people get hooked on it.
Although the course isn't intended to be about editing environments and I am not expert on any of them, if you decide you want to come and spend the week just learning about your editing environment, you can certainly do that. Other attendees usually know things about various editors, and I'm fairly good at muddling through these things.
The daily schedule
We'll be starting at 8:30 am each day and finishing at 5:00 pm. Lunch will be from 11:30 am to 1 pm; you will be given a list of local restaurants
Comments from Students about the "Thinking in Java Hands-On Seminar" (the predecessor to the OpenLevel™ seminar).
For an in-house version of this seminar, .