Hacker News new | past | comments | ask | show | jobs | submit login
ROFL: An open-source license that promotes fun in coding (lmy.medium.com)
23 points by tslmy on June 5, 2023 | hide | past | favorite | 54 comments



I know most of these sort of licenses are just for fun, but on a serious note, if you don't care about licenses, and you don't care what people do with your code, I would recommend you use The Unlicense, instead of one that sounds funny.

The Unlicense is almost like MIT License but without any burden on those using your code.

On the other hand it offers you the same (perhaps handwavy) protections from liability as MIT License does.

If you're familiar with Creative Commons, it is similar to a CC0 license, but for code.

Basically it's a legitimate way of saying "I don't care about licenses, stop bothering me, do whatever".

If you use GitHub, then Unlicense is one of the choices you can select when setting up a repository.


No, that's a bad take. The unlicense makes your code impossible to use for many people e.g., those in countries like Germany where you're not allowed to dedicate works to the public domain. Similarly, many companies don't allow you to use code with the unlicense because of its unclear legal status.

See [1] and [2] for more discussion on this.

If you don't care about licenses, the MIT license is a much better choice.

[1]: https://web.archive.org/web/20170301020915/https://lists.ope...

[2]: https://softwareengineering.stackexchange.com/questions/1471...


>many companies don't allow you to use code with the unlicense because of its unclear legal status

I'd argue that this is an advantage of "funny" licenses: any megacorp can use your MIT code without giving you anything in return; if the same corporation really wants to use your funny-licensed project while being legally in the clear, they are now incentivised to approach you, potentially offering some compensation for a more "serious" license.

At the same time, funny licenses don't stop enthusiasts from working together, and that's what makes open source software good.


That's not true.

While requesting The Unlicense to be officially OSI approved [0], I've approached a German Lawyer specialized in Licensing and from his PoV the terms are also clear in Germany.

[0] https://lists.opensource.org/pipermail/license-review_lists.... ff.

[Edit] formatting


That's an interesting counterpoint, to a common conversation here.

I suppose it's important to realise that even if a public domain declaration isn't possible in Germany etc., that doesn't mean the Unlicense is unusable. Unlicense, as you know, explicitly grants certainly permissions; it doesn't simply say "this is public domain".

There was another interesting point in the thread you linked. Even if Public Domain isn't possible, courts will tend to consider the clear intent, whilst reading the legal text in a way compatible with local law. https://lists.opensource.org/pipermail/license-review_lists.... So maybe you cannot waive certain moral attribution rights, but the intention is clearly to allow use, copying, and modification, without payment to the author. Worst case, that's an MIT style license.


Quoting from the critique of the Unlicense:

> Guess what? There's a worldwide default-copyright regime, opting out of it is simply problematic, and attempts to do so risk creating non-deterministic effects that depend on the jurisdiction and judge.

This is true, but guess what? Everything you do legally depends on jurisdiction and judge. That's how the law works. I get that some licenses are more broken than others, but using that specific reason for saying you can't release software into the public domain is particularly empty-headed.

This doesn't even get into the fact that clickwrap contracts of adhesion are on even murkier legal grounds than something which tries to place a piece of software into the public domain, as an over-reaching contract of adhesion actually attempts to do something, and contracts of adhesion are subject to special scrutiny under the law.


Yes, laws vary by jurisdiction. Nonetheless, we have a lot of licences which work as worldwide as possible.

As much as I wish otherwise, it does not appear to be possible to dedicate works to the public domain in Germany, and quite possibly other jurisdictions. As such, it's best to offer an MIT-style licence for residents of such jurisdictions. This doesn't stop you making a public domain declaration in jurisdictions where you can.


This is a day later now, but for posterity I'll add that thanks to this thread I learned that there is a concept of "OSI approved licenses"[1], and that those licenses include MIT No Attribution License (MIT-0), and that MIT-0 is also a supported license in the GitHub UI.

It is likely I will be moving from Unlicense to MIT-0 in the future.

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


> those in countries like Germany where you're not allowed to dedicate works to the public domain

That sounds like Germany's problem. If the system makes it difficult for someone to accept a gift of code from me, is it up to me to fight or work around that system? No matter what license you pick, in all likelihood some territory somewhere will have a problem with it.

> many companies don't allow you to use code with the unlicense because of its unclear legal status

Again, if I particularly care whether commercial entities use my stuff or not then I probably care about licensing enough to not use this the unlicense anyway. They can always contact me to negotiate specific commercial licensing for their use case.

--

There are to (at least) views that head in this direction:

* I don't care about licensing: I want people to use this, and I don't care how.

* I don't care about licensing: I don't care how people use this, I don't even care if you don't use it at all.

The one thing you should take care about, even if you don't otherwise care at all, is that some licences contain accidental traps which potentially enable legal grifters to bully people who use your stuff. The most obvious case of this is version 2 of creative commons licences (newer revisions are not prone to this, v4 (released in 2013) certainly, I've not looked to see how v3 (2007) stands in this regard), see https://doctorow.medium.com/a-bug-in-early-creative-commons-... amongst other places for details.


> is it up to me to fight or work around that system

If you want to make a gift, it's up to you to do it the right way / to allow people to get it, don't you think? You already put some effort to build and wrap it, you could as well stick some small label on it (put some working license), that's quite easy to do in comparison.

The rest of your comment hints at why you should pick a recognized license in any case.


Depends.

Is it important to me that people can accept it, or is it just important to me that I'm not making it difficult for someone to be able to accept it?

If people have trouble accepting gifts because of local regulations, perhaps it is instead up to them to try get those regulations revised?

[FWIW: I'd not use these licence options anyway. I'm more AGPLv3 for code and CC BY-NC v4 for other content, not that I have any published ATM unless you count long forgotten stuff from a decade or two ago, other terms available subject to negotiation]


> or is it just important to me that I'm not making it difficult for someone to be able to accept it?

I don't know. By writing "Dedicated to the public domain" instead of "Licensed under MIT [or CC0]", you are doing comparable effort but you are definitely making it difficult for some people with no clear benefits.

Getting such regulations revised is very hard work and would probably not happen in our lifetime, and I'm not sure being able to dedicate something to the public domain when you can license your work liberally anyway is that desirable.

(but yes, me too, I'm more AGPLv3 for code anyway - and none of us is right or wrong in this philosophical discussion)


I stand corrected then. I had heard a similar comparison that you should prefer Unlicense over WTFPL, but I had not heard it is impossible to dedicate works to the public domain. What a weird world.

If I want to use Unlicense, can I dual license as MIT and Unlicense?


Dual licensing should be fine. (IANAL)


Actually I read through your links, and they seem to imply, that there does not exist (can not exist?) a license that you could use if you want to release your code to the public domain. That's a bummer if so.


In many countries including mine, willingly putting work in the public domain is not possible.

In France, you have to wait 70 years and then the end of the year for your work to be in the public domain (sometimes, it's 70 years after the death of the author).

So you need a license like CC0 to "emulate" public domain, that does whatever is possible to give as many rights as possible to the extend permitted by law, in each jurisdiction. This is tricky, that's why CC0 is so long.

Public domain is just an area where the author cannot impose anything. If you can give all the possible rights that matter, it does not seem to really matter if you can't just put it in the public domain, or am I missing something?


> that there does not exist (can not exist?) a license that you could use if you want to release your code to the public domain

In what jurisdiction? Yes, it's widely thought it's not possible e.g. in Germany, because you cannot seem to waive your moral rights.

What about the U.S.? There's no explicit law saying you can dedicate your copyright to the Public Domain. True, so some think it's not possible. But others think you can simply abandon copyright, like you can any other personal property. Why wouldn't that be the case?

FWIW, I like the clarity of a permissive MIT or ISC license. But I think you may be able to dual license Public Domain (in many jurisdictions) OR MIT.


> you cannot seem to waive your moral rights.

If it's like France, moral rights cannot be given up and stay in perpetuity, even when the work reaches public domain.

That's patrimonial rights that expire after 70 years, making the work reach public domain. These are the ones you would want to give up to put something in the public domain but can't.


Perpetuity? Interesting. So, if the moral rights don't end when you die, then I suppose your heirs and successors can nominally enforce moral rights, centuries later. Wow!


> I suppose your heirs and successors can nominally enforce moral rights, centuries later

I don't know about this. That's quite possible. But yes! See [1,2]

[1] https://en.wikipedia.org/wiki/Moral_rights [2] https://fr.wikipedia.org/wiki/Droit_moral


That's my understanding as well.


> Embrace a lighthearted attitude while working with the software

It seems I wouldn't respect this license if I ever had to contribute a fix in emergency (while stressed).

I guess writing with license was fun. Now, please don't use it seriously ;-)

I think a lot of things make this license non-free, an example is: "be available when someone asks for help. To ensure that can happen, set up a channel where people can reach you.". For a license to be open source, I should be allowed to just dump my contribution and run away, never to be seen again. I believe this would be Debian's Dissident Test [1].

(To the author: as a consequence, I think you should not mention "open source". It's likely wrong, misleading and it'd be best to reserve this to OSI-approved licenses anyway - or make it clear it's a caricature, parody or a satire)

[1] https://wiki.debian.org/DissidentTest


Noted! Removing.


Wow, nice!


Hmm, I'm not sure this meets the Open Source Definition:

https://opensource.org/osd

It discriminates against people who are odious bores :)


Yeah I'm not sure about this one, it's all very restrictive with lots of stipulations. I think I'll go with WTFPL instead.

https://en.wikipedia.org/wiki/WTFPL


It is a EULA too. Open source software doesn't have a EULA.


> Open source software doesn't have a EULA.

I disagree. First, loads of proper (OSI-approved) Open Source licenses say either your downloading or use requires acceptance of the terms, or that using the software implies acceptance of the terms. Having to agree to a license, for use even without redistribution, makes these (permissive) EULAs.

For example: APL-1.0, APSL-2.0, CAL-1.0, CECILL-2.1, CNRI-Python, EPL-1.0, EPL-2.0, Frameworx-1.0, IPL-1.0, MS-PL, MS-RL, OCLC-2.0, RPSL-1.0, Unicode Inc. License Agreement, and Watcom-1.0, are all framed this way.

Of course, other open source licenses like the GPL explicitly say acceptance is not required for use. Moreover, the most popular permissive licenses such as Apache-2.0, BSD, and MIT, grant the right to use, without saying they require your acceptance.

Second, the copyright grant versus contract (EULA) distinction may be US specific, or certainly it isn't worldwide.

Regardless, we agree this joke (“ROFL”) license clearly isn't open source, for other reasons.


Reminds me of the now infamous:

"The Software shall be used for Good, not Evil."

And the hilarious, but necessary exemption:

"I give permission for IBM, its customers, partners, and minions, to use JSLint for evil."

Personally I would love to see something named e.g. "corporate drone license", which would allow people in small, dead-end projects in large organizations to use it freely, but at the same time prevent said organizations from using it at scale to charge subscription fees for someone else's IP.

AGPL comes to mind as the closest thing I can think of, but I suppose the concept itself might be impossible to translate to legalese.

All I want is to give back some agency to people whose life circumstances require them to hold on to their current position.


> but at the same time prevent said organizations from using it at scale to charge subscription fees for someone else's IP.

What you are describing is a nonfree license (like the BSL).

Freedom means freedom to profit, too.

It's silly to place restrictions on a gift, in my view. When you release free software, you gift it to the world. It's no longer "yours". Thinking that you have some say in how others use it after that is fundamentally incompatible with free software ideology.


> fundamentally incompatible with free software ideology

The free software ideology has pretty much been shaped by the FSF and the GNU project, and they pretty much advocate for putting restrictions (like those in the *GPL licenses).

Because the Free software movement it not about doing gifts and not having (developer) restrictions. It is about ensuring end-user rights. And this arguably requires putting restrictions.

What you describe is something else, more in line with what permissive licenses do (which do allow someone else to put restrictions, which is the whole issue). Most permissive license still require attribution though. Your code is still yours. In some jurisdictions, some form of "yours" cannot be given up at all (moral rights).


> It's silly to place restrictions on a gift, in my view.

Is it silly to give it to select people, though? Rhetorical question, because the vast majority of gifts are given like that.

That's what I wish to do. If I ever wish to create a truly open-source project, it will be truly open source.

I've been following Denis Pushkarev's story and to me it looks like nowadays doing open source is asking for headaches which are too much for a single person.


> It's silly to place restrictions on a gift, in my view. When you release free software, you gift it to the world.

You beg the question, though. "When you release free software" already assumes you're releasing free software. The GP doesn't want to release free software, they want to release software with restrictions, as is their right.

I also want my software to be used by hackers and hobbyists for free, but I want anyone making a profit on it to pay me. Why would I donate my work to their for-profit company, when they don't even share alike? That's not even the spirit of open source.


> I also want my software to be used by hackers and hobbyists for free, but I want anyone making a profit on it to pay me.

All I can say to such things is that I'm glad Linus didn't take this approach.


I guess he didn't have to worry that AWS would sell his kernel as a service for ridiculous profit.


They do precisely that: it's called EC2.


> No vulgarity (dirty jokes, swearing words, etc.).

Antithesis of "promoting fun"


Sounds good, doesn't work.

>Be inclusive with the community around this software. Foster an inclusive and welcoming environment for all individuals, free from discrimination, harassment, or exclusionary behavior.

(a) No vulgarity

(b) Mind the cultural differences

(c) No aggressive behavior.

(b) determines what is counted as (a), some is partly valid for (c)


It is a crayon license [1], pure and simple. Not to mention that it likely runs afoul of every reasonable definition of open source out there, despite appropriating the term.

[1]: https://lists.opensource.org/pipermail/license-discuss_lists...


Agreed. Good old programmer humor lives and dies by being harmlessly offensive.

Now if you'll excuse me I have some yaks to shave so I can get on with whipping some llama ass with this large trout.


I hadn't slapped anyone with a large trout in a very long time. Thanks for the reminder :-)


A Code of Conduct posing as a licence?


CoCs only deal with the community part, IMO. Licenses can say about so much more — Even coding activities.


>The Rejoice of Fun

>No vulgarity (dirty jokes, swearing words, etc.)

This license does not sound that fun.


Love the intention of this! I'm part of this community [1] which also has similar intentions of programming as fun, rather than as goal accomplishment or as a tool.

[1]: https://chaitinschool.org/


https://choosealicense.com/ is a good resource that lists a bunch of licenses explained.


I have also written a more comprehensive resource here:

https://writefreesoftware.org/learn/participate/choose-a-lic...


"Interesting" that a page run by github/microsoft doesn't particularly encourage use of the AGPL.

(you have to click "more licenses" to see it)


While I can see why a company like Microsoft might not want to promote AGPL, it remains a pretty controversial license in general.

https://bugs.gentoo.org/737708


This aligns with CUPID Joyful Coding [0] by Dan North.

[0] https://cupid.dev


Lovely! Thank you! Reading now.


This is not an open source license. The restrictions make it nonfree.


It promotes use of non-free graphics editing software. Pass.


Better to use Just4Fun Licence




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: