These two are terrific and should be spoon-fed to anyone who neglects the importance of OOAD:
http://web.abo.fi/~peholmst/DecouplingJavaClasses.pdf
http://www.mockobjects.com/book/
Plenty useful.
Also this is a goldie:
http://www.javaworld.com/javaworld/javaqa/2000-03/02-qa-innerclass.html?page=2
When you grow up with Gentoo, you mostly only ever need to use the loadkeys command in the console. This led me to believe that there only existed one command to change the layout you're currently using. Now I know better (like five years or so after learning about loadkeys...): loadkeys are for console only. setxkbmap is what you use for switching in X. You'll see below what finally made this obvious to me, or rather what I was doing when I realized it.