HOWTO: Get started programming in Java

1. Download the official compiler and documentation

Point your browser here: http://java.sun.com/
Click on the Download link
Under "Java 2 Platform, Standard Edition (J2SE)", select "All platforms" of the most recent release
Under "J2SE x.y JDK", click on "Download JDK x.y"
Accept the license agreement
Download the offline installation of your platform (this includes the run time library)
Go back to the "Download Java 2 Platform Standard Edition x.y"
Under "J2SE x.y Documentation", download the documentation

2. Install the distribution

Under windows, double click on the executable
Under Linux - make sure you downloaded the .rpm. Install it like you would any other RPM.

3. Install the Standard Edition Documentation

You will use this every time you program in Java.

You downloaded the documentation in the first step. Unzip it somewhere easily accessible.

Load up the "api/index.html" file in a web browser. You should see three frames.

Set your default webpage to that page.

4. Find an IDE

There are two  IDEs / editors that are commonly used. They are:
Pick one (eclipse is the most popular) and install it. Look for sample programs and projects in the distribution and learn from them.

I use eclipse. It's pretty easy to pick up.

10. Download ant (used for building medium-large projects)

Point your browser here: http://ant.apache.org/

20. Read Websites

JavaRanch - A Friendly Place for Java Greenhorns [javaranch.com]
ONJava.com [onjava.com]
JavaWorld.com [javaworld.com]
TheServerSide.com - News, Patterns, Reviews, Discussions, Articles, Books [theserverside.com]

99. Get certified

Point your browser here: http://suned.sun.com/US/certification/java/index.html

Read "Sun Certified Programmer & Developer for Java 2 Study Guide" by Kathy Sierra/Bert Bates

Glossary:

Eclipse - Universal IDE that most Java developers use
IDE - Integrated Development Environment. Used for entering your program.
J2SE - Java 2 Standard Edition. For developing client applications and GUIs.
J2EE - Java 2 Enterprise Edition. Server side only. Releases typically lag J2SE.
J2ME - Java 2 Micro Edition. For cell phones and other embedded systems
NetBeans - Sun's IDE
RE - Runtime Environment. Needed for running java applications. Comes with development kits.