Open source means surrendering your monopoly over commercial exploitation
drewdevault.com
drewdevault.com
https://www.joelonsoftware.com/2002/06/12/strategy-letter-v/
All of those require motivated contributors, either from the community or from the developer's in-house team.
What we might see play out here is competition over the market's perception of different distributions of the software, and attempts to build contributor communities that are able to back up each side's claims by supplying genuine value and improvements.
Marketing and perception management have in recent history often been correlated somewhat with the size of each competitor's budget.
This article is arguing against monopolization of commercial exploitation because more value is created when tools are available freely. Cool. I have to read this article in the context of Elastics recent license change, which seems to be in response to “monopolistic” practices by amazon. I don’t know if the word “monopoly” is exactly the right one, but they seem to be using their size and market share to snowball competitive advantage in a way that doesn’t necessarily add value for humanity. I’d rather Elastic hoover up the cloud money than Amazon, precisely because I think we’re better off with less centralized power.
So maybe my objection is that this article seems to me to be dogmatically asserting some principles, and goring it’s own ox, ie harming the thing that those principles are attempting to protect.
Admittedly this might be a misread/ignorance on my part, and maybe I’m triggered by the tone of the article, which reads quite strident to me. An important discussion, though, and glad that devault wrote it.
* Open Source is cool
* Open Source means everyone can use your stuff and by releasing you kinda gave up your right to complain about that - it's the point of Open Source that others can use your stuff
* if you want Open Source, but make sure the others who use your stuff also share your stuff, maybe use GPL, which designed for that?
I do really feel for projects like elastic - but also, they all used the "wrong" license.
> I do really feel for projects like elastic - but also, they all used the "wrong" license.
It is worth noting that SSPL which the discussion revolves around originates from MongoDB which originally was AGPL. So they started with "right" license and still ended up switching.
Part of the blame falls on AGPL not being clear enough, which led Mongo to overcorrect when creating SSPL.
No, AGPL (and GPL before it) is working as intended; the issue for Mongo and Elastic is that it never cared about how you're making money, and that's very much by design. I don't see SSPL as improving the freedom of the users of software, so I don't really see a fault in (A)GPL
If we only allow a super narrow definition of open source to be considered open source, we are doing a disservice to the software community at large.
Doesn’t seem to be true.
> Shay Banon released the first version of Elasticsearch in February 2010.
> Elastic NV was founded in 2012 to provide commercial services and products around Elasticsearch and related software.
As I noted in a comment elsewhere on this article, if the corporate landscape now looked more like it did 30 years ago, a good open source project with a permissive license would be likely to enable a wide variety of competitive small-to-medium companies to do cool things. Today, by contrast, even if there are small-to-medium companies who try to pick it up and do a cool thing with it, they're not trying to compete with other companies in the same weight class: they have to compete with Amazon, a 900-pound gorilla who just muscles out or outright eats its competition.
So I don't think a fair takeaway here is, "It feels like permissive open source should be better, but because massive conglomerates like Amazon can make disproportionate use of that to hurt everyone else, restrictive licenses are better on principle."
I think it's much closer to, "It feels like permissive open source should be better, but because massive conglomerates like Amazon can make disproportionate use of that to hurt everyone else, we should find ways to break the disproportionate power of massive conglomerates."
First issue and foremost, a copyright license should be the terms under which a author feel comfortable that other people use their work. In term of open source and free software, those terms are usually formed in the context of those communities.
The second issue is the claim that FOSS licenses exist for the express purpose of breaking the artificial monopoly of intellectual property. This is a common discussed topic around GPL, and here the authors of GPL has said some key details that I find important. A copyright license is a strategy to achieve the goals of the author and community, rather than being an end in it self. The strategy that produce the best outcome is the correct license. Sometimes that means the best license is the surrender of the concept of intellectual property, and in other cases it can be the embrace of intellectual property as a tool to enforce rules which result in outcomes of most freedom for everyone.
Do you have any references for that idiom? I'm finding surprisingly little with Google, except for a handful of hits that confirm it's not a neologism.
How can you argue with a straight face that there is no value to humanity? If I have a project and need application logging at scale and I pay AWS for managed elasticsearch, obviously that’s providing me value - that’s why I’m paying for it.
For lack of a better word you seem to have this marxist/communist mentality where you view voluntary free market transactions as somehow not being an example of mutual benefit (the underlying principle of free trade). Isn’t it self-evident that when I buy an iphone or buy food at the grocery store, that I am gaining value?
—-
BTW, you seem to also ironically confuse the concept of monopoly with the concept of free market competition. Being a good competitor, like AWS Elasticsearch, is not a monopoly. Indeed it is Elastic who is trying to change their license in order to monopolize this market.
As much as I dislike AWS's heft (which I think allows it to muscle in on spaces it isn't the best at, and people will happily choose worse products because they're "backed" by AWS), I also think there's a lot of value in the F/OSS world to be exploited, and I'd like to do the exploiting someday. I'll leave it to others on whether it's right to draw the line at size of corporation, but I'd be just as "in the wrong" as AWS is.
There's no reason both the community and the corporate interests trying to profit (entrepreneurs who want to offer hosted versions included) can't have a symbiotic rather than parasitic relationship -- all it takes is returning some of the revenue to the appropriate open source projects and supporting them. Postgres and the related companies have been making it work for a long time now. I think part of what's exacerbating this parasitic relationship might be the VC model -- if you make some open-core software, take a bunch of VC money (or don't and simply overstretch your reach), and now need to find some hypergrowth (tm) to keep the house of cards the right side up, maybe it makes more sense that the relationship would be more parasitic than symbiotic.
A lot of newer developers are about to find out the difference between F/OSS and shareware.
Don't _exploit_ the generosity of other people. Use it and contribute back to it. Framing it as something to exploit really emphasizes the need for the GPL.
The way I see it in the way my grandparent meant it, exploitation is a capitalistic word and frame/narrative. For example, all companies are exploiting employees (by gaining a profit on them) and certain business opportunities in some shape or form. That doesn't mean it's necessarily bad as "giving back" might be part of that exploitation. Many businesses have incentives to keep the exploitation sustainable.
If you have an issue with this, then you have an issue with capitalism, IMO. And that's fine, but I wouldn't frame it as having an issue against exploitation.
If you can't hear the issue with your language, go tell your reports that you've decided to exploit them.
Definition of exploit: transitive verb
1: to make productive use of : UTILIZE
exploiting your talents
exploit your opponent's weakness
2 : to make use of meanly or unfairly for one's own advantage, exploiting migrant farm workers
The article is about definition 2 folks.
The word "lead" also has several definitions, among them: the metal, and the thing you use to walk your dog. A dog needn't be involved in the former, nor the metal in the latter.
Perhaps you're confused because of the order the comments appear in? You might have to see the time stamps, and track the numerous replies I made in the tree of comments.
Communication is key!
I did not disparage F/OSS, the exploitation was about what is happening right now and will continue to happen -- corporations (and have started to realize that they can leverage F/OSS for their own ends, whether it's releasing open core stuff, or using CDDLs and getting people to sign over commits (which are IP), or making the code permissively licensed but controlling the development through other means.
I also believe F/OSS is a beautiful thing, which is why I try to look at what is happening with it optimistically and cynically.
P.S. Example of "other means" -- I personally think this is the model that Kubernetes and some other large single-company-backed F/OSS projects is doing, they've essentially built bureaucracy which replicates the internal politics you'd find at a large company, and I think it'd be quite difficult for a regular contributor, no matter how ardent, to get a "board seat" if not backed by some large company. Kubernetes was a better tool than others, but Google also spent a lot of money to propel it forward.
I'm simply using the least charitable language to describe what I'd like to do (and what AWS has already done) -- there's no need to sugar coat. If someone (normally a group of people) has worked hard to create some software, and released this software as open source, and I take to hosting it for profit, I am exploiting their efforts without a doubt if only in the most literal definition-driven sense.
As one would "exploit" natural resources, I would be taking the product of their effort and used it to generate profit. Whether they were kind or noble has nothing to do with it, though of course I agree that F/OSS is one of (if not the) largest and kindest sharing of knowledge in human history. I owe my career to F/OSS and the community that powers it (and of course a few schools and teachers along the way), I haven't forgotten.
What I was trying to point out is that it's relatively easy for me to make a decision to give back 10/20/30+% of revenue (never take % shares of profit, see the movie industry) as a bootstrapper, where companies who are VC funded may not be able to make such a choice easily because they have other capitalists to answer to.
> Don't _exploit_ the generosity of other people. Use it and contribute back to it. Framing it as something to exploit really emphasizes the need for the GPL.
This is very close to my point -- if you don't want this to happen (no matter what someone calls it), pick the appropriate license -- BSSL or a similar license. Do not depend on the kindness of strangers, it's not a good long term strategy -- the GPL was invented to give that ideology teeth and it's been outrageously successful.
Sentry, a well known and liked player in the error reporting space does so[0]. People use Sentry, and contribute to it, and love it. People who think picking GPL licenses will offer the same protections are somewhat misguided, the closes you can get is AGPLv3 which to be honest isn't even right, because hosting unmodified versions seemed to be permitted.
I call it exploitation because that is what you have to assume that companies (which exist for a very specific reason in just about every economy in the world) will almost certainly skew in the direction of exploitation, they are basically duty-bound to do so.
[0]: https://github.com/getsentry/sentry/blob/master/LICENSE
AWS is a company made up of human beings, with the capacity to choose to do good. If they do things that we would consider to be immoral, we can absolutely blame and judge them for that, regardless of whether it's "what they do".
However, there has been a perspectives of seeing organizations as a form of AI (I read it on HN somewhere), and if you look at it from that perspective the ethics become bureaucratic which opens a whole can of worms of what that means :)
I was wrong to say that you can't blame Amazon for doing what they do -- what I should have said was that people shouldn't be "surprised". Work yourself into a fit over it if you want, but the next time it happens, you shouldn't be surprised.
My point was meant to be that sharks do shark things, and companies that are Amazon's size do things that companies at Amazon's size would do. Both happenings should not illicit much surprise.
> AWS is a company made up of human beings, with the capacity to choose to do good. If they do things that we would consider to be immoral, we can absolutely blame and judge them for that, regardless of whether it's "what they do".
This is great in theory, but there are such things as shareholders, fiduciary duty, and binding financial covenants. Companies have a capacity to choose to do good, but they have a stronger duty to produce profit for stakeholders. Companies can be ethical, but there is no reason to believe that they will be unless it's written into their bylaws, or they are structured differently from the outset (ex. Mozilla Foundation).
Another article hit the front page from 2019 about Google vetoing the power of a privacy-focused W3C working group to prevent technical changes that would hurt privacy. This is another instance -- you can blame and gnash your teeth all you want, but Google is going to do what Google does, and that's offer technological advancement and ease at the cost of privacy (sometimes) if it helps them sell more/more expensive ads.
In Social Architecture, Peter Hintjens (ZeroMQ) has another way of putting it. Paraphrased he says that:
Open sourcing a particular product can be a "market breaker". Imagine someone all of a sudden open sourced a great Photoshop alternative with a nice community. Suddenly, the for-profit market would collapse as photo editing became free over night. That's open source eating software.
On the other hand, (1) licensing your software under the GPL family without asking for contributor licensing agreements and by (2) claiming your trademark (in his case: ZeroMQ) is the control mechanism that defends your product against exploitation.
(1) GPL as it allows to create a piece of software that has a huge number of owners and hence becomes impossible to capture by anyone. And also because GPL may force an exploiter to contribute back (APGL).
(2) Trademarks so that nobody can come along and offer a "ZeroMQ service" without your consent.
Post Script:
I love Peter's argument for choosing GPL (1), which is that it creates a huge number of owners for the software. Imagine being an infrequent ZeroMQ contributor and now AWS comes along and hosts your product. Then, essentially, they're messing with YOUR intellectual property. I think this dimension is often overlooked. I'd love to see a contributor class action lawsuit one day :D
Yeah, "everyone" but the original author, in most cases. That's usually how things go when you give something for free. Also, "wealth" is very broadly defined here. We're all "rich" with free software, yes, but still can't buy a hotdog with all that "wealth".
But yeah, the total wealth generated for the software's author personally is probably minuscule.
The competition argument fails to take into account significant business overheads that allow the largest of corps to compete only among themselves.
In the end, consumers will decide which of those approaches results in the better value for them and reward that company with more of their business. And regardless of whether that choice results in a cheaper hotdog, a tastier one, or just a more convenient location to buy it from, they're better off (wealthier) for it.
"patent trolling" is a classic example of how the market is not always consumer friendly - the approach of suing your competitors is intended to prevent consumers ever having the choice of doing business with them.
Sure they do; they can choose to visit a different cinema, or to stop visiting the cinema entirely. They probably won't, but that's not because they don't have a choice, but because "this cinema doesn't stock the type of hot dogs I want" is a rather trivial concern when it comes to choosing what cinema to visit.
> "patent trolling" is a classic example of how the market is not always consumer friendly
I think it's rather unfair to use government intervention (the patent system) as an example of a market failure.
In general, anytime there's a large centralized authority controlling what the market is allowed to do (whether that authority be a government or a corporate monopoly) there will be inefficiencies.
The author of this post praises free software, but makes his money from providing a service. That's great, and I like free software as a user (who doesn't), but the post misses a bunch of elephants in the room.
Perhaps not but you can do almost anything imaginable with information using that "wealth". Using our collective wealth, you could run all sorts of analysis on if or when you should eat that hotdog. Just because the wealth doesn't deliver you to a utopia doesn't mean it is worthless.
The issue is that the pyramid is upside down. Everyone should receive a basic universal income that allows the freedom to give away value to society without starving.
> In June 2018, Elastic filed for an initial public offering with an estimated valuation of between 1.5 and 3 billion dollars.
https://en.wikipedia.org/wiki/Elasticsearch
> Schuurman is Elastic’s biggest shareholder with a 19 percent stake valued at $1.1 billion, according to the Bloomberg Billionaires Index. Banon, the chief executive officer, owns 12 percent of the Mountain View, California-based company.
https://finance.yahoo.com/news/elastic-software-founder-doub...
This would all be fine if we lived in a socialist world, but we don’t. My lawyer still charges me $200 per hour for a few fake hours before giving me the template document he has on his hard drive. My accountant operates very much the same. In this context it feels like more open source just makes the world more unfair.
What are the best alternatives to this model? Isn’t there something in the Source Available direction that can make sense? We live in a very different world compared to 1989 when the GPL was first published.
I hate to make a really obvious point, but if this seems like a bad deal to you, then .. don't take it? While there's lots of room for debate over "I need this job because I need the money, even though the job is bad", in this case it's very simple: there's no money. So you don't have to take the job.
The modal open source project receives no money. Then there's a long tail of projects that get just enough donations to keep going, a few ones that have secured a commercial sponsor, and then one or two big enough to have a "foundation" (Mozilla, Apache).
> We live in a very different world compared to 1989 when the GPL was first published
Could you articulate which differences you feel are relevant please?
Since 1989, we have seen a truly staggering wave of mergers, buyouts, and corporate consolidations of all kinds, creating so many more mega-conglomerates (like Alphabet, the big cable companies, etc) than we had before.
So if you wrote a piece of (good) open source code in 1989, chances were not too bad that it would get picked up and used competitively by a wide range of small-to-medium companies. If you wrote that same piece of code today, the chances are much higher that it would either be ignored altogether, or picked up and used anticompetitively by these megacorporations.
I don't think FLOSS really started significant levels of commercial use until the "LAMP" stack of the late 90s. Early internet companies picked up on Linux as a cheap alternative to Solaris or HPUX to run Apache. (I'm not sure there were massive commercial competitors on the server side? IIS? ZWS? WebSphere?)
Possibly not until 2010ish that we started to believe that Microsoft's total domination of the software world might be cracking. And of course Microsoft never touched OSS back then.
I think you are making good points. But there are other perspectives:
Open source has done a ton of good. It massively accelerated technological advancements and made software development more accessible, democratic and efficient, because people depend and build on common, collaborative technologies.
A lot of programmers are not in for the business. I want a decent life and not worry about money, but I don't ask for much, especially not in the material sense. The reason I love programming is because of programming itself. It is a fascinating and rewarding craft. In a perfect world, I would be focusing purely on solving problems and make the solutions available for as many people as possible.
(Not OP)
To me the main difference is that in 80s the main way of consuming software was by having it distributed to you, which then can trigger GPL copyleft clauses. These days it is more and more common to consume software as a service, where GPL copyleft is not triggered because the software itself is never distributed.
Yup. You have to pay for what you use. For some things, that's a pricetag in dollars that you can look at on your balance sheet. For all software except that cast into the public domain, that's an obligation to use it in the ways that the license requires. If the price for a library in dollars is too high, you either grit your teeth and pay it, or you find some other way to accomplish your goal within the law. If the price for software in usage rights is too high, you make the same decision.
> Could you articulate which differences you feel are relevant please?
Mostly the sheer volume of open source that’s out there. I think FOSS makes a lot of sense for stuff that’s too much work for a small team and needed by a lot of people: operating system kernels, compilers, browsers, etc. That was the stuff to work on in 1987. Today most of that layer is “done”.
If software can generate profits for someone else, it could have generated those profits for you. It can feel like a slap in the face when your little side project turns into profits for someone else, but ultimately that's part of the deal with FOSS. If you want to make money from it, you need to deliberately plan for it and take advantage of the profit potential yourself. You can make money in FOSS, but usually not by accident.
If anything, a "saint" should be writing software to benefit end users and especially for people in need or other social good.
It's hard to claim sanctity when doing unpaid labor for a FAANG (making some billionaire wealthier and therefore increasing inequality).
> This would all be fine if we lived in a socialist world, but we don’t.
Most of breakthrough technological R&D has been paid with tax money: semiconductors, computers, satellites, GPS, GSM, radar, laser, fiber optics, telephones, batteries, Internet, airplanes.
The same goes for the bulk of scientific research in the last 100 years. Not to mention funding practical needs like building roads.
> What are the best alternatives to this model?
One option is to demand public code for public money. In the meantime, AGPL helps a lot to keep some FAANGs at bay.
The most successful FOSS-based companies over the long haul figure out how to create an *ecosystem* around the use cases for the FOSS. The more users and the more use cases, the more people in the ecosystem. The more people in the ecosystem, the more potential customers there are for the company's paid products and services, like consulting, setup, customization, documentation, and training. This is exactly the model Red Hat uses and they are the largest and most successful FOSS company in the world.
In many ways, Apple is also a FOSS-based company in that everything they sell in MacOS had its origins in the free, open source BSD Unix distribution. Google, too, makes a fortune from FOSS since Android is also built on old Unix code and ideas. Nothing prevents anyone from taking those free original materials and making their own enterprise, ecosystem, or economy out of them -- and that's the true power of FOSS.
"Giving back code" is overrated and often useless. Google doesn't want your code. The way that FOSS gives back is by enabling other commercial entities to make money quickly and without worrying about licensing or paying anyone for code bits they use in other products. This is a *huge* and important contribution to society. At its core, FOSS is not about a community; it's about enabling commercialization and paid products! Free, community users are just riding on the back of that elephant. Unless you reach elephant size, FOSS projects will likely never earn enough money to sustain a business.
That made me think. We don't object all that much when people change prices for their software; we realize that it is just an experiment with what the market will bear.
I feel like the source code license is becoming something similar (as long as you own all the code). Apache2 for mass adoption, GPL for less adoption, but some more control, dual licensing for more flexibility, commercial only licensing if you want to maintain total control.
It is common for someone to start out pricing something low to see if they can get adoption and then increasing prices as people see more value. Could the same thing happen with licenses: start with Apache2, then change to one of the more restrictive models?
Why would we though? What entitles you to the fruits of someone else's labour? Do you object much when someone charges prices for food, cellphones, cars? This just does not make sense. Where does this implicit entitlement to someone else's work come from?
I have no idea if the contributors to elastic have done this, however.
It's an illusion that you had much power at all before that release anyway. Code is only valuable when used in the right place on the right data for the right people. Otherwise, it's just more meaningless binary floating in the void. A developer's particular source isn't all that interesting. In theory, with the same idea kernel, another developer could build a similar thing. The only value someone's new, closed source project has is that it works right now. That's the only leverage in a negotiation.
All of these talks over OSS have programmers power-tripping over their supposed influence in the world.
>FOSS is eating the world, and it’s a very attractive choice for businesses for a good reason. This is the reason. It increases wealth for everyone.
Does it? everyone like 100%?
IMO Idealogy is "good" and necessary but if we fail to address the fact that many people who their work supports these software empires not only don't get a dime ever but also have to endure an avalanche of support tickets and your run-of-the-mill hate mail, then no fancy ideals will save this whole thing because the situation is deeply unfair.
A common answer to this is: Let it burn, however the "burn" takes generations and people have to eat today and tomorrow. Also what comes next is very far from guaranteed to be better.
I'm always very skeptical of everything with 100% purity, being OSS or Capitalism™ .
When you write OSS code, it increases what's available for everyone, without cost. It's no longer zero-sum; it's actively increasing what's accessible to all without having to give something else up in exchange.
Though yes, there's a pretty strong argument to be made that FOSS achieves that particular goal more effectively than paid software.
It's just a convenience for procurement and VPCs, nothing more.
Wrong. Copyright laws exists because we operate on the assumption that people own the fruits of their labour and have exclusive rights to those fruits unless they state otherwise.
It is as much an artificial monopoly as property rights of your phone is an artificial monopoly ... in that neither is because that is not what monopoly means.
Most users won't actually tinker with the software, but some will. But that only happens if they have the freedom to do so. It's an essential property of long lived OSS projects. E.g. Linux, Mysql, Postgres, Python, etc. all have developer communities spanning many companies. Some are more dominant than others of course, and this changes over time. Companies going bankrupt is not fatal to these projects. Developers move between companies but keep on working on the software. E.g. Guido van Rossum worked for Google, Drop Box, and recently for Microsoft. None of these companies own Python or seek to control it but all of them benefit from it.
The thing that goes wrong in so-called OSS companies that attempt to monopolize the rights to their software (by e.g. insisting on copyright transfers for contributors) is that it leads to developer communities that are mostly just employees of that single company. Of course, most bigger commercial entities would probably not commit a lot of resources to delivering and transferring IP to another company; for free. This kind of requires a more robust setup with proper governance.
Such projects do exist, and most of them are backed by (very) successful companies who indeed don't get to monopolize the projects they are involved with. That kind of is the whole point.
The problem that the likes of Mongo and Elastic have is that they compete directly with such projects and need to add (proprietary) value every year to ensure that these projects don't catch up to the point where users can choose to simply switch to those and not really lose out. Elastic has plenty of OSS competition. There's of course Solr; which is based on the same OSS core (Lucene). Then there are several databases that integrate Lucene. The whole observable software movement has spawned several competing stacks (e.g. Grafana) for Kibana as well. Even Mongo has search features integrated (through Lucene). Likewise Mongo has to deal with other databases constantly adding features. Particularly postgres is very competitive and has added lots of features in the last ten years that were once key selling points for mongo.
That's why people can move between companies and continue working on the same code, because it is solving a internal problems on many different companies. And the companies don't block sharing the improvements because the problems the software solves is internal.
Anyway, that business model does not lead to creating companies. It's more prone to creating foundations.
No, it's not. Please don't let us go over this again and again, always citing the same historical uses of the term Open Source preceding OSI's use.
What I do care about is that software development can sustain itself, be it due to F/OSS licensing schemes or otherwise, for the simple reason that it wouldn't exist otherwise (and that I like true innovation).
And for context, I've released nontrivial software under LGPL.
> your monopoly over commercial exploitation
Does this article need to offer some account of how these premises are true?
Since it isn't clear either are.
ie., the law is a guarantee of any right. If you produce some physical good your "monopoly" (ie., ownership), without the law, is only so good as your safe.
It is a coincidence not some principle that physical goods require less, in-practice, deployment of the courts to enforce ownership rights. (ie., theft is rarer).
It is unclear why ownership over a non-physical good is an "artificial monopoly" where as ownership over physical goods is a "natural" one which properly implies a "commercial right to profit" etc.
Why in one area does one's efforts to produce imply a right to profit; and in the other, not?
All that to say, maybe virtual innovation takes even less time, and should have less time to enjoy monopoly? But I'm only playing your devil's advocate.
https://en.wikipedia.org/wiki/Statute_of_Monopolies
To answer your second question, all ownership is a restriction on the actions of others, in some way. If you own a house, what that means is that everybody else is restricted from entering that house without permission. If you own a copyright monopoly, it means that everybody else is restricted from making copies of particular books without your permission.
Where I would draw the line between "artificial" and "natural" monopolies is in how straightforward those restrictions are to apply. It is very easy to maintain restrictions on wearing a particular hat or entering a particular house. On the other hand, it is very hard to monitor all copies of a book to ensure that nobody is making additional copies of it. For one, exclusivity is a function of it being a physical object. For the other, exclusivity is not an inherent trait of the book, and is instead bolted on through legal measures.
It's time to move beyond pedantry in open source and address the concerns of real-world software authors.
Of course, not all warfare is the second world war; in fact, most of it isn't. But I think a blanket opposition to "software used in warfare" is too simplistic. The real problems are when a country starts a war for unjust reasons, and this is a political problem, not a technological one. In many ways a sufficiently powerful military (and warfare, or the threat thereof) is vital to protect safety and basic rights.
The development of the atom bomb is how it's been used over the decades is something we can have plenty of moral questions about, but the thing is that after the development of physics up to a point, an atom bomb was kind of an obvious thing, and the same technology has also been used for many other non-warfare purposes. Technologically speaking, you can't really have one without the other (but you can make a political choice to do so).
In short, I understand why people are concerned about these kind of things, but I think solving them on a technological level is the wrong approach.