The resource for Java programmers.
Eclipse, an open development platform.
Course at Washington
How to Be a Programmer: A Short, Comprehensive, and Personal Summary
Good Programming Practices: What to Do (or Not)