Here are some really useful Palm OS links.

Palm Tools

CodeWarrior

If you're familiar with Metrowerks tools, then you'll want to take a look at their Palm compiler/IDE combination. They provide nice integration between the debugger, source code, and emulator. Their Constructor application lets you create a visual representation of the graphical interface.

Pros: The original and official Palm development environment. Very short learning curve for the tools. If you're a beginner developing on Windows or Mac, I recommend this.

Cons: Costly, poor upgrade path, overall flakiness.

GCC

Pros: Free (both in terms of costs and freedom of use)! Unix users will prefer this more open combination of the compiler and debugger.

Cons: Much steeper learning curve if you're never developed on Unix-like systems. You'll need to compile the graphical resources from a text file (or with a helper application).

Palm Reference

Palm OS Developer - Information straight from the source. Look here from SDK downloads and documentation. I've broken down some links below that are essential for any budding programmer.

Documentation - You'll be referring to the API documentation so much that I highly recommend you download it (just in case, your network is down).

Emulator - Without this amazing piece of software, you'd spending a lot of time waiting for your program to be sent to actual device on each code/compile cycle. Instead, you can test the software on the emulator before hand and there's even automated testing. Highly recommended!

Creator ID Registration - Every Palm program (that is distributed to the public) needs to have a registered creator code. This is how the Palm knows which files are associated with which programs.

Palm FAQ - While it's not "official" documentation, you should really read over some the problems/answer solved in this well maintained FAQ.