The JavaTM Specialists Newsletter

Archive Site Move announcement

Dr. Kabutz now runs his own archive of his newsletter! This archive is being phased out; to see the latest issues of the Newsletter, please go to the source at: .

I've enjoyed hosting the newsletter, the many visitors to my site and getting to know and work with Heinz. Goodbye folks, enjoy Java!


Dr. Heinz Kabutz is a Java guru living in South Africa. He consults, holds courses, programs, and - writes a weekly newsletter in which he shares some rather unconventional insights about Java. Things that "push the envelope"; make Java do things you thought it could not; "dirty tricks" and such. In other words, stuff you don't usually find in Java periodicals or newsletters.

This is the index page to an archive of these newsletters, to which you can subscribe by mailing with a subject of "Subscribe" or simply clicking on this link to sign up via a Web interface.

The guru is always happy to hear from his readers or discuss the finer points of Java with them. You can reach him at:

002:Anonymous Inner Classes
003:Logging part 1
004:Logging part 2
005:Dynamic Proxies - Short Tutorial
006:Implementation Code Inside Interfaces
008:Boolean Comparisons
009:Depth-first Polymorphism (or Customised Polyseme)
010:Writing GUI Layout Managers
011:Hooking Into The Shutdown Call
012:Setting Focus to Second Component of Modal Dialog
013a:Serializing GUI Components Across Network
013b:Follow Up
014:Insane Strings
015:Implementing a SoftReference Based HashMap
016:Blocking Queue
017a:Switching on Object Handles
017b:Follow Up
018:Class Names Don't Identify a Class
019:Finding Lost Frames
020:Serializing Objects Into Database
021:Non-Virtual Methods in Java
022:Classloaders Revisited: "Hotdeploy"
023:Socket Wheel To Handle Many Clients
024:Self-Tuning FIFO Queues
025:Final Newsletter
026:Package Versioning
027:Circular Array
028:Multicasting in Java
029:Determining Memory Usage in Java
030:What do you Prefer?
031:Hash, hash, away it goes!
032:Exceptional Constructors - Resurrecting the dead
033:Making Exceptions Unchecked
034:Generic Types with Dynamic Decorators
035:Doclets Find Bad Code
036:Using Unicode Variable Names
037:Checking That your Classpath is Valid
038a:Counting Objects Clandestinely
038b:Issue 038 Follow-up
039:Why I don't read your code comments ...
040:Visiting your Collection's Elements
041:Placing components on each other
042:Speed-kings of inverting booleans
043:Arrgh, someone wants to kill me!
044:Review: Object-Oriented Implementation of Numerical Methods
045:Multi-line cells in the JTable
046:The compiler team is writing useless code again ...
047:Lack of Streaming leads to Screaming
048:Review: The Secrets of Consulting
049:Doclet for finding missing comments
050:Commenting out your code?
051:Java Import Statement Cleanup
052:J2EE Singleton
NEW! Offline Archive to download for your reading pleasure

As a fan of Dr. Kabutz and his Newsletter, I am hosting this archive so that other folks will have convenient access to it. Other than this, I am in no way associated with the good Doctor. All I get from this is a warm feeling and the opportunity to plug my own site,, where I present my own humble enterprise and try to land programming projects.

Your friendly archive host,

Carl Smotricz