I really love the internet. I see all of the possibilities for the things that can be done on it and it makes me excited. I have grown a lot as a software engineer through my projects in web development. I learned CGI, PHP, HTML, CSS, and Javascript all on my own just for the desire to see what I could do with them. I had ideas for web content and I couldn't do it with just the basics, so I learned how to do it with the big web scripting languages. I then learned classic ASP and .NET for a couple of work-related projects and see the great potential in those technologies as well. I still code everything by hand, and hold myself to the the high standards that I learned back in school whether I am getting paid to code or if I'm doing it for fun.

Thanks to the internet, sites like Craigslist have popped up and provided tons of opportunities for people to connect. I have bought and sold stuff on Craigslist, but mostly I have advertised my services and picked up side projects for some extra cash and learning experience. I still have an ad running every week and will get hits over time. These potential opportunities to make extra money are great, but the fact that all interactions are done over email raises a whole new set of challenges to deal with.

Legitimacy. How can you ensure it? How can you confirm it? It's risky stuff. If you sign up to do some work, do you ask to get paid in advance? Do you agree to complete the work and then get paid? With either of those options, someone is at the risk of getting screwed over. You have to trust, but it's so hard to trust when you know that there are scam artists and thieves always on the watch for easy prey. These are the challenges that I have faced during my time using Craigslist.

Most of the projects I have experience working on have been small and all of them have come through fine with payment (fortunately) so far. I have picked up a couple of larger projects that involved teams or legitimate businesses requiring tax forms and social security numbers. Those projects raised some major concerns because I am extremely cautious with information that can be used for identity theft. Again, they ended up working out fine after I did research and verified legitimacy, but I had to go through the trouble first to do so.

I am aware that there are sites like Elance.com and RentACoder.com that act similar to Craigslist but provide certain assurances like protection of your information and guarantee of payments if work is completed satisfactorily. These sites aren't quite the same because they typically have a much higher competitive element where people end up getting underpaid for their work unless they do these sorts of tasks for a living full time. Craigslist is much more casual and self monitoring as a community. I have seen posts where someone offers a job to accomplish a sizable amount of functionality for a very low fixed amount of compensation. As a result, their ads either get marked as spam/inappropriate, or someone will post back a reply to the ad saying that no one should accept the job because it lowers the level of compensation that should be expected for that amount and type of work. People always want more for less, and I totally understand that, but at some point you won't be able to find anyone to take on your tasks, you will get bad quality output, or you will be blasted for making your ridiculous requests. I appreciate that because I want to get fairly compensated for my efforts and my quality products.

If you are looking to seek work or post an ad for work on Craiglist, here are a few suggestions I have based on experience and preference:

  1. Be willing to negotiate - If you are stubborn with your rates and expectations it will be a lot harder to find what you are looking for.
  2. Be fair and reasonable - Nobody wants to get ripped off, so be honest with the value of the work. Honesty usually yields repeat customers and referrals anyways.
  3. Don't cheat - Respect the nature of the community and the work. Be honest about what is involved and how hard it will be to accomplish.
  4. Talk liberally before coming to an agreement - Every situation is unique. Some people like hourly pay, some like a lump sum. Some ask for advances, and some are willing to get paid when the job is done and the client is happy. No matter what, both parties need to be happy with the agreement before it is solidified, so talk via email, IM, phone, or even meet up in person (I have done that) to make sure both parties are on the same page.
  5. Don't give out any personal information until you know it's safe - This one is tough because you may never know for sure, but you need to do the research and find out as much as you can before committing to anything. A lot hangs in the balance if you make a mistake.
  6. Be patient but not lazy - It is important to respond immediately to inquiries, or as soon as possible, so that you don't leave the other party hanging. People are trying to balance their lives and their schedules. They appreciate when you respect that and give them timely responses. Sometimes people are flaky, so you have to be willing to make the extra effort if you have been patient and waited for a while before corresponding again.