I finally gave in to temptation and jailbroke my iPhone about two weeks ago. It's a 3G iPhone running 2.1 firmware. I followed the following guide that is suitable for OSX:
The Monty Python'esqe pointy hands were a great help!
The only problem I encountered was that I needed to have iTunes able to connect to the Internet and to my iPhone at the same time which made it difficult as I was using my 3G Internet dongle to access the Internet at the time and the fat USB dongle covers the second port on the side of the Powerbook.
All in all it took about an hour to get it all done. I've got two firmware files as a result. One is the original Apple firmware that I can return to at anytime and the other is the Pineapple firmware that is installed.
Jailbreaking the iphone has given me access to Cydia. It's a gui for the ported Debian apt-get package management system and is great. It's like the App Store but it's all free! One of the first things I installed was OpenSSH so I can now get onto the iPhone over the network and fiddle with things.
At the moment the big plus points are:
Note: If you want to Jailbreak your iPhone and your brick it then on your own head be it! I'm not responsible if it goes wrong!
Note 2: This is jailbreaking, not unlocking. It will allow you to customise the iPhone and the apps that are on it but it won't allow you to use a different mobile provider's SIM card in your iPhone.