Well, from what I have heard, the best way to start is with AppleScripting. Once you have played with that, get the developer tools from apple and start creating mini apps with AppleScript Studio, then move up to REALbasic.
As I know nothing about programming myself, this is just a suggestion that I have heard before, anybody else??
I would second with macdaddy. That would cover most of the bases. You should also check out www.applelinks.com and go to the Realbasic University link there. You will find a whole list of ready made projects and source code to play with to help learn the basics of programming.
HTML is beyond simple in that you can't really call it a programming language, but it gives you a start into how you can make stuff just by typing text.
Then I moved on to VisualBasic as it was part of the programming curriculum at my school, easy to learn, easy to use, HORRIBLE for operation (large apps, ugly in everyway)
Then within a year I moved on to C++ and started to learn Unix (because I had just switched to OS X from 8.1). I found the best learning I've experience had to have been learning a little bit of Perl to do shell scripts in using the Terminal. If you want a start, start with learning how to do everything by the command line. As Unix is a programmer's operating system built for programmers.
Now I'm on to learning Objective-C and Cocoa.
Another hint is to find code made by other people and figure out what they did and how. I know configuring ehChat from the OpenMac client and reading the code, I learnt a great deal of how the syntax and the way code should be structured for Objective-C (its only a basic outline though).
As MacDaddy said, try AppleScript, very easy like HTML and can be used quite powerfully. Then you can move into Basic with RealBasic or try more advanced and more effecient languages like Objective-C when you have time. Another language to look at is Python, which is mostly a scripting language like Perl, but can do a great deal. Just ask jfpoole.
The key is to meddle around, make a mistake, then fix the mistake. The initial debugging when you try something new will be beyond beneficial as you should learn it.