Not everyone active on Stack Overflow is active at SE.Meta. For those users, they can upvote (thanks to cross-network bonus) but not downvote (that requires explicit participation on this Meta, not the SO.Meta).

Basically, StackExchange is imposing these asinine changes on StackOverflow users because of votes from people who have probably never written a single line of code in their lives. What kind of ass-brain would run such a s- oh, wait, he's also behind Discourse.

Basically, StackExchange is imposing these asinine changes on StackOverflow users because of votes from people who have probably never written a single line of code in their lives. What kind of ass-brain would run such a s- oh, wait, he's also behind Discourse.

Even without people who can't participate because of this silly restriction, this announcement has an internet pointz score of -211 (130 upvotes, 341 downvotes)... meaning that the majority of people voting for this hate the idea.

##How did we get there?
Despite a top-voted analysis that said, basically, "Please don't do this", Stack Overflow staff billed the feedback as "highly positive". This ignored the fact that some people upvoted the question because they thought that licensing was an important issue that deserved attention, rather than because they agreed with the proposal.

I think we've learned our lesson this time. This question has been downvoted off the front page of Meta.SE. Is that a clear enough signal? If not, then what would constitute the "showstopper" that you require?

Jeff may not be running the show there any more, but he taught his successors well.

Update (Dec. 22): Thanks, everyone, for your feedback to this proposal. We're going to digest this one over the holidays and should have a follow-up announcement answering your questions and addres...

Does this potentially make answering pre-February 2016 questions illegal after that date?

If someone asks on January 31st:

I have this code, it doesn't work, how can I make it work?

then two days later, I might know the answer and just copy his code, change a few characters to make it work and post that as an answer. Except, that I am not allowed to. His code is licensed CC-BY-SA but by putting it in my answer, I would license it as MIT. I am not allowed to do that.

Is this correct, or am I missing something?

Of course to make it legal I can answer it like

In line 5, you have to change the 3rd 'a' at position 16 to 'b' and in line x...

Thanks for the heads-up. I need to inform my employer that it is legally dangerous for our staff to ever use StackExchange ever again, because there's no way we can possibly attribute every possible instance that someone might copy a line of code (or type in something from memory that was once learned from SE, or copied from another project that copied code from SE.)

It's like the GPL, but with less political activism and more stupidity.

This is why licensing code sucks. I have a feeling that if SO code was public domain from the start, we wouldn't be having these headaches and the way people use SO wouldn't even change. Just to prevent people from having these headaches with my own code I use the unlicense...

Jeff may not be running the show there any more, but he taught his successors well.

The mods on stackexchange are all Jeffs, as well as most of the active users. The non-Jeff users get annoyed at the Jeffs and eventually stop posting. The chess stackexchange is mostly OK but that may just be because there aren't as many users. I spend a lot more time on quora for chess questions, also reddit (which has its own set of problems).

I'm kind of curious as to what people's objections are, it seems pretty harmless

People working for places that are still allergic to the idea of open source code and people who are dishonest enough to make an living copy pasting code from the internet but honest enough that they'd admit it if required.

The problem with corporate legal departments is that they want to be certain that they won't be sued.

SO might be saying that you need only to post a link in your comments above the quoted code, but a lawyer's not going to just assume that that's the end of the discussion. What if you didn't make a perfect copy, but implemented the illustrated concept with new code? What if you converted the function to a different programming language? What if you wrote new code based on the discussion? What if you copied it for a throw-away test app and then wrote new code for the production build based on what you learned from the test app? What if you discussed the concept with coworkers and they wrote new code based on what you discussed? What if six different people posted the same code in response to six different questions and you only know about (and therefore only read) one of them?

How many degrees of separation will be necessary before there is no longer the need for attribution? An informal posting on SO's meta group isn't going to be sufficient for any lawyer to decide on. He's going to need to see the full text of the license, along with all kinds of similar case history to determine what the boundaries are to avoid losing a suit, and what the other boundaries are to avoid someone bringing a suit in the first place.

I think in most cases, employers are just going to say "it's not worth the expense to figure this out, so employees are no loner permitted to read or contribute anything on SO and its related sites." So everybody loses.

(Weng): We need to buy a license for this, the license says it's free for personal use only. (Vice President): My other team uses it freely, you are wrong!: Here, have a link to the license.: My other team uses it freely, you are wrong!: Maybe we should ask Governance or Legal?: No! My other team uses it freely, you are wrong!

About a month later he was forced to admit that he was having problems implementing ICMP pings. (Mgt fuckup #3: Much later, after he left, I discovered by Googling an obscure comment in his code that he'd actually copy pasted (far too much) code from Berkley's ping utility. The successor implementation did it in around 15 lines.)

Libraries tend to slip through the auditing cracks because they tend to be "A bunch of DLLs and some CHMs" which are the kind of stuff that tend to appear autonomously on developer machines ALL THE TIME.

Point is, you don't want to get sued over the lack of said attribution, and you don't want a legal battle on when exactly their code stopped being their code and became your code, etc, etc.

Plus it's okay if it's a swath of code, but gets kinda silly if you get an one-line answer, and now you're legally forced to attribute. Imagine an answer like "oh, you have a typo here, it should be List<T> list = new List<T>();". You fix the code without thinking, and then bam, legal action.

How do I use the WTFPL? Step 1. Download or copy/paste the full text of the WTFPL and distribute it with your work. A common file name for the license file i

Why is there no “no warranty” clause?

The WTFPL is an all-purpose license and does not cover only computer programs; it can be used for artwork, documentation and so on. As such, it only covers copying, distribution and modification. If you want to add a no warranty clause for a program, you may use the following wording in your source code:

[code]/* This program is free software. It comes without any warranty, to
* the extent permitted by applicable law. You can redistribute it
* and/or modify it under the terms of the Do What The Fuck You Want
* To Public License, Version 2, as published by Sam Hocevar. See
* http://www.wtfpl.net/ for more details. */[/code]

By fixing a typo you are not instantly the author of a creative work that falls under copyright protection.

In general, copyright protects expressions that contain a certain amount of originality. It doesn't protect ideas and algorithms (that's something for patent law) and it also doesn't cover the straightforward implementation of such an idea, for example, when an API or framework dictates how something must be done. You have to be able to express the same idea differently. And if you do express the same idea differently, it is also ok. Copyright law doesn't forbid plagiarism. (see also here on Wikipedia)

Boss: You're gonna be writing C# in Visual Studio and please use ReSharper to enforce the coding style.

Intern: So where do I get the company licenses for those?

Boss: Here's a tool to crack it.

Meanwhile at a Hungarian music club:

Me: I use hardware synthesizers.

Other keyboardist: Software synths sound much better, you should use those instead and it's a way cheaper option.

Me: But the total cost of laptop, MIDI controller, VST host and the softsynths is as much as my current hardware rig.

Him: Theoretically yes, if someone buys the software.

Meanwhile in a Hungarian university:

Instructor: This course is about MATLAB and there will be homeworks.

Me: So how do I get a free student license?

Instructor: You can download it from torrent. Or you can try to find a time when the computer classrooms are empty and write your homework here.
...

Instructor of another course: On this course we're gonna use Spartan for molecular simulations. There is a free student version but it cannot do everything that you'll need for the homework so here's a link to download the cracked version. Theoretically you can use it in the classroom but the simulations you need to run take 8-12 hours to finish.

To be fair, if I do copy a function from a website, I always add the website URL to our codebase. At least until I start rewriting, at which point all bets are off.

I do exactly that - if it's a function then I put the URL in a comment in the header, not least because there are often discussions / comments at the URL which explain why this is a better approach than others.

But I sure as hell don't attribute a 2 or 3 line piece of code (last night, I lifted a 3 line snippet to copy a memorystream to disk, for example) and won't start doing this, just cos The Jeffs say so.

Edit: This is what I copied, pasted, and then subtly changed (because I wanted to return the byte[] rather than write directly to disk) - do the Sons of Jeff seriously expect me to attribute this?

Like @blakeyrat, I tend to put a link to the webpage that provided the solution. But only because the solution is often to a difficult or obscure problem, and the solution is also a bit difficult or obscure. There's usually discussion around the solution, including WHY it is the way it is. The link is there for the next developer who comes around and says

"Wow, this looks stupid. Why did they do it like this instead of Y. I should just change it to Y-- wait, what's this link? Hmm, this discussion says Y won't work because of obscure ZZZ thing. Good thing it is the way it is, or I would have dumped dozens of hours into this."

On the other hand-- 99% of the time the code on Smurf Overflow is wrong, and requires reworking just to get it to compile.

In conclusion, if Snack Oedipus becomes a selfish pile of shit, then I'll just do what I did for Sex Exchange; blackhole the domain, and go to the second result in Google instead.

On the other hand-- 99% of the time the code on Smurf Overflow is wrong, and requires reworking just to get it to compile.

An issue made worse by the mentality that it's OK to vote up a dirty hack instead of a proper solution. Assuming of course someone's spent more than ten seconds trying to come up with a proper solution.