109 comments

[ 2.6 ms ] story [ 181 ms ] thread
I've worked on building Confluent's CLI for the last 4 years, and after a year of technical work, security reviews, and sign-off meetings, I'm excited to share that the whole project (including all dependencies) is now open-source! https://github.com/confluentinc/cli

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!

Congrats @reducks! Looks like a slick CLI. I assume the CLI has been available prior to now, just behind closed source. Curious on what ended up being the deciding factor that helped bring it to full open source? Or maybe what had been holding the team back previously your team was able to overcome?

Love to see these types of developer tools in the open so great work!

Thanks! We've been shipping the CLI since early 2019 but had a few blockers along the way (alluded to in the blog post). We built the CLI on top of a lot of internal dependencies that were never going to be open-sourced, so we had to do a lot of creation and migration in order to have the CLI only rely on public dependencies (and in other cases, we went through the approval chain to release certain packages like `go-editor` and `go-ps1` into the open). Once we did that, once we cleaned up the codebase, and once we successfully pitched the business case for open-sourcing the tool, we were finally able to flip the switch. It's a small team so there was also always a prioritization question of working on open-sourcing vs. adding new features.

Excited for `snow` as well! ;)

Nice to see. Thank you for making it open source!
Obvious question in hindsight, was this related to the layoffs that just got announced?
Congrats on this! I noticed though that the license [1] this is provided under puts restrictions on use and therefore wouldn't typically be considered open source, at least as per the commonly regarded open source definition, but maybe instead just "source available".

[1]: https://github.com/confluentinc/cli/blob/main/LICENSE

IANAL but the license (CCL) is quite permissive except for the one use case of building a competing SaaS offering to Confluent [1]; the same type of license most cloud providers are using these days. But source available is definitely a valid term as well. I really do hope people will use this code!

[1]: https://www.confluent.io/confluent-community-license-faq/

Have you considered using a license like Business Source License (BSL) that would eventually become a true OSI license, like Apache, after a few years?

I think it's valuable for old source available code to not bitrot away when the value of it to the company decreases.

Absolutely, we picked the path-of-least-resistance license for the initial release in order to get the code into the open, but we'll continuously evaluate and see whether switching to a license like BSL makes sense. It's been awesome to see the evolution of licenses in just the past few years, and there are a lot more options than when I started this project. Hoping that having the project public will enable us to build a community and gain continuous feedback that will help drive technical, licensing, and other decisions in the future.
Considering how much Confluent depends on Kafka, maybe you should consider tying a future version to whatever license is used at Kafka, so you can give your users the freedoms that Kafka gave you.
Sure, it is fairly permissive as licenses go but those added restrictions fundamentally make this not open source, the use of this project is no longer fully open for use due to the restrictions you've place upon it.

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...

I think this is an overly dogmatic way of looking at Open Source. I think this way of looking at Open Source, and more largely OSI's stances on the term are out of touch with the realities of successful open projects and the challenges their developers face from the current software market and further out of touch with how the term Open Source is colloquially used by a large amount of people.

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.

I think this is an overly dogmatic way of looking at Open Source.

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?

Is it now? I was under the assumption it was an ideological definition, at least that's how people present every time one of these projects are even a smidge off from the OSI definition.

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.

Software Freedom is an ideology. Open Source is a definition.
Well the trademark is going the way of bandaid, and definitions change regularly.

Edit: I see you edited that part out.

The OSI definition hasn't changed. It barely changed what it borrowed from the Debian Free Software Guidelines before that.

("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.)

Because it is open source. It's not Free Open Source Software (FOSS) as deemed by some foundation or another. There is a lot of great open source software not included in Linux because of licensing issues (e.g. BSD clashing with GPL). Source available has generally meant you can have the source if you meet some criteria (have a license), but the license prevents you from redistributing it. I haven't dug into this license but it seems less restrictive than the AGPL.
How is it less restrictive when AGPL allows you to run a SaSS, but this one doesn't?
It's a different restriction. AGPL lets you do anything as long as it is just as Free (as in freedom), while these kind of license only let you do things that don't compete with whatever is the current copyright owner business is doing. And business tend to change over time, and it might be simple to be clear to a court if you are competing or not.

"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)

I agree with your sentiment, but I'd like to clarify the following, IMO:

> 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.

Sorry but you are just changing angles and discussing semantics.

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.

> Elastic license doesn't impose restrictions.

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.

[1] https://www.gnu.org/philosophy/free-sw.en.html

> FOSS doesn't impose any restrictions on usage.

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.

> AGPL restricts distribution.

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.

> It does not restrict distribution, instead of restricts the ability to limit/restrict distribution. Quite a significant difference.

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.

The "dogmatic definition" of open source is what has been used for decades. Applying it to something that doesn't meet that definition invites confusion.

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.

[flagged]
> "The question is," said Alice, "whether you can make words mean so many different things."

> "The question is," said Humpty Dumpty, "who is to be master - that's all."

- Through the Looking-Glass, slightly adjusted.

The whole goal of calling it "open source" is to take advantage of the positive connotations associated with the term. But the positive connotations come from software published under the dogma, and are inseparable from it.

(You can see the same twists and turns in Elastic's FAQ, where they desperately try to twist language so that "open" and "source" are as close together as possible without outright making contact. Guess nobody told them they can just use the word under their own definition, or as the rest of the world calls it, "lie".)

And yet.

Outside of HN, most people I know refer to Elasticsearch as open source.

Do they even know the terms?
Probably not by the definitions you're using, or at least they don't care about them.

Either way, this is one of those age old debates about descriptive vs prescriptive language that will have absolutely no impact whatsoever. People will continue to post things they call open source that you disagree are open source, and you will continue to moan about it.

None of these facts are relevant for how people use language. You may lament that people are beginning to use a word differently, but you cannot stop it and you cannot declare it authoritatively wrong. You can only lament and exhort.

Language evolves.

Language /does/ evolve. However, it's still dishonest to use an established term in a manner contrary to the broadly understood definition. Furthermore, the rationale for an unorthodox definition of open source is generally forwarded by those with a financial interest in their unorthodox definition, and in so doing they are asking others to work against their own interests by surrendering the mutually agreed upon rights associated with the term.

The orthodox view on open source is a useful and broadly understood shorthand for a certain enumeration of rights, the withholding of those rights disproportionately serves a certain group of interests at the expense of others, and disregarding these problems and using the terminology incorrectly in spite of them is willfully dishonest.

I disagree that everyone broadly understands the same thing as you from the phrase “open source”
It is wrong. I'm sorry to be blunt, but here we are.

Just because pepsi tastes like coca cola, doesn't make it coca cola.

Open source/free software places no restrictions on use/modification/distribution, end of story. With the sole exception of copyleft, which disallows you to distribute & withhold source, i.e. stopping you from depriving others of the very freedom that you benefitted from.

This places restrictions on use. Ergo it is not open source. Attempting to muddy the waters by using hand-wavey "you get most of your freedom!" type talk just muddies the waters and is precisely why the term got trademarked and why a definition exists. And it really is not hard to understand.

[flagged]
> If people use it in this context, it means this thing.

to them, it means that thing to them

Yep, and if a bunch of people manage to communicate with others successfully using this term then…
[flagged]
No, it means some people started using the word differently, no more no less.

Cool your own use of language, I don’t think it’s at all appropriate or within HN guidelines.

Blow it out your ass.

People are using the word differently, and the community is telling them to stop using the words differently because it's misleading. What exactly are you arguing, that community should not do that? That, you know, the open source community should not tell people to stop using the term "open source" incorrectly?

I'll cool my own language when you stop presenting your reductionist Philosophy 101 "it's just words bro" arguments without doing any further analysis. It's just words bro so why do you care that I said I had sex with your mother last night? Maybe I meant it as a compliment!

(comment deleted)
(Re-commenting because apparently you didn't like the way I use words, how ironic.)

People are using the word differently, and the community is telling them to stop using the words differently because it's misleading. What exactly are you arguing, that community should not do that? That, you know, the open source community should not tell people to stop using the term "open source" incorrectly?

I’m a member of the open source community, so “the” community isn’t telling them anything.

But, no, I’ve quite clearly stated you can argue they shouldn’t use that definition. But you cannot credibly say that their usage is wrong if they are successfully communicating with others using that definition.

The word will change usage, or it won’t, and neither of us will probably have any say over it.

(comment deleted)
They are not successfully communicating with others, as the majority of people expect Open Source software to grant you some rights that the software in question doesn't, which is why it's misleading, or in other words, wrong.

You can use your words in whatever way you want with whatever people you want, but can't deliberately ignore the widely-adopted definitions because "language changes" and claim everyone else is wrong and your microcosmos is right. Wake me up when language actually changes (i.e. when the majority adopts the new definition) and then we'll talk.

That’s an empirical claim, and I’m not sure what you’re basing it on?

There’s literal dictionaries that disagree with you, so plenty of credibility to the alternative meanings.

There's an official OSI definition [1] that agrees with me, so your "dictionaries" should fix their wrong definitions.

[1] https://opensource.org/osd

Official? In what sense?
In the sense of being the widely accepted authority on the matter.
That’s another assumption. It might be widely accepted within your circle, but most people using the word I would bet don’t even know it exists. So for them it isn’t an authority. A dictionary might be.

I certainly do not recognise any charity’s right to define a word, so it is not official to me - or, apparently, to the OED or Wikipedia, and I would bet most other dictionaries and people.

I certainly don't care about your opinion, so I don't give a shit what you recognize as authority.

Most people in the open source community recognize OSI definition as authoritative. "Muh assumption" - if you want data, look at the comment section in this article, most people disagree with you. You may have your microcosms of people who don't know/don't care about history of open source/free software, but your ignorance doesn't grant you any authority over language, either.

Use the language any way you want, but stop throwing tantrums when people rightfully tell you that you're using it wrong.

But that's the whole point. You can't just stand up and say 'i don't agree with your use of the word, therefore I'm going to change it'. That's the most ridiculous idea ever. Hey guys guess what, I now declare that the word 'murder' no longer means killing someone.
But nobody’s doing that? I think a bunch of people basically never agreed with you on the definition, it just never mattered much as the distinction didn’t matter yet. Most people don’t think much about how they use words, they just use them.

To use your example, it might be that murder evolved from meaning “a crime has been committed” to meaning a specific crime. Which, um, is exactly what happened.

Unfortunately people need to think about how they use words. Definitions exist for a reason, otherwise meaning is lost and confusion reigns. The legal definition of murder didn't haphazardly evolve, it was deliberately enshrined in statute and common law (to include intent, unlawfulness etc).

The definition of open source is the same. It's not a random thing, it has specific elements which make up the definition. You may not like or agree with those elements, but then it's probably better that you go off and a) define something else for your purposes b) ignore the definition and be subject to legal redress if you contravene the definition.

One useful place to start with the definition (and there are, of course, many specific types of licenses, some of which are more restrictive than others) is https://opensource.org/osd

Firstly, the Oxford English Dictionary uses a different definition, as does Wikipedia. It’s far from clear why we would prefer OSD, and by these other definitions you’re the one using the word incorrectly.

Secondly, good luck convincing everyone they “need to think about how they use words”

Thirdly, “legal redress”!?

We use words to communicate effectively with other people. If different groups use words differently, that creates confusion and works against effective communication. We need to come to a general agreement about what words mean so that we can effectively communicate. If you decide to deliberately use a word differently from how it's been commonly used, rather than accepting the fact that you've been using it differently from everyone else and changing your behaviour, that makes effective communication harder.
I think your assumption that everyone agreed on your definition in the first place is incorrect.

Words are fuzzy, most people don’t look at dictionaries, let alone OSI or FSF definitions. A word changing usage often just indicates the meaning was never as precise as you thought, the distinction just hadn’t yet mattered.

"Open source" is not a term that developed naturally through normal language development. It's a term of art specifically created to have a particular meaning.

Your argument is roughly equivalent to this one: "I can call this random cereal Cheerios, because language evolves and neither you nor General Mills decides how people use language."

Nope, it isn’t special. Indeed your example is why companies try very hard to prevent words from changing meaning. Google for instance no longer means “search with Google” but to search the internet for something, with Google or some other service, and history is littered with such examples - including ones that became so prevalent they lost their trademark protection.
I don't understand why you think this is a good counterexample. Google is still trademarked. If I make a search engine and say, "You can use my search engine to Google things," I'm probably in the wrong both legally and ethically.
Open source isn’t trademarked, and probably isn’t possible to trademark. So trademark status isn’t relevant here, only the change in usage.
You're literally the one who made the analogy of "open source" to trademarks, and now you're trying to shoot down my explanation of why your analogy doesn't work by saying trademark status is irrelevant... Good grief.
No, you brought up Cheerios, and I brought up a counterexample to your claim that such invented terms occupy some special status where they don’t or shouldn’t change meaning.

I then mentioned loss of trademark protection to further evidence that such words change meaning.

The term “open source” might have originated with a particular meaning in mind, but I think OP’s point is that the term developed a life on its own thereafter.

“Cheerios” is a made-up product name, and without knowing the definition of it, one couldn’t tell what it means. (I had to look it up, in fact.) In contrast, “open” and “source” are generic words, and in combination they can be used and understood without knowing any of the FOSS history.

That’s actually how I was introduced to the term: I always understood “open source” to just literally mean “the source code is openly accessible” – no more, no less. Even after having learned about the FOSS aspect later on, I continued to interpret “open source” in that literal sense.

Since this debate is a bit … heated, let me add that I’m not interested in making any general claims with my statement – I’m rather sharing my own perception to contribute a data point to how language can be used and understood differently, depending on where people come from.

But "open source" is also a made up name, just like Cheerios. Nobody was using the term "open source" before it was deliberately created in Palo Alto. The fact that you thought you knew what it meant without being given a definition, and what you thought was incorrect, might be considered a weakness of the term. But it doesn't change the nature of the name.
> The fact that you thought you knew what it meant without being given a definition

“Open source” can be legitimately used as generic term, and as such one doesn’t need any definition at all to use the term in its colloquial sense.

Imagine someone were to arbitrarily define the term “free lunch” to mean something very specific, instead of the naive interpretation of “a meal at noon that you don’t have to pay for”. Only because they’d claim and publish their definition doesn’t make it universal from then on, regardless of whether the combination of those words had been used somewhere else before.

If you think of patent law, for example, it’s not for nothing that you can’t claim a trademark on generic terms. The reasoning behind that stems from the very same problem.

I agree with you that it probably would have been better if the FOSS movement had established a more specific term for what they meant. (Like: “FOSS”, for example.) But – to put it bluntly – that’s a home-made problem on behalf of the FOSS movement, and not mine.

The comparison to "free lunch" doesn't really make sense. The phrase "free lunch" has been used for what it transparently means since forever.

Nobody used the term "open source" before it was deliberately invented. There was plenty of software in the 80s and 90s that we could retroactively call "open source," but nobody used that phrase at the time. The phrase "open source" was specifically created in 1998 because the term then in common use, "free software," was too generic and people were confused about what it meant. So a new term was created for the express purpose to have a term with no prior meaning so that a specific meaning could be assigned to it.

You seem to think that because "open source" is a phrase you see a lot, it's a generic phrase that was always used informally and grew out of natural language. But that's not the case. It's a term of art that was artificially created with a specific meaning.

The discussion is pointless. I know the history around the term, and yet, I – and many people that I know – don’t attribute any relevance to it in regards to their usage of that term. If people choose to use the phrase “open source” in a colloquial, literal way, then they are free to do so. Nobody can change that.
But the point of the GP comment was that language has not 'evolved', but is intentionally being used in a misleading way here.
This seems to be the point at which this thread devolved into a flamewar. I'm sure that wasn't your intent, but it's a direct line from provocations like "you aren’t the language police", "this weird attitude", and "just nonsense" to the "blow it your ass" that we got below (https://news.ycombinator.com/item?id=34529541 and https://news.ycombinator.com/item?id=34529327).

If you wouldn't mind reviewing https://news.ycombinator.com/newsguidelines.html and taking the intended spirit of the site more to heart, we'd be grateful. That means being more careful to "edit out swipes", as the guidelines put it.

Sure, I agree. Let's start popularizing other terms, but I think the relevance of the term Open Source will see a substantial decrease then, because I don't think people now largely use the word to mean what it meant decades ago. I think the popularity the term has now is for reasons entirely different, reasons like community building and some reasons of morality, and I think the term can either evolve to fit the industry's current norms or be reduced.

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.

Exactly. Such a definition of open source is hardly universal. I think of it as a sliding scale - to what extent is this open source? Does it allow me to:

* 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.

Companies want the goodwill and community support that being open source provides without the obligations (copyleft with GPL-like licences and the do whatever you want with the code of MIT-like licenses). Defending attempts to redefine open source like this is just carrying water for megacorps.
> 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.

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.

> 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

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.

Use AGPL then. If any other business wants to "undermine" yours, they would then have to let you "undermine" theirs as well.
"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."

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.

Or maybe some people are trying to blur the line between FOSS and OSS.

If source is publicly available, it is open source. Plain and simple; regardless of your legal ability to copy or modify.

If I look up the definition of "open source", it says:

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"

> the same type of license most cloud providers are using these days

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.)

The software becoming source available is great, but calling it open source is still misleading. Open source implies an expectation that everyone is able to use it without restrictions, possibly on the condition that the derivatives should also remain under the same license.
"quite permissive" and "open source" are terms quite far apart.

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.

> considered open source

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.

Are you saying ssddanbrown should use a different word? ssddanbrown is just using the word from the article title.
> This is misleading.

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.

I believe parent was saying this is NOT open source by OSI's definition either. That's the misleading bit.
Agreed. It's important to use the correct terminology. This does not qualify as open source and should be described as source available instead (or should switch to a license which is open source). I've written about this subject in detail here if you're curious about why this is important:

https://drewdevault.com/2022/03/01/Open-source-is-defined-by...

Happy to answer any more specific questions here on HN.

Why didn’t this project use one of the well known and (court) tested open source licenses but instead opted to use Yet Another New License that is not adhering to the Open Source Definition by the OSI? Muddying the waters this way isn’t really helpful from a community perspective, it only serves to help corporate lawyers and makes reuse of code in other projects a legal risk. Le sigh.
because they wanted to reap the PR benefits of "open source" without actually being open source.
Because they like community contributions to their stuff, so "open source" it for that, but don't want their competitors benefiting from the initial work they did. Which I understand.

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.

> Because they like community contributions to their stuff, so "open source" it for that, but don't want their competitors benefiting from the initial work they did. Which I understand.

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 agree with you on that one also (and I see that Confluent has retracted their definition of it as OSS - it's now "source available").

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.

Title should be "Confluent CLI is now open source"
"Confluent falsely claims its CLI is now open source"
This is not "open source". HN needs a rule on headlines that make false announcements.
Well, doesn't it make sense to just flag it? I think that might be in the spirit of the site...