Is it just that companies don't want to take on the obligations to the customer that come from selling a service?
Why won't companies that provide online services take my money? As a mere consumer of such services, and someone not privy to any of the discussions that go on inside tech companies, I have no inside information that would help me answer this question. But I have a guess: many companies don't want to take on the obligations to the customer that come from selling a service.
My question has been asked by many during this Olympics season, as bloggers throughout the U.S. complain -- sometimes seriously and sometimes comically -- about NBC's refusal to show major events live. "Why won't NBC even give me the option of paying a premium to see events live?"
Or consider Twitter, which rather than offering a paid option is cracking down on third-party clients, pushing people towards the Twitter website where ads can be served. But many third-party clients offer a far, far better user experience than the website, so why not let users pay for the privilege? Users with free accounts could be confined to the website, while those who pay could employ the software of their choice. But Twitter seems determined not to consider anything involving payment -- much like Facebook, which Farhad Manjoo was encouraging to charge for service four years ago. Presumably he's given up on that now.
There have always been fish willing to swim against the "free" current: for instance, Jason Fried and David Heinemeier Hansson of 37Signals have long been advocates for charging for online services. Some of the same arguments have been made by Maciej Ceglowski, developer of the online bookmarking service Pinboard, who has been watching the merry-go-round:
Someone builds a cool, free product, it gets popular, and that popularity attracts a buyer. The new owner shuts the product down and the founders issue a glowing press release about how excited they are about synergies going forward. They are never heard from again.
Whether or not this is done in good faith, in practice this kind of 'exit event' is a pump-and-dump scheme. The very popularity that attracts a buyer also makes the project financially unsustainable. The owners cash out, the acquirer gets some good engineers, and the users get screwed.
To avoid this problem, avoid mom-and-pop projects that don't take your money! You might call this the anti-free-software movement.
Ceglowski makes a strong argument -- but I think his whole post also offers some insight into why more developers don't take the route he has taken. He comments, "If your free software project suddenly gets popular, you gain resources: testers, developers and people willing to pitch in. If your free website takes off, you lose resources. Your time is spent firefighting and your money all goes to the nice people at Linode." By "firefighting" Ceglowski primarily means solving the technical problems that arise when developers are trying to scale their service up, but there's another kind of firefighting that needs to be done also: customer service. More users, more problems; more people who need help.