When I get a conversation going with a friend and it turns out it can be done with some programming, I often do it. But I only do it when I have 4-5h I can spend with them to get it done and then I walk away from it. Really awesome to help friends, especially when wine is involved.
My bread and butter business comes through networking at events in my niche and then making continuous updates on social networks so people I've worked with remember I'm out there and pass my name on when people mention business I could do. I maintain a "resume site" with a contact form that facilitates catching those leads.
When I meet people who come through the system I ask the source of their referral. If I know the referral person well, I will take the project 98% of the time.
If they say "I found you on the Internet" I probably accept only 25-50% of the offers, I take extra long to respond to the quote request to test their patience, and if they even flinch on the topic of money I bail out before we get a contract started.
Been there. Had a similar situation on a one-project company I started with a friend.
In my case I was the developer and I had worked two months past our decision to transfer the company to him, the non-technical founder. When I asked him (probably somewhat aggressively) to give me a few days off to get started after New Year's day he hired another developer. He went silent and hid this from me for three weeks until I found out from the client why nothing was a priority any more.
Eventually that new developer contacted me to ask about the details of my past business relationship with the guy. He was having the same problems with him that I had.
How do I describe the guy in retrospect?
I think he drank a lot and shot his mouth off about being a CEO kickin' back collecting the cheques too much. I did all the fucking work and he collected.
Even though we had been communicating about the issue in my case he took this as a sign to move on. I'm actually pretty glad he did. I was ashamed to let the client be stuck with him and all of his failures but sometimes that's the price you have to pay to keep your sanity when things go bad.
In the time since this has happened I have done a lot of awesome technical projects and he still has a broken webpage with nothing but errors on the front page.
It is hard to find a new developer. I strongly advise you to get introspective for awhile and figure out what you did to piss him off. After you've given him a bit of time to cool down.
Meeting in person or on the phone certainly helps too. Emotional data is lost in emails - best to avoid until you've patched things up.
just to clarify...I'm pretty sure I'm different from your ex-CEO.
My CTO is not angry at me, but he gets very annoyed if I ask him about the product. We can talk about anything else and he acts normal/friendly. He told me to back off on asking about the product, so I did. However, I'm concerned and I don't know how to broach the topic of this product without setting him off. I want to be considerate to his feelings and needs, but how do I do this and also ensure work gets done in a timely manner? There is no real deadline to our product launch, so that makes things more difficult.
I don't think our roles are uneven either...I did all the research and design work for this project and raised our angel money.
A friend posted a suicide alert as a joke on Facebook a couple weeks ago and two days later the police came knocking. They ended up keeping him in hospital for two days "just in case". The only reason he was there was that someone doesn't get his humor and reported it even though most people knew he was fine.
edit: I guess it is worth noting that the misinterpreted public post and resulting hospital time was worse than whatever minor crisis than he was dealing with at the time. Fortunately no major medical bills (Canada) but he definitely lost a few contracts.
http://www.verbosity.ca/hosting-your-own-git-based-shared-re...