So when does a "customer development call" become a cold call? As a small startup trying to talk to potential customers how does this affect me? All these books on startups talk about picking up the phone and talking to people.
Not sure where you got the idea that customer development calls should be cold calls.
When I teach this stuff, I encourage people to start with their social network and industry events so they can meet people in their target market. Then after you do a solid interview with them, it's pretty easy to say, "Who else in [target market description] should I talk to learn more? Will you introduce us?"
Customer development interviews go way better with an intro from a trusted source who has already vetted you.
(And for those not familiar with Lean Startup jargon, "customer development" is the process by which you figure out both who your market really is and what product will serve them. It is not a synonym for sales.)
If your definition of "works" is "is rewarding for the perp", then sure all sorts of things "work". Theft, fraud, and extortion, for example, all work wonderfully well -- for the mafia. Our laws are mainly about things that "work", because if they didn't work, people wouldn't do them enough to matter.
Your mistake is not accounting for the negative externalities. Cold calling and spam both can "work" for the sending party because it lets them find the very small proportion of people who they can sucker into whatever they're pushing. But they impose costs upon other people too, and for them spamming and cold calling definitely doesn't work. Which is why we took the time to outlaw both of them in the US.
This is the same "If you build it they will come" logic that doom so many startups. The reality is that even if you have a perfect solution to someone's problem you still have to go sell it to them. Uber started with cold calls, so did many other successful startups. It's the lowest barrier to entry there is.
Lets also differentiate between b2b cold calls which is what I have in mind mostly, and b2c cold calling. I think the latter is probably magnitudes less effective and more "sleazy" than the former and there are better ways of targeting advertising at individual consumers at this point.
It is the same logic only if you believe there is no possible way to sell people other than cold calls. Otherwise it is different logic. But hey, nice straw man. Maybe you'll feel better if you attack it some more?
Your point that cold calling works is repetitive, and was previously addressed.
And of course you believe that the thing you did/want to do is less sleazy. All people doing sleazy things believe that whatever they're doing is in fact ok, or at least justifiable. That's what we humans are really good at: justifying our own particular bullshit.
Lots of things work, but not all things are legal or ethical. You don't have an automatic right to inflict yourself on others, or to take up the time of others. Learn to live with that and find something that works and is consistent with it.
"Hi I am the founder of a company in your area which has a service that I think might fit your needs..."
"I sent you an email recently and wanted to see if you had a chance to look at it..." (assuming you sent them an email)
I feel like there is a way to cold call effectively by picking groups of people who you think would be more receptive and then approaching them as yourself. Aside from that I can't tell you how many first customers I have heard say something like: "they just kept bugging us, so eventually I just had to listen to what they had to say...and we loved it!"
Well avoiding the opening lines that nearly all cold callers seem to use is going to be a plus.
You might still annoy people but you may also get further through your pitch before the phone is slammed down at the other end.
The issue with Spree is that they rely on Wombat for connectivity to other systems and Wombat is NOT open source, it's a hosted SAAS solution. So by choosing Spree, you are inherently locked into using Wombat as well.
What about solutions like Dropbox or Gmail? Or even plain old email for that matter. Even if you look after those yourself, how can you be 100% sure that you can offer a service that is more secure and reliable than a third party?
The difference between knowing Rails and knowing how to best apply its abilities come with experience IMO. While it provides an easy approach to web development it's still extremely easy to approach things in the wrong manner with Rails. There is a lot of bad Rails code out there written by people who've been doing using Rails for more than a couple of years.
You already have experience in .NET so I'm not sure why you are trying to move away from it to a language in which you have no experience at all. You mention the work you did on the simple CMS and praying that it worked. Build on those skills. If you could do it again what would you differently. What methods could you employ so that you didn't have to pray it worked. Read up on webservices so that you fully understand them. Getting good takes a lot of time. Even though I know a few languages and frameworks very well, moving to something new can feel like starting all over again.
The great thing about software is that there are plenty of ways to get experience outside of having a job. Write your own software or develop your own sites that show off your capabilities. Make the source available on Github if you want. Write some blog posts. Help out on Stackoverflow.
I think somebody wrote on HN a while ago that if a book for 50$ solves an urgent problem, it's a nobrainer for a company to buy it. So I can imagine how "Mastering Modern Payments" could have become a hit.