Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Who Does That Server Really Serve? (gnu.org)
84 points by ilandsman on Dec 26, 2014 | hide | past | favorite | 113 comments


Wow, what a lot of hate for RMS in this thread. All I know for sure is that I wouldn't be writing this on the machine I'm using here without him, and a ton of hardware in this house would spontaneously stop working if every line of code he had an (indirect) hand in or influence on disappeared. I'm pretty grateful for that.

Of course you could say the same about Edison or Maxwell, but that's roughly the right magnitude. Hating on Stallman as a person is not very elegant, hating him for the wrong reasons (at a glance, I spot: jealousy, misunderstanding, claims of irrelevancy and so on) is not productive either.

If you're going to criticize criticize the particulars of the linked article rather than the man. Thanks.

On topic: In case you didn't get it: the article (rightly) identifies software-as-a-service as a threat to open source, it allows companies that in the past would have shipped binaries and would have been compelled by the GPL to release their sources to do an end-run around all this so they can charge you for their software without ever having to release anything. That's a valid point and plenty of examples exist in the world today.

How serious this is is not for me to say but I do note an ever increasing trend towards lock-in and a more asymmetric internet which seems to draw a line between the 'haves' (the owners of infrastructure and services) and the 'have nots' (the users, smaller businesses). Ever larger chunks of a business operation are running on hardware and software even the business owners have no control over, stuff they couldn't keep alive even if their business depended on it. This sort of inter-dependency is exactly what we should be trying to avoid because it means that you are simply no longer in control, either because you don't have access to all the code that powers your business or because your code is only a minor extension to a bunch of black box code that you can not review or inspect on a machine that might be running all kinds of nefarious stuff besides what you think it is doing and that might come back to bite you one day.


Software as a Service is a huge threat to Free software in particular, and Open Source in general.

This is why I release all my own software under the AGPL.[1][2]

I also try to avoid using SaaS as much as possible. But this is going to remain very difficult until fully decentralized, peer-to-peer communication networks become widespread.

As long as centralized forums like HN, centralized mail services like GMail, and centralized social networks like Facebook dominate, it's going to be hard for you to keep your data out of their hands without refusing to participate in electronic communication at all. While any sort of data, from email to TCP packets, flows from your own machine through others outside your control, this will remain the case.

Complete freedom will require complete isolation. Anything less will be a compromise. Everyone will have to determine where they draw the line for themselves.

[1] - https://en.wikipedia.org/wiki/Affero_General_Public_License

[2] - https://www.gnu.org/licenses/agpl-3.0.html


This should be periodically reposted or sticky somehow:

http://www.fourmilab.ch/documents/digital-imprimatur/

John Walker was pretty prescient when he wrote that.

(and in case you don't know who he is: he founded Autodesk).


> But this is going to remain very difficult until fully decentralized, peer-to-peer communication networks become widespread.

Do you think they ever will? There's not much financial incentive for companies to embrace decentralized p2p and there's a clear financial incentive for SaaS. Until that situation reverses itself, we have a problem.


In addition to the hate for RMS, just look at how many people are distracted by the argument over development models. PHK was right[1] - PSYOPS for nerds is easy; as easily-deployed distractions go, "profitability of Free Software" is right behind "GPL vs BSD".

[1] https://archive.fosdem.org/2014/schedule/event/nsa_operation...


Most people hate individuals who act like they have greater moral authority than us mere mortals. It feels like an implicit judgement of our character. The fact that he's been proven right over and over makes it worse.

This thread could be a case study in debunking the claim that programmers are more logical and less prone to emotional manipulation than other humans. From everything I've seen, programmers are actually more emotionally sensitive than the rest of the population and thus are more susceptible to emotional arguments than logical ones. After all, logic we can trace and refute. It's harder to refute feelbad.


I don't really like this argument. (This is a bit different from saying that I disagree.) There's a tradeoff here, and it's more than a cliche in this particular case.

The same argument would imply that you shouldn't do computing on VPSes or similar services that other people own. This might be strictly true, but the alternative for lots of people is that they just won't be doing that computing. At least with free software, we can say that it's usually monetarily cheaper than proprietary software. Buying and running your own server is much more expensive than running an EC2 box for pennies per hour. A lot of people's first introduction to free operating systems, these days, tends to be on a remote server instead of their personal computer. I don't think we should halt that.

The same argument would imply that you shouldn't use the email or shell account from your university, and you should self-host. While I actually do believe that to some extent, I get the feeling that Richard doesn't.

And even if you do end up self-hosting everything, chances are you won't be responding to security issues as quickly as a full-time team of professionals on call. At that point, anyone who wants to take your freedom can do so. This doesn't seem like a win.

I appreciate the goal, but we have a long way to go to the day when this becomes the right advice.


At a minimum you should know what you're getting into.

Imagine that that server is controlled by your worst enemy.

Still okay with using it? If so thats good evidence that you can just go ahead. If not, ... well, it gets harder because how do you know your worst enemy doesn't or won't gain control of it? (What? your worst enemy is the neighbour's chihuahua and Amazon doesn't hire dogs?)

WRT the costs there, I'm not sure that really follows. At least on the high end EC2 is phenomenally expensive if your load is predictable, it's interesting when you can't predict it. The large high cpu instances basically pay for the hardware in a couple months worth of use. Small instances are low performing to the point that a $35 quad core arm or $50 atom device is competitive. Surely there are cases where EC2 is cheaper, but "not computing at all" sounds like an exaggeration.


"Small instances are low performing to the point that a $35 quad core arm or $50 atom device is competitive"

You're forgetting the "Amazon data center connectivity", "can scale up or down at will", and "someone else's problem if the hardware fails" parts. Those things are not free.


Yes but sometimes cheaper than cloud provider make you think.

IMHO, it' a bell curve. Before a certain point and past another threshold the "cloud" is more expansive than it's worth. Adapting your application/system to a IaaS or a PaaS model isn't free either.


> The same argument would imply that you shouldn't do computing on VPSes or similar services that other people own.

By my reading of the argument, they might not have a problem with VPS. First, the software on a VPS can be completely free (Linux). Second, it's not computing you would do on your own (short of buying a fiber connection and racked servers), and this is their argument for why a search engine might not be SaaSS.

As an aside, with a project such a YaCy, I think their final point that P2P software can replace SaaS (such as search engines) is coming to fruition.

> The same argument would imply that you shouldn't use the email or shell account from your university

Again, I don't think they're arguing this. They'd certainly want you to use a free client, but the email protocol can't really support running servers on a user's machine if it's ever going to be turned off.

Personally, I think the solution for SaaSS operators is to license their code as free software, preferably Affero GPL so that others can't make it non-free. This still introduces privacy concerns but remedies all the lock-in issues and gives users the option of running that software themselves.

To your point on self-hosting being insecure, I think it's still more secure than putting 100% faith in a 3rd party, and one that's a single point of failure (or surveillance). In the end it's not much different of a problem than updating your personal OS.


>The same argument would imply that you shouldn't do computing on VPSes or similar services that other people own.

I don't think he saying that exactly. I think is more of a consider who has the control of the data .

For example. I worked for a company that monitored power use circuit but circuit. The data was uploaded to our servers and processed by our software. All very convenient. You could download some of the raw data, but generally small chunks. (minute by minute, day by day). You stopped paying and you lost functionality.

This is a similar problem with user generated fitness data. Some "Services" don't make it easy to take your data with you.

VPSs you generally have more control, and can just dump your data and move to another provider.


> Buying and running your own server is much more expensive than running an EC2 box for pennies per hour.

Is it really? You can get a Pentium III era server essentially for free. Suppose it uses 60 watts (0.06KW). At the national average 12.2c/KWh that's 0.732c/hour. An Amazon micro instance is 1.3c/hour. That's the "I only need one instance" rate; if you need more than one then you can get slightly newer hardware with virtualization support which makes self-hosting even more attractive.

> And even if you do end up self-hosting everything, chances are you won't be responding to security issues as quickly as a full-time team of professionals on call.

Amazon doesn't maintain your VM. When your VM is vulnerable to Heartbleed or Shellshock you still have to patch it yourself unless you've configured auto updates, which applies the same to self-hosting.

What Amazon provides is convenience. If you need about a hundred cores for twelve hours, you can buy a dozen 8-core machines on eBay, use them for twelve hours and then sell them again for about what you paid for them, but that's a huge pain compared with configuring the equivalent on EC2. EC2 isn't necessarily cheaper, it's just a lot easier, especially if you don't already have the requisite experience and don't want to learn. Which is much the same as it has always been with free vs. proprietary software.


The CapEx costs of a server are a fraction of the OpEx costs of colocation (rack space, power, bandwidth, &c).


That's kind of the point. Most of those costs don't actually exist at small scales. The space required for one or two physical machines is negligible, with so little heat load you don't need a dedicated cooling system, there is no bandwidth cost when the server is in the same facility as the users, etc.

You pay Amazon to host your VMs because it's easier, not because you're saving money. There are only a small number of use cases (like having a highly inconsistent/unpredictable load from day to day) where paying someone to host for you will actually save you money.


> Do your text editing with your copy of a free text editor such as GNU Emacs or a free word processor. Do your photo editing with your copy of free software such as GIMP. What if there is no free program available? A proprietary program or SaaSS would take away your freedom, so you shouldn't use those. You can contribute your time or your money to development of a free replacement.

There are many kinds of freedom.

If I'm spending hours or days trying to get some inadequate free program to accomplish some task I need, or trying to work around the lack of a free program in that area at all, when there is a proprietary program that will quickly accomplish my task, NOT using the proprietary program takes away freedom. It enslaves me to spending hours on that task when I could be doing something I would enjoy more.

If it is a task that will be ongoing as opposed to a one shot, and so I might have some concern about getting locked into something, freedom maximizing would probably involve a mixed approach: use the proprietary tool, and toss in some monetary support toward some free software project working in that area.


In the case of Stallman's free software, the most important of freedoms are four specific forms: The freedom to run the program as you wish, for any purpose (freedom 0). The freedom to study how the program works, and change it so it does your computing as you wish (freedom 1). The freedom to redistribute copies so you can help your neighbor (freedom 2). The freedom to distribute copies of your modified versions to others (freedom 3).

The "freedom to get things done quickly" is a shallow freedom that leads users into a life of helpless servitude and social division. The reason this happens is because there are many people who write proprietary software which will help users do powerful things but the software will also have various restrictions that result in helpless servitude and social division. Stallman teaches that users who choose to accept these proprietary software with the restrictions cannot live in freedom as users are forbidden to control the proprietary software, the control over the software belongs to the owner of the proprietary software.


> Thus, SaaSS is equivalent to running proprietary software with spyware and a universal back door.

I actually agreed with the article up to that point, but this is wheasel-wording and kinda dishonest. Microsoft's backdoor is universal as it has access to your entire system. The described SaaSS backdoor isn't universal - it only pertains to that particular service and no other services (or non-services) can be affected. Thus, given the previous definition of the word, it is not "universal"

This wheasel-wording only detracts from the point being made and may alienate people who would normally agree.


As someone who's ambivalent about free and open source software (put mildly), this is the first one of his articles I really agree with. When I read that bit about universal back doors I smiled, knowing who he is and where he comes from.

I still agree with his point. Is it even worth pointing out such trivial things that might well end up hijacking the top thread here? Richard's message, in its entirety, makes an important point. Let's rather discuss that.


I point it out because I've noticed this in his writings regularly. I think its really important because I believe it alienates a lot more people than he'd like. When making an argument, the last thing you want to do is sound deliberately dishonest.


This one actually struck me the opposite way. I agree with his stance on SaaSS - you have no control over your data (spyware) which is being given up, and the operator can change literally anything on the system because they own it and have final say (universal backdoor).

Microsoft's "universal backdoor" is Windows Update I'm pretty sure. And our telemetry is the spyware. And yes, you could likely attempt to alter a copy of Adobe Reader through Windows Update, but so could any installer under the sun. It's a weak, inflammatory argument to call updates a backdoor. Indeed, the argument against updates will boil down to "well it's not free so how do you know it's not doing x". Which becomes the argument that all nonfree software is/can be backdoored.


Thats precisely my point, its not universal. They only change their service (e.g. google docs). The other services you use remain unaffected.

Its not a weak and inflammatory argument to call Windows Update a backdoor. If push comes to shove and its very profitable for MS (or they're threatened by the NSA, or any other "really good" reason), they can and very likely will automatically install something on your system that you don't want. Or replace the default search engine with Bing. Or uninstall something. Or make your machine unusable.

We've already seen mild examples of this (see U2's album)

SaaS (especially web-based) doesn't have that kind of power over your machine (or over other services you use)


Yes, 'universal within the defined scope'. Everything within that service.

Microsoft Windows doesn't have a backdoor to data on your android phone, but its backdoor is still universal within the scope of your your Windows installation'. Do you have a more appropriate term he could've used? I'm not familiar with one offhand, if you know one I'd appreciate you sharing it.


How about just "backdoor" then. "Within a defined scope" != "applicable to all cases" which is the definition of universal. Precise, honest wording is important.


"And yes, you could likely attempt to alter a copy of Adobe Reader through Windows Update, but so could any installer under the sun."

That might be a good thing to fix, actually...


I read it as speaking specifically about the computing you are offloading onto the remote machine, not necessarily all computing that you do on any machine. For example, Microsoft's backdoor is universal on that machine, but doesn't apply to non-Windows hosts outside of that computer. That's what I read, anyways.


I've always disliked Richard Stallman's views on software. While open source is great, its a terrible business model. Closed source has its place - and not all of it is inherently evil.


> While open source is great, its a terrible business model.

Please explain why you believe this is true.

Also, don't confuse open source software and free software, there's actually a not-so-subtle difference.


> Please explain why you believe this is true.

Maybe because when you give people the right to freely copy, use and redistribute your code it's a bit hard to then ask them to pay for it.


Well, I'm sorry you aren't imaginative enough to design a business model which generates revenue from anything other than controlling the supply and charging admission prices.

Some ways to milk $ out of free software include:

- Being the de-facto expert in your product (hello sweet 6-7 figure consulting contracts when an Enterprise picks it up)

- Training

- Tech support (hand-holding)

- Publish books about the subject

The list goes on. If enough people adopt a free software project, that doesn't preclude the person (or persons) who release it from turning a profit. It just ensures they can't do so at the expense of the liberty of their users.


* Being the de-facto expert in your product

For some things this may work, but if someone's going to be investing 6-7 figure consulting contracts, and the code is open and free, they'll eventually replace you with someone else in-house.

* Training

Isn't a recurring or ongoing stream.

* Tech support

If you design your product/service well enough, people probably won't need much hand-holding. Or... someone else will take the code and make a better version that doesn't need the hand-holding, and win your potential customers away.

* Books

Again... not really recurring.

Yes, there's ways to make money, but none of these are terribly good business models. Books? Entire massive companies based around books are folding or shrinking. Suggesting that someone's business model be based on books is... weird.

And when the code is open, you'll face more potential competition than if the code was closed.

ACK - I missed your 'milk' phrase. 'Milking money' just doesn't scream 'solid business model' - it screams out "petty vendor who will nickel and dime me to death".


> they'll eventually replace you with someone else in-house

Yeah, that's why you don't put all your eggs in the same basket :)

> ACK - I missed your 'milk' phrase. 'Milking money' just doesn't scream 'solid business model' - it screams out "petty vendor who will nickel and dime me to death".

I view business as inherently evil and selfish. I am choosing to engage in business because I don't care about being good.


> I view business as inherently evil and selfish.

I suggest rebuilding your frame of reference.

Offering something of value for a profit is not evil. It may be considered selfish, but it is also selfish to offer something of value for free to gain moral high ground, peer recognition, and resume fodder.

Being selfish isn't evil; survival isn't evil. You live in a community that has rules and values, and if you live in the spirit of those rules and values, being selfish isn't causing harm, and in most cases, helps others. When a business bends those rules, or breaks them with no regard for the community, that can be considered unethical and in some cases "immoral" and possibly evil by some definitions.

If your business model doesn't take advantage of customers, employees, or the surrounding community, you probably have a good business plan.


> I suggest rebuilding your frame of reference.

Thanks, but I'm perfectly happy with my opinions and will not be discarding them at the behest of some HN user.


#1 is being a consultant. #2 is being a teacher. #3 is being a consultant. #4 is being an author. None of these involve making money off the software. They all involve side businesses with about as close a relationship to the software as I have to the cereal I ate for breakfast this morning. If I'd starved to death, I wouldn't be working right now, but I don't say I eat cereal for money.


Open Source business models exist, but they are nowhere near lucrative enough to sustain all software developers. Who are you supposed to train or publish books to if every developer is somehow trying to eke out a living in this "open source" world?


Well, the above is "business models that could support creating a new project" - in principle one can also eke out a living extending and adapting other people's projects for people willing to pay. Indeed, a huge percentage of programmers currently ekeing out a living programming are already effectively doing that, often in situations where things are proprietary only by default (as in, it's license says you can't share it, but if its license said otherwise it still wouldn't be shared because it's too specific to what one particular company is doing).


> I'm sorry you aren't imaginative enough...

No need to be condescending. I've actually been researching this a fair bit lately for a new project.

What I found was that even though people parrot the revenue models you list above, the reality is that it is far more risky to go open than to "control the supply".

The margins on services (consulting, training, support etc..) are much lower than selling the code.

Here is one example I came across showing how it's no slam-dunk: http://www.locomotivecms.com/articles/we-tried-to-solve-the-...


I've created closed source software for many years now, and we've happily reduced our costs by incorporating open source software (where the licenses permit). We've also paid for proprietary libraries.

I would be surprised to find anybody doing serious development without relying on open source software somewhere.

And the companies I've worked for have generally been very willing to release code as open source, partly for goodwill and advertising (we've received several job applicants who only learned about us through our contributions to open source projects), and partly to avoid the cost of maintaining an internal fork of, say, Boost or JQuery. Even if you can't open source the whole kaboodle, it's often possible to release something, especially additions to existing open source projects.


Even if you release some stuff as open-source, if "the whole caboodle" is not free software, then you're still one of the proprietary software vendors Stallman is railing against.


The trick is not to take it personal. I don't care how much Stallman is railing against proprietary software, I care about how he seems to have an uncanny ability to have the longer view and to see what misery will come from a blind continuation down a certain road. As always there is middle ground, extremist positions have use, they show you the spectrum rather than just their position.


personally, i don't owe it to anyone to release my copy the source code as long as i am using the product of the source code privately. for example, let's take a point of sale. at the broadest possible sense of imagination, my pos operators have a standing to demand to see the source code. at no point in time does a customer, who does not directly interact with the pos except in handing my operator their money have a right to look at my source code. richard stallman would, i hope, agree that he does not have a right to look at it either.

free software to me does not mean free for all. a person and an organization can still keep its secrets. (corrections welcome)


Correct, but the GPL demands that once you've given the source to your POS operator, that they are then free to share it with anyone and everyone.

So, in your hypothetical, it turns out to be very hard to prevent the distribution of the source, unless all the POS units are held in-house (that you are a company developing and using your own POS units in commerce, as opposed to being a POS vendor) and that all your employees who have standing to receive a copy of the source have some compelling reason to not distribute it.

That's a feature to GPL advocates and a bug to GPL detractors.


And?

I wasn't trying to tell people how to be Stallman's friends, or how to get absolution (for whatever wrongs) by following the FSF's advice. Instead, I want to encourage people to pick their battles. If you can't get permission to release your full program as open source (or, if you plan to become rich and don't see any way to do so after you've published your source code), then perhaps whoever is responsible for the decision would be willing to release less than everything today.


> No need to be condescending.

I disagree because this is HN


Because this is HN, there is a need not to be condescending.

Please re-read the site guidelines: https://news.ycombinator.com/newsguidelines.html and https://news.ycombinator.com/newswelcome.html.


This encourages bad products.

If the product is created easy to use, there is no reason to buy a book, to require technical support, or require training.

Consider an open source photo sharing application. You distribute a system so easy that anyone can set it up. You hire people to do user studies to make the (AGPL) web application just work.

The more money you spend making it easy to set up and use, the less money you are able to collect for training, tech support, and books.


This is something Snowdrift.coop is hoping to help address.


What if you're a coder who has no interest in any of those things? Many people get into SaaS specifically so they don't have to work with bureaucracies any more.

Book publishing can sometimes be alternative, but what if your code is so intuitive and easy to understand that no one needs a book about it? Or what if you're a bad communicator and someone else writes a much better book?


Anybody can do what you are mentioning. Competition is fierce and training and tech support aren't scalable for a small shop.

You also forgot to mention the culture behind many Foss projects: profit is seen as evil and your project will get forked, the second you try to turn a profit.

Foss users expect free support, bug fixing, and software. Part of the entitled generation of internet users.

If you want to make a living, proprietary services all the way.


> Anybody can do what you are mentioning.

Yes, that's the point of free software. Everyone can.

> Competition is fierce and training and tech support aren't scalable for a small shop.

I think you're underestimating the degree to which most of the world outside of IT (and including much of the world inside IT) is too lazy to figure it out and would rather pay money for a black box that solves their problems.

> Foss users expect free support, bug fixing, and software. Part of the entitled generation of internet users.

Not all of us do. And if your audience is companies, not users, the goals align differently.


"Yes, that's the point of free software. Everyone can."

So by open sourcing my product, I am opening myself up to all sorts of competition. Not a very smart way to run a business.

"I think you're underestimating the degree to which most of the world outside of IT (and including much of the world inside IT) is too lazy to figure it out and would rather pay money for a black box that solves their problems."

You're right. But if anyone can do it (mentioned above), it will eventually be a race to the bottom (based on cost) when software is equal.

"Not all of us do. And if your audience is companies, not users, the goals align differently."

I run a business. I wouldn't hire a 1 or 2 person shop for support of an open source project. I have had way too many bad experiences.

When you are just starting out, it's hard enough to make money. Why make it even more difficult by increasing competition and doing something that will not scale well?

I saw this in one of your other posts:

"I view business as inherently evil and selfish. I am choosing to engage in business because I don't care about being good."

I wish you would have said this in the first place. I would have not wasted the time responding to you.


What I write below is based on my real-life experiences. I had a NoSQL database startup called Scalien for ~4 years. There was a lot of competition (eg. MongoDB), most of it was opensource, so we were opensource. This was also in line with my feelings: I'd like my work to reach as many people as possible.

You cannot sell opensource software itself directly because it's free. What you can sell is: 1. 24/7 support 2. Enterprise/proprietary features 3. Consulting/custom development based on your product

Problem is, in this business model (called "enterprise opensource software"), you're not getting paid for writing the core software product itself. Your clients expect you (or somebody) to just do that for free. A more nuanced problem is that those 3 types of revenues only scale linearly: if you want to support 2x as many customers, you will have to hire 2x as many support engineers. Your profit margin will not increase as you add customers.

Towards the end of my startup I had a shocking insight. Given the above revenue channels, I should have just tried to be the n+1th Hadoop vendor and screw my own product. That way _I_ don't have to invest my time to work on the core product, which doesn't get me revenue anyway. I can just concentrate on the revenue generating stuff. And Hadoop was already an established opensource project anyway.

In the end I didn't do that, because I wanted to have a product company, not a support/consulting/custom development company. And there was already Cloudera et al. The company failed.

More generally, there's no good incentive to develop a new opensource product if you want to make money off it. If you try to, you will spend a good deal of your time writing the core product for free, taking on the huge risk of first trying to make it a successful opensource project (not business). Then, if and when it becomes a successful opensource project (a big if), you will split your resources between working on the core product "for free", and the 3 channels above, which will actually make you money.

I'm not saying you can't make money. You can, but it's not fun, and it's not working on the core product. If you also try to write the core product itself (like MongoDB), you're taking on a huge, time-consuming initial risk, unlike in SaaS where you can be lean, learn and iterate with 100 customers.

I think SaaS is a great business model, much better than software products. It's good for opensource, too: SaaS companies opensource tons of software. For example, I work at Prezi now, and we opensource lots that isn't the core presentation product itself:

https://github.com/prezi


Competition in open source is much more fierce than outside of it, and that is a good thing. Imagine if your company had not been an open source company but rather a closed source company. Instead of being able to bootstrap you'd have to start with getting a large bunch of money on an idea that already has an open source equivalent. The chances that you'd fail would be roughly identical to doing it the open source way. But all your former customers would be left high and dry when you folded. That is what open source is all about, it is not about the providers, it is all about the users.

Sorry to hear you didn't make it, but your work will live on now, probably forever or as a part of some other offering, it may be small consolation to you but to me it proves the system worked.


My software didn't take off as either an opensource project or a business, so when we folded, the former customers would have been left high and dry anyway. "Fortunately", the reason for the final fold was that the last customer left, so at the final hour the set of former customer was empty.

The work lives on as a github repo that nobody cares about. I'm not upset about it today, I learned a lot, but that's how it is.

Btw. it's:

https://github.com/scalien/scaliendb


I think you missed my point. The fact that the repo still exists is all that would matter to your former customers. They could download the code and fix the problems themselves (hopefully contributing back to the codebase by re-releasing their fixes).

I have a long list of 'failures' behind me, not a single one I would care to repeat but also not a single one that didn't teach me something, I always cherish the thought that the failures eventually led to the opportunities that worked out and that without them those wouldn't have happened either. For the same money you would have had the next mongodb.

That was a pretty crowded space at the time.


I know you know what you're talking about, but I'm having a very hard time following the train of thought here.

> Imagine if your company had not been an open source company but rather a closed source company. Instead of being able to bootstrap you'd have to start with getting a large bunch of money on an idea that already has an open source equivalent.

Why does starting with the stronger revenue model mean you need to start with getting a large bunch of money rather than bootstrapping? AFAIK software with a revenue-generating license costs the same to develop as free software.

> Sorry to hear you didn't make it, but your work will live on now, probably forever or as a part of some other offering, it may be small consolation to you but to me it proves the system worked.

Why would anyone want to participate in a system whose goals prioritize strangers getting gratis database software over our families being able to eat? I'm all for generosity, but I'm also for looking after yourself and your dependents.


> Why does starting with the stronger revenue model mean you need to start with getting a large bunch of money rather than bootstrapping?

Because enterprise sales are hard. Open source can get in through the back door, but closed source has to beat a path through the front door and that costs money, lots of it.

> Why would anyone want to participate in a system whose goals prioritize strangers getting gratis database software over our families being able to eat?

It's not about your families being able to eat or not. You can find plenty of middle ground, or you can decide to contribute to open source just to scratch your itch or fix your bug. That's why it works well for some kinds of software but not for all kinds of software. It works well for:

- best of breed infrastructure projects (runners up have the same issues they have in commerce)

- libraries

- frameworks

It does not work well for things where bespoke software is the norm or where the customer wants to have their own IP. For those situations traditional closed source software works better. That's why you're going to have a hard time finding a quality CAD/CAM system using open source that is tightly integrated and polished.

There are middle grounds: Blender famously used the ransom model to become open source, entire empires have been built on service companies around open source and some people made pretty good money selling their open source projects to the highest bidder (glusterfs, mysql and a whole raft of others).

So nobody is forcing you to give your work to others so your families can't eat, it's a free choice. I decided very specifically not to contribute to open source because I wanted my family to eat, though I do file the occasional bug report/patch (and the way in which those are treated is not very encouraging to do more of it). But at the same time I'm grateful for everybody that did contribute to open source, they enabled the web as we know it to a very large extent and to discard or devalue that is a huge mistake.


Red Hat? Or what about Facebook or Google -- open source is pretty central to their business model.


Facebook and Google don't care about open source... Their desire is to get people to use their search/system. That's all they care about, regardless of what pretty bow they wrap it up in.

Let's look at Google...

Android - Get people to use Google products on mobile. Adsense - Add ads to your site. Analytics - Track how users use stuff to provide better ads. Gmail - Track your email to serve you better ads. Google Search - Serve you ads.

Sure they have Dart, Angular, etc which they developed for use internally and then released to the public. But do you honestly think that has anything to do with their business model? They hired smart people, and smart people design things. Those people then released them as open source. But do you honestly believe if Google was to start (theoretically) having money issues, those products would not be the first to go?


It everything to do with their business model. Joel Spolsky called it commoditizing your complement (google it).


I'd expect some of the bigger R&D moonshots to go first - Loon, Wing, etc. The open source contributions are good PR with the software development community.


Red Hat, by the way, deliberately obscured their kernel code in order to stop Oracle from simply providing support for Red Hat code. Probably the correct business move, but also probably against the spirit of FOSS.

http://www.h-online.com/open/news/item/Controversy-surrounds...


Google? Facebook? Are you kidding? These companies have lots of great open source projects. But the core of their business is certainly not open.

Try to find Goog's SERP ranking algorithm on GitHub. Or their Adwords scoring/pricing code. What about Google Doc's text editor? Also, most Google apps on Android are closed.


Two companies that take from the community to save money and then don't give back anything even remotely related to their business model.


> don't give back anything even remotely related to their business model.

Why should they? It would be nice if they did but they'd be directly enabling their competition. That's not what open source is all about as far as I understand it.


Indeed. The "Open Source" aspects of those companies are more to do with trying to diminish the value of their competitors.

It's a case of "Everything I do is valuable, but everything you do should be free."


I don't know if Mr. Stallman is exactly a socialist, but he's not pro-capitalism either. So I don't think he really concerns himself with actually getting people to pay software developers. To him, that's an afterthought.

This makes him a revolutionary. Unfortunately, when the mainstream absorbs the revolution, what does the revolutionary do? Basically try to get them to adopt the ideas that aren't very good because all the good ones have been taken.

The best thing we could do is just say he was a great contributor to software, and ignore whatever drivel he writes now, much like we do with ESR.


As of the mid-1980s or so he believed that the government should pay programmers to do their thing.

I seem to remember he supported Hugo Chávez.


>So I don't think he really concerns himself with actually getting people to pay software developers. To him, that's an afterthought.

This is a strawman argument as Stallman does not advocate this at all. Stallman encourages for programmers to get paid for programming work and to sell software at any price that the customer will burden. Stallman is happy for everybody to do business and profit when the business does not hurt people. In the business model of selling proprietary software and selling SAAS, users are harmed of four specific freedoms of free software so Stallman will condemn any business (or any other non-business organization) that does this.


If you ever attribute "open source software" to Stallman, you are confused. Stallman wants nothing to do with the idea of OSS, Stallman is advocating for a different idea. Stallman is advocating for the ethical solution to the inherent evil cause by proprietary software. People who have a business model by distributing proprietary software are contributing to this inherent evil. All proprietary software is evil because it causes various social and political problems that result in society who live helpless and socially divided. People who write and distribute proprietary software wield an unjust power over the users who choose to submit to the policy of proprietary software. The ethical solution to this political problem is free software; i.e. software that respects the users' freedom.


> While open source is great, its a terrible business model.

I don't think that RMS cares about business models: he argues that proprietary software is unethical, not that it's bad business.

One could probably make a decent sum of money as a hit man, but it would be unethical.

Open source advocates argue pragmatically that open source software can be better (many eyes make all bugs shallow) or that it can be a competitive advantage to comnmoditise one's complements; free software advocates don't necessarily disagree, but don't particular care: they believe that proprietary software is fundamentally wrong.

You may dislike it, but do you disagree? Can you refute the plethora of ethical arguments RMS has been making over the last several decades?


> While open source is great, its a terrible business model.

I think this is a necessary trade-off. Great business models often lead to monopoly and stagnation.


Stallmans ideas on economics make sense when you factor in his $1m grant from the MacArthur foundation, another $1m from the Takeda foundation, and tenure at MIT. If you have all that sure, give software away for free!


I don't agree with many of Stallman's positions and I think that people should be free to create and profit from proprietary software if they want, but let's try to be rigorous.

I don't think Stallman has tenure (or any position) at MIT. Wikipedia says simply: "In February 1984, Stallman quit his job at MIT to work full-time on the GNU project, which he had announced in September 1983."

The Takeda foundation award was about $250K: http://lists.gnu.org/archive/html/info-gnu/2001-12/msg00002....

The MacArthur fellowship was awarded in 1990, about 6 years after Stallman decided to work full time as a free software activist. I don't think it's fair to claim that he would behave any differently without these awards.


Stallman got $240k from MacArthur in 1990. Pretty sure he's burned through that by now. The Takeda award in 2001 was split three ways so his take was at most $300k.


The man lives a life right about one step up from a monk. $1m spread out over a lifetime of work on behalf of all of us doesn't add up to much budget per day. If he lived by the rules of some of the haters in this thread he'd be a lot richer. Those grants were because some people recognized the importance of his work and would rather have him continue on this path than to go work for some company to support himself. It seems to have worked out as planned.


I've heard speeches by Stallman where he mentions he has enough money that he no longer has to work, but as others have already said (1) he started working full time on GNU before he received that money (and supported himself by selling free software and prioritizing requests by people who sent him money), and (2) he doesn't live an incredibly opulent life, even factoring in the free travel.


It doesn't take long for "free" travel to become more of a burden than a benefit, even if you don't consider the hassles of going through customs, immigration, and security lines at airports.


Did you mean weasel?


Whether you agree with his stated goals/values or not, Stallman does us all a service by elucidating these issues. Because code and the constructs he talks about are "virtual" entities, it isn't readily apparent to most people what the actual consequences are of where and how and why things are done the way they are done. People often think these details don't matter, but they do. They think they don't matter largely because they don't understand how x thing leads to y consequence. Stallman does understand those relationships.

I myself struggle with the question of how I can put something out into the world such that it is freely available to theoretically anyone while also finding a way to pay my own bills. Writing code is not a big part of what I want to do. It is, in fact, probably a fairly small part of what I want to do. But it is a similar problem space. And few other people are writing anything that elucidates for me the details of why this stuff matters, how it matters, what the exact consequences are and so on. I find that very helpful in thinking through my own problem space.

So I will just briefly thank him here (not that I expect him to read this). I read a biography about him some months ago and that was a real step forward for me in my thinking through some of my own challenges. Thank you, Mr. Stallman.


Funny, I've been listening to the podcast right now:

http://bootstrapped.fm/bootstrapped-episode-35-hate-the-saas...


Stallman is basically saying that it's unethical to outsource a software function that it's possible to run on-premises, which is just... a losing argument. Any given user can decide whether the (almost purely abstract) "freedom" of running free software one's own server outweighs the convenience of, say, not having to administer a mail server. I'm not sure what free software buys you versus hosted software with good data export features.


He's saying it has ethical implications.

Making that decision in an informed way starts with having some idea of what you're giving up.

In the case of SaaSS, you're often not sure what you're giving up precisely because the operation of the server is so opaque to you. E.g. is the server copying all your email to a hostile foreign government? The operator /says/ it isn't.

Indeed, it can be a bit abstract-- but many other important tradeoffs we weigh also involve abstract implications or effects at a distance.


I have huge respect for Stallman and I understand his argument, but he's still stuck in a 1980s mentality where everyone on a computer had to have some level of expertise with actually running software.

The fact is that many people today are incapable of even installing an application on a proprietary desktop OS, much less utilizing the freedom of software they control. 10 years ago I was building websites for people at $1000-$5000 a pop, all with open source software. They have all the benefits of free software available to them, but you know what they don't have? Anyone to maintain their software for a reasonable price. I've been directing them to SaaS providers for a long time because frankly it makes no sense to pay me 100 times as much to a software professional in order to realize this freedom.

Obviously Stallman would say that there's no inherent reason that you can't have a reasonably priced service based on free software, just like there's no reason you can't charge for shrinkwrapped free software. However the mechanics and cost savings of SaaS make this much much more difficult to conceive, and frankly I don't see how it will ever make sense for the laymen who make up the vast vast majority of computer users today.

Stallman is a gem of the computing world, and I would never say anything bad about his ideology, but the primary battle that needs to be fought today is about data ownership, not software freedom. The latter still matters, but only for the computing elites (ie. programmers, sysadmins, etc), the former is what is increasingly going to affect everyone going forward.


Yes.

Arguing that paying someone to run the software for you is unethical is like arguing that paying for a well-prepared meal in a restaurant is unethical. You should source all the ingredients and prepare them in your own kitchen.

Except we're paying for the expertise of the chef. In the case of SaaS we're paying for not maintaining our own data center, system administration costs, operations costs, monitoring and security.

But the chef might not use clean food! People will get sick, the chef's reputation will suffer, and he'll go out of business.

As you say, the question is data ownership. Turning that toward the analogy, how do we verify data security such that reputation is affected? Make ethical behavior valuable (reputation) and businesses will behave ethically.


Freedom means having control over your own life. If you use a program to carry out activities in your life, your freedom depends on your having control over the program. Nonfree software encourages users to surrender control over their computing to someone else and this is the exact same situation in SAAS. SAAS is not controlled by the user but some other person. This is unethical because this causes an unjust form of power over the user. Users who partake in SAAS or proprietary software do not get all four freedoms of free software that all users need to have freedom. Now if you feel that you don't need all four freedoms of free software, then so be it but beware, your computing will not belong to your hands but it will belong to the hands of other people (who don't necessarily have your best interest in mind).

In a restaurant, there is no unjust power over the customer. In a restaurant, a customer can order some dishes and order the dishes to be prepared a particular way. When the customer gets the meal, the customer is free to do things such as add more things to the food, take the food away for later eating or share the food with friends or even resell the food to anybody. In the case of SAAS, similar freedoms are not available to the user. Users are forbidden to study and modify how the service operates, and users are forbidden to share the computing service with other people. Control over the service belongs to the SAAS company and not the user.


Way to repeat the mantra without engaging in the actual argument at all.


I repeat the mantra because I thought it engaged the ideas of the ethics of SAAS and in food service. Would you care to present a counterargument to what I've presented.


If I understand your position, and that of the FSF, rightly then you believe it is both unethical to provide, and unethical to use hosted software that does not carry the AGPL.

I would submit that a SaaS provider could not ethically allow modifications to their running software. So let's exclude that from the discussion.

What if a provider only ran software licensed with the AGPL? It wouldn't fix anything. The license requires accessing a download of the source. How can a customer verify the version of the software is the same as the version of the download, i.e. check for a violation of the license? Short of having access to the operating system on the servers, the customer cannot. No reasonable service provider would allow such access, and no reasonable customer would accept that other customers, including, possibly, competitors, had such access.

You can push the problem around all you like (every customer has their own server with OS-level access, but what about the DB?). It will always end up being cost prohibitive to run a service.

Also, under the AGPL the point is for any user of the system to be able to host and run their own instance. Meaning that any innovations must be given away. Conversely, if the software can only run in the context of the provider's data store, the problem of data ownership is not resolved.

Do I want the keys to the OS on my home computer. Darn right. At work, do I want the keys to Amazon's virtualization layer? Heck no, I don't want those headaches. It's what I'm paying them for.

Stallman's position also fails to address the ethics of contract law. What makes Free Software ethics superior to ethics of contracts?


"The ethics of contracts" Gah. Ugh. Wha.

Anyway, to be clear: Stallman actually says that breaking your promise, i.e. breaking a contract is not cool, so you shouldn't ever accept a contract that requires you to give up essential freedoms. He does not advocate breaking contracts, he argues about which contract terms are ethical or unethical. He doesn't say break the unethical ones, he says don't accept them in the first place.

And you could run hosted software that does something that involves networking fundamentally, such as a chat service, and it would not be SaaSS. And you could run any software under a permissive license and still provide the code as though it were AGPL. AGPL isn't a requirement for being ethical, it just helps stop people from being unethical (but they could choose to be ethical regardless).


> but he's still stuck in a 1980s mentality where everyone on a computer had to have some level of expertise with actually running software

I don't think he is: The challenge for excellent free software today is to build software which can be used maintenance free (and, of course, be compatible with maintenance if the user wants to provide some).

Of course, it's _easer_ to build software that runs remotely and can be fixed silently for the user at any time, than software which has to be complete and correct when it goes out the door...

Freedom that costs to much can't deliver on its promise. The response shouldn't be to abandon improved freedom as a goal, but to apply our intellect to lowering the cost.


I was very careful in the way I worded my argument to avoid this strawman rebuttal (see the part about computing elites).

Of course you are right that we should rise to the challenge of shipping excellent free software, but experience tells me that it doesn't matter how good we get at this, we will still be undone by the transient nature of software stacks. Patches will be necessary unless people never upgrade, which of course they will because sooner or later they will desire new features or it's necessitated by security. At best we can asymptotically approach the amortized cost of having someone else manage your software for you, and even that is dreamland until free OSes finds a way to approach the UX provided by Apple/Microsoft/Google.

You're welcome to devote your life to proving me wrong, but I'm not holding my breath.


It's a little more than that. As I understand it, he's OK with people choosing to do business with a company along the lines of Facebook or Twitter as long as the customers have the freedom to get all the source code for all relevant web services (and, I believe, the user's own data) if desired. He understands why you might pay to have somebody do something you aren't willing to do yourself, but he believes you should always have the ability to get and modify the source code for all software you use, even if you aren't using it on your own computer.


No, he's bascially saying your SaaS provider owns your data in a very specific way. If you are to compete with Salesforce, would you really keep your customer data in their CRM?


"I'm not sure what free software buys you versus hosted software with good data export features."

A competitive market when you're looking to see that piece of software extended or adapted.


OR you choose to delegate the burden of running and maintaining this software to someone that will do it in a more cost-effective way than you ever could.


Or could close their "beta" you were depending on without notice, could lose your data, could leak it, could give unexplainable corrupt results and leave you looking like a fraud, etc.

There are a lot of opportunities to trade off short term ease for tail risk, and thats a bit hazardous. RMS would probably argue that while you should have the freedom to do such a thing, you really shouldn't both because of the harms to you not being justified if you don't overemphasize the near term, and also because of systemic effects like losing solidarity with other people who would prefer to make another decision().

[e.g. many people who choose to run their own small mail filters find them regularly invisibly black holded by major mail services due to overactive spamfiltering.]


> Or could close their "beta" you were depending on without notice, could lose your data, could leak it, could give unexplainable corrupt results and leave you looking like a fraud, etc.

I don't have to use SaaS to have these results. I've seen in-house efforts with the same risks. The difference, in my mind, is that with SaaS, the provider has some significant incentives to do a good job. The software is their specialty, and the developer will lose money if you stop using it because their software ends up costing you money. There's much less risk of internal company politics saddling you with a useless or dangerous system. On the contrary, I've seen "self-hosted" company projects promised in response to proposals to use SaaS, and they were usually promised to achieve some political goal rather than being a serious attempt to compete. Because it's an internal project which doesn't generate revenue, it's very easy for the company to promise something and then not deliver, as there's no money tied to it.

Having seen this multiple times, I'm much more inclined to use SaaS. Tail risks don't cost nearly as much money over the mid term as the risk of company politics derailing an otherwise laudable goal.


SaaS don't have to be "beta". And of course there are many factors to take into account.


I admire Stallman. He is someone who really made a difference. That said, I find myself slightly disagreeing with him on web services:

It seems like in most cases the criticism of web services mostly are in loss of privacy and digital security. On the other hand to me the point of the (A)GPL is ensuring that computer users have the right to inspect and modify the software running on their own systems.

I understand that there is some overlap: using free software is likely (I think) to increase one's privacy and digital security.


To be honest, this is one of the results of accepted and encouraged copyright infringement over the past 15 years.

By taking away the rights of the copyright holders (IE: copying software freely without permission), they were forced to come up with something that can't be copied: software-as-a-service.


I love the part where he says that "Cloud computing" = "Be a sucker". LOL


The ethics of Stallman's arguments don't matter in the least, and they never have. He's like a guy in 1905 trying to get people to keep using horses. He's been on the wrong side of history for so long that you can no longer even detect that there was a history to be on the wrong side of: he just floats out there in his own strange little bubble of ideals. You have to respect his dedication to those ideas, but there isn't much relevancy left.


He's been on the right side of history and the rest of us have been on the wrong side. I think the Snowden leaks solidify that view. After Microsoft Windows how could you disagree with him on concerns of proprietary software lock-in? And he's been spot-on as far as privacy goes: worried about the cloud long before anyone else, and concerned about cell-phone surveillance before it was hip. The mere existence of GNU licenses has done enormous good for the world, and Linux is proof. Linux didn't take off because of his ethics, so you're right in that regard, but his ethics are responsible for the things that people like about free software.

And this being hacker news, you have to admire the great hack that is the GPL.


History says that despite the fact that these "wrongs" have taken place, that people largely do not care. So, what does it mean to be "wrong"? Likewise, if a tree falls in the forest and nobody is there...does it really matter?

I could also argue that Linux is generally holding the world back. Just like wrong and right...this whole thing is a matter of opinion and point of view. There are simply no absolutes to measure against.


He's like a guy in 1905 trying to get people to keep using horses.

Or perhaps he's the guy in 1905 trying to get people to keep using electric cars. In 120 years time it might turn out that he was onto something all along.


What do you mean by the "wrong" side of history? I only see one or two reasonable arguments that can be made against Stallman -- he might be out of touch, he definitely values personal freedom over convenience... But it's a bit early to cast a value judgement saying he's on the wrong side of history.

I see him as someone who values things differently than I do, but I also could see a future 150 years down the road where people bemoan and wail, "why didn't we listen to Stallman".


And the answer will be "because he was unable to make himself listenable".


Well certainly that's part of it. But what I really mean is that he is like Edison on the subject of DC. Right on the big picture, but obsessed with his own ideal of the implementation.



I wonder if this is an argument spawned of fear (that what he says is true, that it is 100% accurate and it is that bad), or is there really something that lets you believe that he's wrong.

Maybe we didn't see enough bullshit put into proprietary programs? Not enough backdoors? Not enough DRM maybe?

This may be an unpopular opinion but it certainly is a valid one. I tend to side with it.


I really, really don't like Stallman's zealotry, but you are dead wrong.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: