There are three ways to tether your Android handset and get sweet internet love even where there's no Wi-Fi in sight: the risky-but-free rooting method, the still-geeky-but-not-as-bad free route, and the $US29 easy way. Here are the pros and cons of each.
Method 1: Tether Android with Apps that Need Root (Free, heavy configuration)
The Android Wi-Fi Tether application turns your phone into a Wi-Fi hotspot — essentially a MiFi — in one tap. The catch? You have to gain root access to your phone, a multi-step process that uses an unofficial Android add-on which can brick your phone if applied incorrectly. Rooting Android is doable for geeks and hackers with experience soft-modding hardware, but it's not something most users could (or should!) do.
If you're up for getting root access in Android, the Android and Me blog runs down how to do it. It's a multi-step process that involves unlocking your phone's bootloader, flashing a recovery image, and flashing an add-on to the default Nexus One firmware. Not for the faint of heart, but definitely doable if you've ever upgraded your router's firmware or hacked your Xbox. Here's a video of the process from Android and Me:
The pros of this method: it's free and it makes your phone act as a Wi-Fi hotspot that any computer can connect to without extra software or messing with your computer's setting. The cons: you can seriously screw up your phone if something goes wrong, and you may be sacrificing over-the-air automatic Android updates in the future. (If OTA updates cease, you can always flash your recovery image — but this just means your rooted phone requires maintenance a non-rooted phone does not.)
Method 2: Tether Android with Proxoid (Free, no root required, some configuration)
If you don't want to gain root but know enough to get around the command line and use proxy servers, the Proxoid Android app can tether your phone for free. Proxoid turns your Android device into a proxy server that your computer uses to make internet requests. Proxoid is free in the Android market, but to get it working you have to install the Android SDK or device drivers onto your computer, tweak some of the settings, and then configure your browser to use a proxy server whenever you want to tether. Here are the installation instructions.
To connect to the internet via Proxoid, on the phone you tap a button to start the proxy server. On your Mac you enter a command in the Terminal and on Windows you run a batch file to start the tunnel, then you set your web browser to use that proxy.
The pros of this method are that it's free and you don't need to gain root, so it's less risky. The cons are that you've got to install the Android SDK (something really only developers should have to do), and set your browser to use the proxy server each time you want to tether.
Note: Proxoid is the only method I haven't tested myself on the Nexus One. Proxoid's documentation is a bit rough — the Mac installation instructions are second-hand, as the author doesn't own a Mac — and there isn't a Nexus One-specific listing.
Method 3: Tether Android with PDAnet ($US29, no root required, minimal configuration)
Finally, the PDAnet Android application lets you tether Android using an app on the phone plus simple software you install on your computer.
PDAnet costs $US29 if you want to access https ports (which the free version blocks). To connect to the internet via the phone, you tap a button to start PDAnet on the phone, and click "Connect" in the PDAnet on your computer.
The pros of PDAnet are that it's risk-free, easy to use and requires minimal setup. (You do have to enable USB debugging on your phone, which is the geekiest step it involves, but that's just a checkbox in your phone's settings.) The cons of PDAnet is that it requires the PDAnet software on your computer and that it costs $US29.
What I'm Doing
Either I'm getting old and worn-out, or Jarvis is getting to me, because right now I'm with Chris: rooting Android isn't a process I want to go through again or have to maintain. In that spirit of laziness, I also don't want to have to mess with proxy servers or the command line when I tether; I want to click "Connect" and get online. So, I went with PDAnet, which was the simplest but not free option of the bunch.
How are you tethering your Android device?
How to Tether Your Android Phone [Smarterware]