What development enviroment should you use? Already you are faced with a plethora of choices: cross-platform or for Mac only? Standalone programs or ones that need a runtime? Just for fun or might it develop into something more serious?
My own requirements in a development tool were: easy to learn, good graphical user interface, cross-platform, and if possible, cheap, preferably free.
So, based upon my requirements, that excluded X-Code (though I still have it on my Mac), Tcl, Python, and a few others and left me seriously looking at REALbasic, Java, SuperCard and Revolution. I tried all of them for a few weeks and REALbasic came out on top by a mile. I had used the old HyperCard extensively and I found SuperCard and Revolution to be quite limited. I hadn’t previously appreciated the difference that a fully object-oriented language would make. Java is object-oriented and cross-platform, but it is intended mainly for web use, and is very limited. Quite honestly, Java programs look atrocious. I still haven’t seen a single Java program that looks like it is native to the platform it is running on.
X-Code is a good alternative if you (a) program for the Mac only and (b) you can stand the C language (not everyone can). But be aware that the latest version of X-Code requires Leopard and does not compile for older versions. To guarantee compatibility you’d need to install both X-Code 3 and X-Code 2.5. Or in other words: programs developed in X-Code 2.5 under Tiger will run fine on Leopard, but not necessarily the other way round.
As far as cross-platform programming goes, I think REALbasic is the best solution by far.