These are in no particular order, but these are things that all Java programmers should probably know.
- Who Invented Java, and when?
James Gosling, at Sun Labs, around 1992; the group was building a set-top box and started by "cleaning up" C++ and wound up with a new language and runtime.
- What does Java stand for?
Java is not an acronym (not even Just Another Vague Acronym :-)). The language was first named Oak, after the tree outside James' window. The lawyers found a computer company called Oak so, legend has it, the gang went out to the local cafe to discuss names and wound up naming it Java; the "0xCafeBabe" magic number in the class files was named after the Cafe where the Java team used to go for coffee.
- What is the JLS?
JLS is The Java Language Specification. Every developer should buy or download (free) this specification and read it, a bit at a time.
- How do changes get into Java? JCP (Java Community Process).
- Why is there no printf-like function in Java?
Actually there are! This was fixed in Java 5; see Java Cookbook (2nd Edition) Chapter 9. Java 5 (J2SE 1.5) includes printf (and scanf), String.format(), and lots more.
- What is the GOF book?
The Gang Of Four book is entitled Design Patterns, by Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides. This is a very good book. You should read it. Not when you're just learning Java, but when you've let it sink in for about six months.
- What other Java book do I need?
- Most of the O'Reilly Java books.
- Effective Java, by Joshua Bloch
- Java Developer's Almanac
- My Java Cookbook (see below)
- What is the Java Cookbook?
That's my own book of Java recipes (for the programming language, not the coffee, but some bookstores still wind up listing it under Cooking).
- What other Java sites do I need to know about?
- java.sun.com, Sun's main technology site
- java.net, a collaborative site (run by Sun)
- java.com, an advocacy/news site (run by Sun)
- developer.java.sun.com, Sun's main developer site
- www.javalobby.org, independent advocacy group
- www.javaworld.com, Java news
- www.theserverside.com, Java Review
- http://www.darwinsys.com/java/, my own Java site
- What else do I need to know?
Everything! But nobody can know everything about Java - the subject
is now too vast. Imagine somebody saying that they know everything
about every single Microsoft product and technology. If someone like
that calls me, I'm always out.