20

I've been thinking about the feedback over code licensing, and it seems like there's a significant gap in thinking between two portions of the user base - one that wants attribution, and one that doesn't expect any. I think it's more central to the issue than we're giving it credit for, and I'd like to open a discussion - without taking a stance - on how we should resolve it.

On some sites like Skeptics, I can see more clearly why someone would expect attribution for their work. Still, on others like Stack Overflow, I can also see why someone could expect to not receive attribution for a small one-line code contribution.

I realize this issue isn't as generalizable as I'm making it out to be - but unfortunately, we have no choice but to generalize. Licenses apply globally, and as a global standard for what warrants attribution, we have a bit - but not much - leeway in figuring out how it needs to be set.

With that said, I'd like to avoid taking a direct stance on it in order to open this up to as wide a range of opinions as possible, and hopefully take us a couple steps closer to a consensus.

What content posted on Stack Exchange warrants attribution? Not from a legal perspective, but in an ideal world - why that content? If you're excluding something, why are you excluding it?

  • 4
    It might be more accurate to draw a distinction between those who want attribution, those who don't care, and those who actively dislike the idea of anyone receiving attribution in principle or in practice. – Nathan Tuggy Jan 15 '16 at 22:08
15

I haven't posted code (well, once or twice in a question, but that code was broken, hence the question), but I've posted quite a bit of text. I'm answering the broader question.

If somebody is taking work that I put effort into and republishing it, I expect attribution. This is true regardless of the site; my creative efforts are just as valuable to me whether I posted them on Writers, Worldbuilding, or Mi Yodeya, and whether they form part of my professional reputation or are just hobby work. You're welcome to use what I posted -- that's why I posted -- but the decent thing to do is to give me credit when you share it with other people. Regardless of any legalities, any licenses, or any financial implications, this is the moral right I claim.

(Sure, there's some lower bar of triviality where that doesn't make sense -- I'm one of hundreds of people who could have pointed out your error in a sentence or a couple lines of code -- and I don't know how to draw that line.)

Now here's where code seems different to me: for most of my contributions, the only way you could misappropriate them is to republish without attribution. Answers on The Workplace don't lend themselves to being embedded in closed-source systems. Code, however, does, and I think that's why the licensing issue is causing such consternation. If we were only talking about people republishing your work on their blogs, CC-BY-SA already covers that just fine.

The closest I can come is this: it's possible that some of my work (say, on Writers, in the technical-writing tag) has ended up on some corporate wiki on a private network. If so, they might or might not have linked to the source or otherwise credited me. Does that thought bother me? Yeah, a little, because it's a little rude and doing the right thing is so easy (so why didn't they?). Will I ever know about it? Probably not. If I do know about it, will I do more than send off a polite note saying "hey, you should link to that"? Probably not. Do I have any illusions that the presence or absence of a license will change either their or my behavior? No, not really.

So, bottom line, I expect attribution when my work is being republished, and I don't really know what the answer is for embedded reuse without explicit publication, but it feels like it could be different. (Also, I am not expressing an opinion on code-license terms for SE.)

  • I would partially agree with you except that when talking about code, it's not natural to judge if there's a threshold of creativity and it's not that easy to attribute. – Marco Aurélio Deleu Jan 15 '16 at 19:07
  • 2
    @MarcoAurélioDeleu yes, I grant -- and do not have an answer for -- the problem of judging what's trivial and what's not. I don't think that's just code, though; if somebody asks a grammar question on English Language and Usage that can be fully answered in a sentence, is that answer as trivial as a few lines of boilerplate code? Anyway, I'm not trying to make any pronouncements about code; I'm just explaining how I feel about attribution, which is what was asked. – Monica Cellio Jan 15 '16 at 19:09
  • @MarcoAurélioDeleu, "when talking about code, it's not natural to judge if there's a threshold of creativity it's not that easy to attribute." You don't need to judge: that is for courts. Assume the threshold is met. As for attribution, it's not that hard. You'd have to be spectacularly lazy to find it difficult to comply with CC-BY-SA 3.0 or any other attribution-required, sharealike license whose terms are stated so clearly. – sampablokuper Jan 16 '16 at 11:57
11

Anything that is creatively mine should be attributed to me. There are some things that aren't creative and other things that are. If I'm creating something new, either totally new or synthesizing multiple sources together to create something new and expending effort to do so, I should be given attribution for that effort.

I think that Jeff said it best in the 2010 blog post titled "Defending Attribution Required":

The whole point of Stack Overflow, Server Fault, Super User, and every other Stack Exchange site is to give credit directly to the talented people providing all these fantastic answers.

The CC BY-SA 3.0 license defines "appropriate credit" as in the informational dialog (click on "appropriate credit"):

If supplied, you must provide the name of the creator and attribution parties, a copyright notice, a license notice, a disclaimer notice, and a link to the material. CC licenses prior to Version 4.0 also require you to provide the title of the material if supplied, and may have other slight differences.

There are some things I'm willing to let go, such as including the full license text. I'd be OK with naming the license (and version) instead of including license text, especially if it's a widespread license. But otherwise, I do agree that property attribution includes the name of the author, the name of the license used, and a link to the material.

I also believe that this credit should be visible in both open-source and closed-source software distributions. In an open-source application, perhaps in-line comments with attribution is sufficient. But if people don't have access to the source, there is effectively no attribution. The attribution needs to exist when people download the source or download an installer or binary files.


I think there's another side, too. Why do you use Stack Exchange?

I primarily use Stack Exchange for professional development - Stack Overflow, Programmers, Project Management, The Workplace, Software Quality Assurance & Testing. When I'm answering these questions, I'm not only helping people, but I'm building a professional reputation. If people take things that I've spent energy to create and don't attribute it to me, it's harder for me to build professional reputation and a solid demonstration of my knowledge base. For me, having more incoming pointers to my posts on Stack Exchange sites is important.

But not everyone sees it that way. For example, I don't necessarily care about my posts on Photography or SciFi & Fantasy or Gaming. These are hobbies to me and I'm not trying to build a reputation. I'm just trying to be helpful. There may be hobbyist software developers contributing on Stack Overflow, Programmers, or Programming Puzzles & Code Golf who don't care about attribution.

I'm wondering if there's a correlation between why you use SE and what attribution you expect from your contributions.

  • 1
    I suspect you're correct that why you contribute influences what attribution you want. I know that I recognize and trust certain names across the SE network based on finding helpful answers that they've provided. Frankly I would also be more likely to hire those people if the need/opportunity arose. All of those impressions were made by my interaction with SE directly not via comments in code. Also I'd be worried about my name being tarnished if a comment was associated with code that was later modified incorrectly. A reader wouldn't always click the link to verify my intent. – Erik Jan 16 '16 at 0:11
  • As such I'm generally happier if people don't have my name in their source code, and people build an impression of my abilities through my posts on the SE network. Personally I'm not trying to use SE to build "my brand", but if my actions do influence people's perceptions I want it to be in a way I can control more effectively. – Erik Jan 16 '16 at 0:14
  • Interestingly, the opposite view -- "professionals should not care about attribution" -- was expressed pretty strongly on the original licensing post. – Josh Caswell Jan 16 '16 at 8:52
  • 2
    The exact same sentiment is why I think an attribution requirement for code is moot - at this point in time you'd need to be some kind of genius to creatively do something new in code, and we do not have this kind of Genius on SO (and if we had I'm sure they would figure out how to add a license on their own). Case in point, your highest voted answer with code seems to be for "how do I print the python version", and if you ask for attribution for that it would certainly give you a reputation, but not the one you are looking for. People just overestimate the value of code. – Eike Pierstorff Jan 16 '16 at 10:18
  • I agree however that your explanations why something works should get deserved attribution, but for that rep on SO seems a far better mechanism that comments in somebodies codebase. – Eike Pierstorff Jan 16 '16 at 10:21
  • 2
    @EikePierstorff It does not take "some kind of genius" to do something new in code. In fact, you don't need to do something new or novel to copyright it, just create something that requires a "minimal degree of creativity". For example, a particular implementation of an algorithm in a particular language can be copyrightable even if it has been implemented in other languages or other ways in the same language. Not all code on SO meets this threshold of originality. But some code on SO does, and lots of code on other sites also does. – Thomas Owens Jan 16 '16 at 14:00
  • @EikePierstorff Comments in a code base are insufficient attribution. I don't want my attribution in comments in a code base. I want it in a separate file - one that gets distributed with binaries, or a credits page of a web app. Reputation on SO is a good indicator. But having pointers to those contributions and my name associated with them is also a positive thing. – Thomas Owens Jan 16 '16 at 14:03
  • 2
    @ThomasOwens that last comment about the nature of the attribution seems pretty important; you might consider adding that to your answer. – Monica Cellio Jan 16 '16 at 23:40
  • @MonicaCellio Done. Thanks. – Thomas Owens Jan 16 '16 at 23:47
-2

This is my first look inside SE, but I came across, and want to post a replay here - and perhaps widen the scope.
I have been working on my Linux laptop for four years and I collected a lot of knowhow, written down in my knowhow disk, accessible only to me. Well, today I happened to think, how it wold be more valuable to transfer it piece after piece into Ask Ubuntu, while it would be enriched by the knowledge of the others, the Real Gurus. My knowledge would get potentiated!
But: whom will that belong at the end?
- I think that the Names of the contributors must stay there, visibly.
- Attributions, and contributions must show the weight of the work. Say: with badges like "Project-Leader-Attributions" as well as "Project-Contributions". But then: whom would all that belong now? And in the future?
Many years ago I happened to observe how much fine knowhow was literally "fermenting" on the sites of OpenSuse. Then it was sold to Novell: in one month the sites disappeared, as Novel had its own knowhow and its own sites. I mention here only one item: their Support Database. It had been a wonderful collection, and source, and it wasn't there any more!
I am "too young" here, I don't know a lot about this place. But what if an Investor buys Canonical out? Therefore we must at least own our own reputation.

-4

As a full-stack developer and hobbyist, I don't think my answers should come with more attribution than a sincere "thank you", and the corresponding upvotes/downvotes/acceptances.

I understand the fears of people using SO as their personal portfolio, but we should be doing this voluntarily. This is a Q&A platform. If attribution is embraced in some way on all code snippets (different from answers as a whole, reposting an answer from someone as yours IS bad), I'll no longer be able to use SO for my professional projects, because I don't own the code written at my work and I don't pick what can be inserted as a comment and what cannot.

I truly believe that code posted on SO should be CC0/Public Domain, I'm not the only one that thinks this way and for sure I won't be able to comply with the license requirements if they're enforced aggressively.

  • 6
    You'll stop using SO because you don't own the code, but you'll post your code where it is CC0? If you don't own your code, you can't post it on SO now since you aren't legally allowed to provide it as CC BY-SA (nor would you if code was CC0 for the same reason). I don't think you understand how copyright and licensing work. – Thomas Owens Jan 15 '16 at 20:18
  • 2
    i can write code myself without it being property of my company, but i won't be able to write random comments in my company's code. you misunderstood me. read again, please. – CptEric Jan 15 '16 at 20:19
  • 7
    Again, please go learn about copyright and licensing. Today, CC BY-SA requires attribution on anything under the license, including code snippets. Anything that meets the threshold of originality is covered by the license, which requires attribution. Under both systems, you are legally unable to post your code to any SE site if you don't own it, since you can't grant a license to something you don't own. – Thomas Owens Jan 15 '16 at 20:22
  • 3
    Also, you're effectively saying that your company has a policy against open-source software. All major licenses (MIT, BSD, Apache, GPL, LGPL, and so on) require attribution when the source is used, in addition to other requirements. – Thomas Owens Jan 15 '16 at 20:23
  • And Again, learn to read properly, this is embarassing for both of us. i don't post my company's code here, and i haven't yet posted a question asking for something on that code to be fixed, but if i DID, i could not given the required attribution. – CptEric Jan 15 '16 at 20:24
  • 9
    I'm saying that if you can't attribute the code, you can't use the code today either! Attribution has always been required for all code that meets the threshold of originality. – Thomas Owens Jan 15 '16 at 20:25
  • and i've told you that i haven't, i'm a net contributor to the SO community given that i haven't posted any work-related code question yet. but being an Answerer, or whatever is called in correct english language, i FEEL and BELIEVE truly that code snippets should be CC0/Public Domain , and it's not a legal POV, it's moral. CC0 is a recognised copyright liscense. – CptEric Jan 15 '16 at 20:28
  • 4
    It's OK to assert that you believe, in the future, code should be CC0. However, law matters - you can't ignore it. Today, attribution is indeed required for all content taken from any Stack Exchange site. And until a formal change is made, your contributions in the form of questions or answers requires you to grant a license to have it displayed and used by other people. That is fact and everyone who uses the service should read and understand the terms of use and license agreement first. – Thomas Owens Jan 15 '16 at 20:33
  • 2
    well, after all, this is what the question raised, right, "What sort of attribution should Stack Exchange members expect for their work?" it's a matter of belief, not a matter of law. the question could be easily changed to "Do you believe attribution of your answers should be an enforced feature ?" and i explained the reasons i believe it shouldn't . If i wanted some sort of attribution/retribution, i'd work at an IT call center. – CptEric Jan 15 '16 at 20:37
  • 1
    @ThomasOwens the fact that it has always been required doesn't change the fact that a lot of users are just getting to be aware of that now because it's being discussed. As soon as this discussion is over and a change is made, if the attribution stands by, most users will still not be aware of that. – Marco Aurélio Deleu Jan 16 '16 at 10:24
-5

Without writing a huge post, my thoughts are:

  • Code shouldn't require any kind of attribution;
  • Code License should be permissive (to allow close-source developers to get help from SE);

Developers from all around the globe, working for huge or tiny companies/projects go to SE not to have their minds worried about copyright issues, but rather to get an answer to a question.

Since we're exclusively talking about CODE I think it's safe to assume we're talking about developers (regardless of it being SO, Code Review, Programming, etc).

  • I'm curious about the questions I posed in my answer. Why do you post on Stack Overflow, Programmers, Code Review, etc? Are you a hobbyist or a professional? Are you using these SE sites to build a professional reputation or for some other reason? – Thomas Owens Jan 15 '16 at 18:45
  • @ThomasOwens I pay my bills by working as a Software Developer. I guess that makes me (to some extent) a professional. I also love to write code (hobbyist?). I usually post Questions when I have some struggle for quite some time and it's pretty nice when I get to use my own knowledge to help someone else solve a problem. – Marco Aurélio Deleu Jan 15 '16 at 18:49
  • I just want to fully understand: you aren't using Stack Overflow, or any other Stack Exchange site, to build a professional portfolio or help with professional branding, correct? You don't necessarily care about enhancing your visibility to the greater software development community by contributing things on any SE site. Is that a fair statement? – Thomas Owens Jan 15 '16 at 18:51
  • @ThomasOwens If this were one of those Forms, I think I would check the I don't agree nor disagree with that statement option. To some extent, it doesn't hurt to enhance my visibility, but if that's not the outcome, I don't mind. I wouldn't restrain myself from helping someone at SO just because nobody would upvote me or pay attention to me. In that same reasoning, I wouldn't want every developer in a project to be aware that some code snippet in their project was taken from an answser of mine. – Marco Aurélio Deleu Jan 15 '16 at 19:00
  • 3
    That's kind of my point. My stance of "I need my creative work to be attributed" is because I use SE to enhance my professional reputation. I gain more visibility if people are required to (and actually do) mention my name and link back to the source material. If you don't care one way or another, you don't necessarily care about attribution one way or the other. – Thomas Owens Jan 15 '16 at 19:02

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .