The more I work with SP2007, the more I get pumped about the technology. Although there is a lot you can do right out-of-the-box, the programming model behind this really allows it to be a great framework for any development platform.
To get started programming, you probably want to get an idea of how the Object Model works, a real simple way to do this is with PowerShell. I have an SP2007 dev server I setup that I installed PowerShell & PowerShell IDE on. Once you do that, just get a hold of the SP2007 SDK documentation, this will give you an idea of the structure of the Object Model then start playing! The following screen shot should be enough to get you going:
Obviously this same concept would work to exercise any object model!