I hate that this stuff hits HN front page. It worries me that we're developing a culture where I as an individual must adhere to some moral framework when writing code, lest I violate some social open source norms. To me, this is deeply poisonous to the spirit of open source.
This is not 100% correct. A large part of the format is standardized in ECMA-376 and ISO/IEC 29500, but many details are implementation-dependent. Many of those details are covered under other specifications like [MS-DOCX] that are covered by a covenant not to sue, but other details are not covered and are therefore in murky legal territory.
[MS-DOCX] https://docs.microsoft.com/en-us/openspecs/office_standards/...
Every culture or community has norms, and many of those norms generalize to universal moral principles, like: participate fairly in a community, not exploit it.
"Spirit of Open Source" isn't something defined entirely in the phrase of "open source". It's an idea that gets defeated by actions of some larger players today, hence the outrage (and an opportunity to remind people yet again, that RMS was right about this).
I don't care if Amazon or Facebook gets rich off of it. I don't care if Donald Trump or Hillary Clinton get elected based on it. I don't care if the Russians use it. It's a tool, and like a hammer can be used for good or ill, and I disclaim all responsibility for what stupid people do with it. I don't care if somebody forks it and 99% of people start using the fork instead of my original. All I care is that I got what I wanted out of it, I hope perhaps that some other people use it so that they can help contribute and maintain it, and perhaps I'm hoping for a tiny bit of respect and recognition. My expectations are grounded and realistic: very few people will likely use it; I don't have a hope in hell of either making money off of it or of changing the world because of it. And I'm completely satisfied with that. In fact I'm more than satisfied, I feel wonderful because millions of other people are doing the same things with their software and just about anything I could possibly want is out there somewhere. Hence a sense of community and of good will.
Others folks (such as the author of the article) have different "spirits" most of which I find distasteful, including those who have a stick up their arse about big orporations and want to add restrictions about commercial use or about derivative works, those who think their software is God's gift to the world and they thus deserve something for it, those who want to control what others are allowed to do, those who want to change the basic ways that the world works, and those who come from a place of greed and regret. I don't share in any of that outrage, not even a little bit, and so this article (to me at least) is complete rubbish.
People do often do open source to build a reputation, or to be able to push their vision, and both of those motivations should be encouraged. Furthermore, the attitude of "I built the technology and it's not my problem if people use it maliciously" is dangerous.
Why can’t or shouldn’t the “Spirit of Open Source” be able to include exactly the things that you complain about? I would love to hear your grounding for your position :)
We can maximize user freedom by having developers put code into a commons, reject the freedom-to-restrict-users, and deny other developers the ability to enclose that commons in those sort of restrictions (ala copyleft).
This has an even more broadly applicable analogy, Popper's "tolerating intolerance" and related paradoxes.[0]
Another way of looking at this is through the frame of positive and negative freedoms[1][2] (often described as "freedom to" vs. "freedom from"). It is often not possible to maximize both. For example, when the goal is maximizing human freedoms for the most people, it is not unreasonable to disallow making any people un-free, which includes denying people the freedom to sell themselves into indentured servitude.
[0] https://plato.stanford.edu/entries/toleration/#ConTolPar
But I think in practice both open source and free software are hard to monitise. Often the open source software is a marketing platform for a managed service ala “we made it were the experts let us host it for you”
Btw. I'm not comparing open- vs. closed-source but open-source-software vs. free-software.
I agree Open Source & Non-Free (as per R.M.S.) would be much more commercially useful than Free in a lot of circumstances, because if I pay $1000 for some Free as in Speech software I can then go and sell it to your competitors for $10.
The only way I can think that this is not business-destroying if said software is so tricky to set up that it only makes sense to buy it from the original vendor who will set it up for you in the price - in which case that probably breaks the spirit of free software.
The Free Software movement on the other hand created licenses which try to prevent the kind of behavior and thus are protecting the open software going forward.
[1] https://www.mongodb.com/licensing/server-side-public-license...
Basically, there is no such thing as an "Open Source API". APIs are not software, and we've already seen the damage that treating APIs as software (for copyright purposes) can do.
The proper abstraction for APIs (and protocols, and file-formats, etc.) is the standard, which ideally admits the possibility of multiple interoperable implementations, both proprietary and open source (patents being the joker in the deck, unfortunately).