Hacker News new | ask | show | jobs
by bayindirh 417 days ago
MIT doesn't need attribution. Original BSD does, but revised and most widespread BSDs do not.

GPL/AGPL would prevented this somehow, requiring proper attribution via mandatory source code release, and allowing to track project origins. This would make it harder to label it as a "a Microsoft Product from Ground Up", and prevent Sherlocking the original application to a greater degree.

As a result, this would probably forced Microsoft to develop a new one from scratch, because they're allergic to GPL, because if they have breached GPL, they would be forced to comply, since GPL is court tested already.

So, write Free Software. Not Open Source. Esp. for your personal projects.

3 comments

> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

Source: the MIT license.

https://choosealicense.com/licenses/mit/

Yes and they do redistribute under MIT as well, there is no foul play here
https://github.com/Azure/peerd/blob/main/LICENSE

I don't see "Copyright (c) 2024 The Spegel Authors" (the "above copyright notice" in https://github.com/spegel-org/spegel/blob/main/LICENSE) anywhere. Where do you see it?

They are essentially claiming copyright here for something they don't have the license for, no?
To remove the original copyright notice, they'd need a copyright assignment (possibly implicit, as when the work is made for hire). They've already got a licence and they've infringed it by doing this.
To be fair, Spegel changed the copyright notice in 2024. It used to say someone else. That said, Microsoft is definitely missing the notice.
The original author can change their own notice. Why would that be a problem?
Well they could technically have proper attribution without the literal string "Copyright (c) 2024 The Spegel Authors" if they included an older copyright notice that was more appropriate. I think that was the point they were making.
Funnily enough, they did add the copyright notice now, and since I didn't permalink to the commit, this looks a bit silly :P
There's no writing in that license which I can't change the copyright after forking the code.

There's a copyright line, check. There's the permission notice, check.

The rest is just goodwill and ethics, which is not a very valuable currency in software in these days.

You can't just remove the above copyright notice and replace it with your own and claim you retained the copyright notice lol
Can you give me a couple examples how this is done? I mean, in terms of actual repositories.
The easiest way to do it is to add your own copyright line above the original LICENSE copyright line.

That way anyone touching the project can just add their own line on top.

Done.

EDIT: Example: https://github.com/go-gitea/gitea/blob/main/LICENSE

A more complicated way to do it is to add a folder that contains the original LICENSE file or files. Sometimes there is more than one license, or the license texts differ. In that case, you must preserve all the different variants, even if they all call themselves MIT.

Then, you can optionally add your additional own LICENSE file * only iff* it is compatible with all existing LICENSES. In the case of the MIT license, you may relicense, sublicense, or use a different license in addition, provided it is MIT-compatible. With e.g. GPL you can't. Note that you still have to preserve all the original LICENSE files in the repo.

Original license of Redis is retained in the form Valkey:

https://github.com/valkey-io/valkey/blob/unstable/COPYING

Third party licenses retained in a THIRDPARTY file in MariaDB

https://github.com/MariaDB/server/blob/main/THIRDPARTY

Only two good examples I could quickly find.

No!

Once you change the copyright line, you no longer include "the above copyright notice". At that point you're violating the license.

You are also not allowed to change the copyright notice or license text in any way (you may however add to the license, which is a loophole other licenses such as GPL fix.)

Substantial is subject to (legal) debate as the Oracle vs. MS case has shown. Whole functions or large parts of files however should always be considered substantial, as the software would otherwise not work.

I'm seriously flabbergasted at how bad reading comprehension seems to be among coders.

> I'm seriously flabbergasted at how bad reading comprehension seems to be among coders.

Sorry to deflate your amazement, but I made the remark because I have never seen a permissively licensed repository which changed hands and had multiple copyright lines in the last 20 years or so.

Maybe it's not my reading comprehension (and English is not my native language to begin with), but the behaviors of other coders to begin with.

Maybe we shouldn't point fingers to others and not forget that three are pointing towards ourselves. Eh?

OpenZFS has many files with multiple copyright lines in them.
I've seen plenty of both. I've added one good example in my other comment. But it certainly depends on the community and programming language as to how serious licensing is treated.

But yes, many people are not complying with the license literally, and it's frustrating to see. I know it basically doesn't matter unless you go to court over it, but still it irks me and screams a sort of carelessness about the rules and social contract.

Sorry for criticising your reading comprehension, I did not mean it as a personal insult.

It's just that I see these types of responses so often, basically every time any licensing question comes up. Twice in this thread. And all that's required is to just read the very short and basic MIT license text itself, no lawyering required.

I can understand the native speaker part, but just know that I myself am not a native speaker either. But I understand that's a huge barrier.

But even native speakers on HN with serious software engineering jobs and skill don't understand it, or don't want to understand. I think it's a bit like when people see math proofs, they mentally just skip over it.

That's the part that continues to amaze me.

GPL/AGPL might have improved the attribution, but they would not have prevented anything else from happening because Microsoft is publishing the source code.
GPL doesn’t help you with them taking your idea and doing a clean room implementation.

You’d need to patent your idea to stop that.

I never claimed that?

Citing myself from my comment:

> As a result, this would probably forced Microsoft to develop a new one from scratch, because they're allergic to GPL, because if they have breached GPL, they would be forced to comply, since GPL is court tested already.

So, we seem to agree here.