The product I worked on for the last 4 years is now open-source
confluent.io
confluent.io
[1]: https://www.confluent.io/confluent-community-license-faq/
It might seem overly pedantic, but it can be quite important since many companies try to blur the lines of what open source is for their own benefit. If interested, I go into a little more detail on this here: https://danb.me/blog/posts/why-open-source-term-is-important...
You should be able to share source, allow individuals to use and modify your work and build a community around that work without worrying that same work will be co-opted by an entity seeking to undermine the effort you and your community have done for years, by slapping a different name on it and hosting it, competing directly against you with your own work as a business.
I'm fine if "Open Source" can't be used to describe these projects which are working with imperfect situations and looking to protect themselves while still providing their software with generally good intentions, but by the same token I then hope the software community will come up with a new good name for these type of projects, it becomes the common name, and the dogmatic definition of "Open Source" fades into the relative obscurity I think it deserves from being so divorced from reality.
Open Source is a functional definition that served us for 25 years. E.g. if software is Open Source, it can be included in a Linux distribution. Most distributions do not accept software that is incompatible with the Open Source definition. Diluting the term open source makes it more difficult to talk about a certain class of software licenses.
And why dilute the term if we have the perfect alternative term source available?
"Do whatever you want as long as you keep it Free Software" vs "do whatever you want as long as we believe you are not taking customers for us"
As usual, RMS was right, and I recommend reading the Free Software vs Open Source essay, unfortunately both names make it easy to misinterpret their respective fundamental idea (Free can and is usually interpreted as "gratis", and open as available/published/shared)
> It's a different restriction.
AGPL doesn't impose restrictions. It provides guarantees (that modified versions will remain AGPL and therefore open source for everybody).
> AGPL lets you do anything as long as it is just as Free (as in freedom)
By the very definition of open source software, you can do pretty much what you want, for your own usage. If you want to distribute (e.g. provide a service) with a modified version, then you need to guarantee that modified version retains the right that the original version granted.
Let me do the same for the quasi "open source" licenses:
Elastic license doesn't impose restrictions. It provides guarantees (that modified versions will not take business from you).
The only way you guarantee something, is by restricting something else. AGPL restricts distribution.
It does. It explicitly forbids usage. FOSS doesn't impose any restrictions on usage.
Fundamentally different things. I encourage you to review the four freedoms of Free Software [1] and see how AGPLv3 provide them all while Elastic License does not.
It does impose restrictions on distribution (which is one kind of usage) which was my point.
I'm fully aware of the four freedoms, I'm fully aware that elastic is not compliant. I'm fully aware that elastic is not open source by OSD, nor Free as per FSF. I was just stating that both impose restrictions, they are just of a different kind. I'm not advocating for elastic (i do not like non-free licenses), please do not misunderstand.
>> Elastic license doesn't impose restrictions. > It does. It explicitly forbids usage.
Please read that statement in its context. I was just doing the same thing you did. Swapping restrictions for guarantees. There is no such thing as a guarantee without restring something.
It does not restrict distribution, instead of restricts the ability to limit/restrict distribution. Quite a significant difference.
Also, fundamentally, one (AGPL) is putting the freedoms of the code and its users over those of the authors whereas the other (ELv2) puts the freedoms and interests of its authoring business over the freedom of the code and it's users.
semantics. Saying i cannot distribute something without providing the same freedoms given to me is still restricting what/how I distribute.
> Also, fundamentally, one (AGPL) is putting the freedoms of the code and its users over those of the authors whereas the other (ELv2) puts the freedoms and interests of its authoring business over the freedom of the code and it's users.
Yes. I fully agree. It's not like I haven't said something similar right but it's just discussing semantics at this point. So I'll stop.
https://news.ycombinator.com/item?id=34530039
I despise licenses like Elastic's and wished SaaS would just use AGPL.
I don't think most major Open Source projects in the last 10 years have even once considered,
'E.g. if software is Open Source, it can be included in a Linux distribution.'
That is exactly what I mean by "out of touch".
If I had to guess the primary motivator for being Open Source, are the communal and moral aspects of it.
Edit: I see you edited that part out.
("Open Source" itself isn't a trademark, but the OSI bits are, so I removed it to avoid confusion.)
(There's no indication that the legal construction of a trademark is "going the way of the bandaid", or that bandaids are "going the way of the bandaid" for that matter.)
The project in question is a CLI tool to a cloud platform that wraps an open source project (Kafka), complete with a page advertising why to use the wrapped software instead of the open-source version.
Its great that this person can work on a project, and share the source, but if anything, they're literally the ones doing the undermining of a community by re-branding existing OS Software. There's no community to form, no reason to expect anyone to contribute. The only reason anyone would want to modify this codebase is to interact with the centralized service through a different way.
"Source available" is a perfectly valid state, and describes a codebase like this which you can view, and even edit locally. "Open Source" is a term used for years to describe certain freedoms regarding software that has led to the abilities of many software users to modify and use software for whatever purpose they like, like the company in question using Kafka. Using an open-source codebase to make money is not undermining the project, its explicitly allowed in the license. We're all so much better off because open source projects, like Kafka, don't have these controlling and self-serving license.
If a project wants to do something different, and develop an "open project" under some terms that aren't open source, they are free to do so, but they shouldn't call it something it's not.
I would assert/guess/think that there are more developers who have started in the last 10-15 years who use the term for its colloquial meaning than there were developers in the entirety of the field in the preceding 50 years. Just from a numbers perspective, if I'm right, the colloquialism is going to win out.
That literally is the point of open source: that it's not reliant on a single vendor. That's what open source was created for, and that's a big part of why it's thrived.
It's fine to create other structures, but as many have pointed out here, those other structures aren't open source. There are a lot of licenses that allow access to source code (very common in enterprise licenses) but have restrictions on what you can do with that source code.
The ability to fork was always a core value of Open Source. Especially if there was a community around a project that invested lots of energy into it - and then drama comes. Without forking it means it will always be dependant on the creator. Not the spirit I would like ot get into myself and I also don't like to see those 2 concepts mixed up.
* view, download and modify the source code?
* distribute the code as part of another project?
* distribute modified versions of the code?
* do whatever I like with it?
Arguing that unless you meet the OSI definition, you can’t call yourself open source is a little like saying you can’t call a peanut a nut: it all depends on the context of the conversation. At the OSI annual conference, sure this isn’t open source. On a Show HN I’m fine with it being open source.
If source is publicly available, it is open source. Plain and simple; regardless of your legal ability to copy or modify.
Definitions from Oxford Languages
open-source
denoting software for which the original source code is made freely available and may be redistributed and modified.
Emphasis on "may be redistributed and modified"
Very few pieces of software are attempting to propagate those non-open licenses; far more software is just using Open Source licenses.
If you want to call it "open source", use an Open Source license. If you don't, please use terms like "making the source available" or similar. (But please, consider just making it Open Source.)
I think it's valuable for old source available code to not bitrot away when the value of it to the company decreases.
Open Source software provides certain clear guarantees to the users of that software. Even small changes to these guarantees probably render the software not open source.
This is not pedantic rhetoric, there are clear reasons why open source software should be clearly told apart from proprietary (including source available): given the OSS guarantees, potential users of a given software may make usage / no usage decisions without further due diligence. If those guarantees are modified, due diligence and risk studies may be needed, specially for companies (what if we're not a competitor today but tomorrow we want to? what do you call competitor? etc).
Open Source exists for a reason, which is to provide a firm ground on those who are good with the guarantees it provides.
Please don't try to blur the line.
https://drewdevault.com/2022/03/01/Open-source-is-defined-by...
Happy to answer any more specific questions here on HN.
This is misleading.
<quote> There is the free (libre) software movement, and there is the open source non-movement: two different viewpoints based on different values. </quote>
(RMS, from emails)
"open source" is misleading, since it often refers to proprietary software which is just software with open source code, and you can't do much with that source. I would kindly recommend to revisit your vocabulary.
No it isn't. The term "open source" is unpopular with Stallman and his acolytes, but is in common use and has a very clear definition stewarded by the Open Source Institute: https://opensource.org/osd
Whether that term or that definition is or is not aligned with your priorities isn't relevant to the fact that this term is in common use in the IT industry and this definition of it is the most commonly accepted.
In other words, nobody claimed it was free software, and Stallman doesn't get to just "declare" open source to be a non-movement like Michael Scott "declaring" bankruptcy.
The CLI is optimized to work with Confluent's on-prem or cloud managed Kafka offerings, but the end goal is to have this be an amazing CLI experience for vanilla Apache Kafka as well. Regardless, there are some interesting bits in the repo (like doing SSO login from a Go terminal app, or mocking API servers for integration tests) that could be useful for other devs out there.
Happy to answer questions on Go, CLIs, Kafka, or how to convince big companies to open source their software. I'm really proud to share all the work with the community and to know that the code will be preserved. Cheers!
Love to see these types of developer tools in the open so great work!
Excited for `snow` as well! ;)
Kafka was already FOSS, so anyone can vendor it, what Confluent has that gives it an edge is the ecosystem of tools that make Kafka more useful, e.g., Kafka Connect connectors, Schema Registry, kSQL etc.
(Although I'm of the opinion the last one exists mainly to dazzle engineering VPs. The abstraction leaks rather quickly IMO, just using Kafka Streams or Flink from the get go)
When I was at RH, we couldn't ship or bundle or provide any of the above in our FOSS projects, because of that licence, so hey, it was working I guess.
The distinction between competitors and community contributions is false. Why should the publishers be entitled to exclusive monetization of the contributions of their community, and why should their community be denied the right to monetize a product they contributed to? The ability to share the wealth is why the open source movement works.
This approach stems from a position wherein the publishers view themselves as separate and privileged from their community, which is valid if you are the only entity investing in the software, but unjust if the community is an active participant in the software's development.
The mainstream view on OSS is often good for the original publisher, in that an organization which monetizes their software then has access to more resources with which to contribute back to the software -- particularly in the presence of a copyleft license to enforce this behavior. The original publisher is then able to benefit from a larger and more consistent workforce developing the project with them.
I was just saying that I can understand why they use that licence from a "just IPOed and the MBAs are hungry" POV - it ensures that they're the only managed Kafka vendor that can also provide a managed Kafka Connect / Schema Registry / KSQLdb, it's a significant point of difference in the market, because aside from that, what differentiates Confluent from AWS MSK, or Aiven, or Instaclustr, or RH's managed Kafka etc. etc. etc.