Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trial

Chris Andruszko
18,392 PointsA question for those who freelance...
For the past few months I've been doing a lot of freelancing projects for people for little to no money. I figure it looks better on my portfolio if I make stuff FOR other people, rather than just making random websites and applications.
Now, I don't want to seem like a downer here. This is a positive community and I always feel encouraged every time I'm here. But let me just say this so you know where I'm coming from: NEVER EVER WORK FOR FREE.
A lot of people seem to think you can just ask a charity or small business if they need help with a website, you start from scratch, and build the perfect site for them. But it hardly ever works that way. In my experience, 99% of the time they already have a website using a do-it-yourself tool like Squarespace or Wix. Now, my job is not about coding, it's about explaining to them why those files can't be modified, why they have to pay for a different host, and why I need their secure information so I can set up their paypal on the new site I create.
So I guess my question is, how do I explain these things to my clients? And in a polite manner? I feel like I've really backed myself into a corner here.
1 Answer

Kristin Jones
12,217 PointsYou will experience the same exact thing working for "for-profits" who are paying you cold hard cash.
The trick is to build an "investigation" phase into the beginning of the project where you get the lay of the land so to speak, and then writing up a very clear and detailed statement of work which includes not only the coding you anticipate having to do, but also a list of your expectations, and a summary of the current state of their site and a detailed list of what you're going to do to take them from their home in their current state of crapville to the sunny shores of awesome.
Or, if you're willing to do "free work" to bolster your experience and pad your resume/portfolio, contribute to open source projects instead of taking on projects from clients who've no clue what they need, want, or are actually asking for. CodeTriage (http://www.codetriage.com/) is an awesome site if you're looking to get into contributing to open source and a GitHub profile that shows a steady stream of commits to a variety of projects is worth exponentially more than a half dozen non-profit sites where your ability to really show off your skill was hampered by some ridiculous client who decided that Comic Sans was the perfect font for everything and, when it comes to fonts, bigger and redder is always better. (Note: I have actually had a client insist on Comic Sans on a for-profit real estate site. I'm not kidding, people are crazy sometimes).
It's a rare client who will have actually put the required thought into actually delivering coherent, actionable requirements. Typically, you talk with them, do research, then have to sell them on the fact that after doing the research, you now know better than them what they need.
Chris Andruszko
18,392 PointsChris Andruszko
18,392 PointsThank you. This is exactly what I need to hear. This is the sort of advice no one really tells you when you're starting out. I'm glad to know I'm not the only one experiencing this. I guess the rest of my day I will be sending out messages explaining to some of my clients what's going. If they want to work with me on this, I'll gladly help out with the remainder of the projects. But from here on, the only free work I'll do is contribute to open source projects to make the tools I use even better.
I guess I got lucky early on. At first, my clients basically said "do whatever you want." One of my clients even had some knowledge of web development and that made communication super easy. Some clients paid me more than I asked for. I guess it was a bit naive of me to assume most clients were that easy.