10 Essential Tips for Being a Successful Freelance Programmer