Microsoft have released a free toolset for developing Windows Phone 7 applications. However you cannot debug or deploy onto actual hardware until you create a developer account @ $99 per year.
In my case, I only have a demo phone for 2 weeks so a developer account seems like a waste of money.
To work around this restriction, you need to do the following:
1 Unlock the phone:
Download and install the Chevron unlocker and certificate from here.
2 Stop the phone from relocking every time you reboot
Edit your hosts file (C:\Windows\System32\drivers\etc\hosts)
Add the line
You can now deploy and debug on your phone.
Note: the phone will still relock itself every couple of weeks, giving the following error
“[application name] has been revoked by Microsoft. Please uninstall it.”
Just rerun Chevron and unlock again.
2nd note: You can deploy your .xap file to others and they can run them on unlocked phones. However the continual relocking may get annoying.
3rd note: You can't use Chevron to pirate applications. It will only allow you to run unsigned applications.