[clean room vs. looking at source]
Remember that people are different: I, for example, am a 'specifications' type of programmer - I prefer to write code from specifications, I don't care much for looking at source and avoid it if I can - it's not particularly interesting. It's more interesting to analyze data traffic if there are no specs. Low-level analysis, that's the thing.
I'm actually implementing something right now on a "clean room" basis - another guy in another company is looking at some reference source, but fortunately he's not having to write up all the specs from that, the specs are documented. But he is able to clarify weak spots in the docu.
We are talking copyright law here not patents. If you get an idea from reading some code and then write your own code using that idea no harm done. Actual ideas are subject to patent law, if applicable, not copyright law.
If what you are saying was a problem then authors would never be able to read books. How crazy would that be?
I am aware it is copyright law. I have no problem writing code that is inspired by reading someone else's code, and am happy to give credit to the author. OTOH when the license is restrictive I prefer to avoid looking at the code so there is no possibility of inadvertently duplicating any portion of it.
I am aware it is copyright law. I have no problem writing code that is inspired by reading someone else's code, and am happy to give credit to the author. OTOH when the license is restrictive I prefer to avoid looking at the code so there is no possibility of inadvertently duplicating any portion of it.
The term restrictive, like viral, is a tad loaded here. Every licence is restrictive and recursively so, therefore viral. That's even true for generic copyright and the MIT licence.
So, it's not that there are restrictions but rather what those specific restrictions are.
PS: I'm thinking the clean-room approach is prolly over the top carefulness aiming to avoid patent problems rather than copyright. I don't think even SCO went down this road in their hugely over-funded lawsuit, they were gunning, instead, for actual verbatim source copying into Linux.
Clearly not all licenses are recursive. If I offer you a copy of my work under licensing terms that forbid you to copy and distribute it that prevents any recursion.
The clean room approach, famously used by Compaq to create an IBM PC clone, does not help you with patents at all. You could potentially end up recreating the patented technique in your "clean" version.
I do agree that the "clean room" requirement is ridiculous. As I said, applied to authors of detective novels they would never be allowed to read each other books.
The term restrictive, like viral, is a tad loaded here. Every licence is restrictive and recursively so, therefore viral. That's even true for generic copyright and the MIT licence.
So, it's not that there are restrictions but rather what those specific restrictions are.
PS: I'm thinking the clean-room approach is prolly over the top carefulness aiming to avoid patent problems rather than copyright. I don't think even SCO went down this road in their hugely over-funded lawsuit, they were gunning, instead, for actual verbatim source copying into Linux.
Good point, every license does have some restrictions so what I really meant to say was "has restrictions I can live with". Giving credit to authors when I use their code and allowing my code to be copied and distributed I can not only live with, but is something I prefer to do.
If I offer you a copy of my work under licensing terms that forbid you to copy and distribute it that prevents any recursion.
That process, of prevention at all further levels, is a recursion in it's own right.
Using filler terms like viral and expecting it's original meaning to fit perfectly is falling for some smoke and mirrors me thinks. I could just as easily say that demanding non-disclosure is monopolistic behaviour and therefore must be avoided by everyone at all costs.
I see what you mean, but I just don't see it that way. If all is working correctly there are no further levels. Hence no recursion. Of course things don't always work according to the book. Any way the point is that some licences are designed to promote reproduction, mutation, and spread of a work, and some are designed to prevent it. In common parlance the former style has become known as "viral", a word often used when describing the GPL for example.
You are right, we are just quibbling about about words. But there is common usage to be aware of so as to try and avoid confusion.
I see what you mean, but I just don't see it that way. If all is working correctly there are no further levels. Hence no recursion.
It's still implied by the nature of the demand whether it occurs or not. That's no different for share-alike type licences, I bet some sources never get reused at all.
... Any way the point is that some licences are designed to promote reproduction, mutation, and spread of a work, and some are designed to prevent it.
That's just a point of view only. Typical FUD.
... But there is common usage to be aware of so as to try and avoid confusion.
Meaning? ... that viral should be associated with sharing? That sounds remarkably like a negative spin on a positive feature to me.
Using the term "viral" in context of describing licencing is wrong.
I've been thinking about this while getting the monitor documentation completed...
A virus is a thing that can invade a cell and modify it so that more of the virus is produced. The cell is an atomic thing, standing alone and when not infected, capable of serving it's purpose and reproducing.
So let's talk about that for a minute. Virus in the medical context is negative. We almost always don't like them because they make us sick and do various kinds of harm. However, we are beginning to like some kinds of virii more because we can use them as carriers to complete various medical tasks we find very important.
Viral in the social meme context is generally more positive. When we produce creative works and share them, other people sharing them also generally means a rapid accumulation of mindshare, and that can be traded upon, leveraged in various ways to benefit both the creator and those who share the works. There is a negative component in that lots and lots of sharing of things makes noise, which we generally find undesirable and often not productive, though potentially highly entertaining!
IMHO, the case for viral being a strictly negative connotation when associated with licensing is subjective. Really, more context is needed to properly frame all of that up and understand whether or not the intended and implied meanings are negative or positive. Maybe it's neutral too.
In the negative sense, Microsoft called the GPL a "cancer" which isn't really calling it viral, but it is linked to the medical implications of both words, and this is negative no doubt. It is negative to them for a few reasons: One is having to compete with software that doesn't have the revenue expectations their software has attached to it. Another is the wide availability of code that cannot be reused without the body of code it gets incorporated into being open as well. Given they produce mostly closed software for high margin and profit, this is a very high cost and impractical license for them. They have yet to recognize that alternative for profit licensing of GPL code is an option. IMHO, failure to discuss this in their negative framing is dishonest and a raw manipulation people should be critical of. Finally, they cited risk. One could accidentally incorporate GPL code into something closed and be forced to open it. Again, they fail to mention the "open all of it" remedy is rarely applied, again dishonest. There are lots of ways to resolve GPL code incorporation into closed code issues, requiring only a discussion to start.
IMHO, many GPL fans, myself included, get defensive at that kind of negative framing. Personally, I see various costs associated with software and those cost options simply vary. With closed software, the cost of source code access is dollars and sharp limits on what may be shared or incorporated or even compiled. Those are high costs. GPL costs are high too, just different. GPL software requires that derivative software generally be open. (yes, I simplified that for sanity in discussion and some lame *** attempt at brevity I know I am botching miserably)
But is that viral?
Seems to me in the loose sense it is! With the closed model, I see Heater being exactly right about it. Licensing closed source code really is all about not sharing that code for the purpose of building executable object code that people pay for and generally cannot modify. That's not viral at all in the code sharing sense. Really, this looks a lot like cells, each atomic, each capable of serving it's purpose and only reproducing when strictly necessary and value is added for doing so. GPL code is much more aligned with viral in that the source code is available to anyone, building is encouraged, modifying and reproducing is encouraged too! The requirements all add together to grow the body of available GPL code so that everybody contributing to that body of code sees a very high use value with few real dollar costs attached.
Both "cancer" and "viral" apply perfectly to GPL code!
But is that negative?
This is the crux of the discussion I saw so far. If you are in the business of selling, supporting and training on closed software, a growing body of open software that people can pick up on, use, grow, do, build is kind of a negative thing! Should that body grow large, how then will money be made with closed software? Great questions, and frankly a dynamic I think works very well. Closed vendors are forced to continue to add real value or they will see their closed software devalued by open software that offers the same capabilities. That is how it should be IMHO, because then we are paying for real value added through innovation, not rent seeking kinds of behavior where contracts and licenses mandate revenue that really has more artificial value than not as time passes and technology continues to advance, but that's just me.
On the other hand, let's say you make products and software is a component like other components are. Packaging, enclosures, circuits, software, data, etc... all combine into a product that is sold for profit. Now the equation flips! Suddenly, that growing body of GPL code is a really good thing! You get free components that keep costs out of your product, and if you are careful and plan well, you can employ open software for most, if not all the product, and employ small bits of closed software where open isn't possible, practical, legal, viable.
A third "hand" might be the student, or garage innovator, researcher, scientist, writer, creative. These people use software to many different ends and are highly likely to select software licenses that make the most sense to them. A creative person may well invest many dollars into closed software that adds a lot of value to their work because they are about making work for money and the cost of the software to them is inclusive. Getting free to use software that requires more labor, or that isn't as feature rich as closed software is represents a net higher cost because labor costs to them mean fewer works, lower quality works and in general high opportunity costs. A scientist or researcher may well prefer open software in many cases so they may engage in peer review or build on their works together. Open code adds a lot of value in that the process is malleable, code can be shared, things reproduced, discussed openly and in journals and all manner of things.
The product producer may really appreciate both GPL and MIT! GPL licenses are seen all over the place and have modest requirements attached to them easily incorporated into products. MIT works in a similar way, both providing resource choices that are lean in terms of capital, very high value for product oriented people. Viral in that sense is largely positive, IMHO.
So it's not strictly negative. Really. It's about context, and where we are coming from influences that context. I'm a fan of the GPL, and I frequenly refer to it as viral and I cite the use value of the body of GPL code out there as to why it's a good thing, and I also regularly cite the property of software that makes it all happen; namely, that a body of software can very easily be worth more than the sum of it's individual contributions! Adding to GPL code nearly always returns more than one invests, and one can always use the code with the minimum of investments should that not be the case anyway. Win-win for all but closed software producers, IMHO.
As someone who routinely has his books copied and indiscriminately posted on torrents and file sharing sites across the Internet, I'd say most of you are over-obsessing over this.
People copy, share, steal, or borrow whether or not there's a copyright or license attached to the work. Most people who might come here looking for help are working on their own projects, which will never be shared but could be commercial in nature. You'll never find out someone has used your copyrighted code without compensating you, either in money, deed, or acknowledgement, so why cry about it. If you're posting your code because you want to be adored, buy a puppy.
I suspect Parallax's interest in establishing a consistent license is for their corporate protection. For everyone else, if you post code thinking your rights will be followed, you're fooling yourself. Just admit that once you hit the Post button, your work is shared with the world, with nothing coming back except good Karma. Be happy you're paying forward the help you received when you started. You know, one good turn deserves another.
Every code example that I post on my own Web sites is in the public domain, or carries a copyright but with absolutely no restrictions. The text is Creative Commons, but mostly that's to keep people from lifting it for their Web sites only for search engine purposes, and not because they want to repost a (hopefully) useful article.
There are too many variations and interpretations for GPL. It's not needed, and counter productive, for code examples. A license for a code example is nonsense anyway, but if you feel you must use one, consider Creative Commons. It's far simpler, and as most people won't follow it anyway, is no better or worse than anything else.
... A license for a code example is nonsense anyway, but if you feel you must use one, consider Creative Commons. It's far simpler, and as most people won't follow it anyway, is no better or worse than anything else.
That's funny. As we have seen in a previous post, Creative Commons suggests that it's license not be used for code.
There are too many variations and interpretations for GPL. It's not needed, and counter productive, for code examples. A license for a code example is nonsense anyway, but if you feel you must use one, consider Creative Commons. It's far simpler, and as most people won't follow it anyway, is no better or worse than anything else.
The discussion about virility is not in reference to Parallax choosing a single licence. It's about the negative view of some of the earlier posts.
Potatohead: Has anyone mentioned that you make big posts?
I think it's fair to say that viral and cancerous were originally chosen explicitly for their negative connotations and very much deployed that way in the online war of words. And most certainly was used that way in this thread.
If one incorporates some closed source licenced code without careful management it can easily close an open source project. It only takes one mistake. The argument goes both ways equally.
Using the term "viral" in context of describing licencing is wrong.
Yes. I apologize. You are completely free to scroll them. I tend to think and write long form. Sorry.
I do disagree. Functionally, viral works very well and as to the negative, it's all framing. Frame it positive and it simply is. There is arguably a case for negative framing being harmful to OSS licenses. I tend to believe people are smarter than that, and where they aren't, the OSS idea doesn't work all that well for them anyway. And when that happens, maybe they learn something, smarten up a little and OSS is there anyway.
And there is the school of avoidance and the school of embrace and the one of confrontation. I'm inclined to confront and embrace, marginalizing potent language and potentially twist it to my own ends, denying naysayers a well crafted tool. To each their own on this, but that's how I roll more often than not.
(which should put my post above into better context, if it were not clear already)
*easily close or open OSS project / code. Well not really. There are a lot of options for people to employ to reach a resolution. Only one of them is an opening of the whole project for some code inclusion. I consistently push back on that meme because it really is a meme more than fact more often than not. What it does do is present cost and risk, both to be avoided IMHO.
May be I have had a fuzzy head after the holiday seasons festivities, or maybe we are separated by a common language but I have only just realized we are arguing at cross purposes and probably actually agree with each other.
The viral analogy for license terms is good. As far as any analogy goes. The terms of the license, the copyright legislation, the ability of licencees to copy, mix, mutate, append, re-transmit work can make the whole process seem like a virus reproducing in a host, and travelling from host to host. A "viral" license, like GPL, obviously has terms that promote this behavior. A non-viral license, as attached to most movies and proprietary software does not.
However I now see that you are not so much concerned with that observation, but rather with the negative, derogatory, connotations of the use of words like "viral" and "cancerous" to describe the GPL and perhaps other opens source licences. After all you do say:
Meaning? ... that viral should be associated with sharing? That sounds remarkably like a negative spin on a positive feature to me....Using the term "viral" in context of describing licencing is wrong.
Common usage of "viral" conjures up images of flu, bad diseases and sickness, but ultimately it all depends on context, I might also say that good manners are viral, education is viral, Christianity is viral. All good stuff.
"Cancerous" is interesting. First used to describe open source by someone at MS I believe. There are a couple of interpretations of that:
1) If you are a proprietary software producer having your customers suddenly realize they can create and share their own code is a cancer that will kill your business given enough time.
2) GPLed code finding its way, accidentally or otherwise, into your products will kill that as a money making product if anyone finds out.
I find it funny because in my mind MicroSoft is the giant out of control tumor that is sucking the life out of the computing organism.
I think even MS had toned down the use of such language to describe their opensource competition, they see it just makes them look like idiots.
Bottom line for me is:
"Viral" is just an analogy, with no positive or negative spin.
Cancerous" is just dumb. Open source is a very good and useful thing to suffer from isn't it? A cancer kills it's host. Open source (GPL or otherwise) does not.
I love the GPL the LGPL, the MIT, the BSD etc licenses and the spirit of open cooperation they promote. I can also respect a software producers desire to get a fair reward for the effort they put into creating something and that that might require a traditional restrictive license.
Re: Code in the forums, should it have to be released as MIT or public domain?
Really guys and Gals . Its simple . a snippet of text ( license ) is not going to stop a Die-hard person from just Copy-paste .
None of Us have the $$$ to search every program posted with SPIN code so If person X uses Person A Code and does not follow Persons A License . There is NO way to know what person X used . unless they post it some where search able .
Or in laymans terms ...
If it( Code ) has Ever EVER EVER ! touched the WWW /Interwebs/Matrix . Its GOING to be Copyed and thus at some point be used outta License and that is that.
\
SO unless you can Live with that .,Hide In a tin box and Never post Code ANYWHERE .
Do WE here do this behavor . I dont Think so . but this forum is not hiddin so really any Drive By Bot or person can copy all the code and we will never know..
Parallax did a Very smart move with MITing the new code posted here ....... the one catch is gonna be the Grey zone of date of publish .and how it applys to Older code Re posted or the like....
Hey, to flip it around, a friend and I had a conversation in the mid 90's about this. OSS was on the rise, we both were into Linux big, building home bunkers running all manner of things, building software, writing code and advancing careers. The full Microsoft kit got dropped on my desk. "Just try it"
Out of all that kit, I really like Visual Studio, though it too has the same "viral" negative I'm about to put here. So I did, beginning to explore when we both decide to read all the legal that was printed realllly tiny!
Viral. Think in terms of skills, how we think, what we write with, read on, etc... Those basic skills for me were mapped to paper. Very few dependencies. Just need to make marks and carry stuff around at best. Jumping full on into that Microsoft kit meant mapping skills to it, just like it does OSS. Well, that went along fine, good things happening, until... Microsoft went and changed a lot of stuff and they depreciated the Alpha box I was running on. Really liked that Alpha, BTW. Fast machine, ran well.
Suddenly, those skills all just vanished, marginalized, gone. The other fine box on my desk was an SGI. It was a UNIX, and most of my OSS skills I mapped worked just fine! SGI end of lifed that machine because MIPS kind of crapped out, unable to make CPUs that would compete with Intel. OSS kept both the Alpha and IRIX machines relevant for as long as I wanted. Just boot strap the OSS tools onto them, then build a lot of software, edit here and there and go! The guys over at Nekochan.net are still running IRIX boxes with OSS and their skill mappings are still productive for them, etc...
So there are axis to viral. If one really gets tuned to Microsoft, when they change stuff, or raise a license cost to raise revenue those skills all attached to their stuff are viral, creeping into life, work, play, and suddenly you are on a chain, yanked this way and that, dollars falling out of your wallet for nothing more than the fact that they just want a little more causing it.
It all cuts both ways folks. Viral can be very bad, or very good. IMHO, with OSS it's really good. I'm a big fan, and I will always be a fan because those skills pretty much always work, and they don't cost much, and I can employ them on nearly any hardware I can name or get my hands on.
With Microsoft, it's all about dependencies. Once you've built up on a few of theirs, they will charge and charge and charge.... And Visual Studio with all of it's auto-complete fun gets you too, because when you don't have that spiffy stuff, it's harder to just type it out... Interesting how they work, isn't it?
***We both walked from that kit, using OSS to the maximum possible, mapping all we could, leaving application and OS skills as necessary evils and that continues through today. Viral was very negative in that context. Still is.
Bah! At this point I have to introduce you to a very nice guy called Bill who in 1976 said this:
An Open Letter to Hobbyists
To me, the most critical thing in the hobby market right now is the lack of good software courses, books and software itself. Without good software and an owner who understands programming, a hobby computer is wasted. Will quality software be written for the hobby market?
Almost a year ago, Paul Allen and myself, expecting the hobby market to expand, hired Monte Davidoff and developed Altair BASIC. Though the initial work took only two months, the three of us have spent most of the last year documenting, improving and adding features to BASIC. Now we have 4K, 8K, EXTENDED, ROM and
DISK BASIC. The value of the computer time we have used exceeds $40,000.
The feedback we have gotten from the hundreds of people who say they are using BASIC has all been positive. Two surprising things are apparent, however, 1) Most of these "users" never bought BASIC (less than 10% of all Altair owners have bought BASIC), and 2) The amount of royalties we have received from sales to hobbyists makes the time spent on Altair BASIC worth less than $2 an hour.
Why is this? As the majority of hobbyists must be aware, most of you steal your software. Hardware must be paid for, but software is something to share. Who cares if the people who worked on it get paid?
Is this fair? One thing you don't do by stealing software is get back at MITS for some problem you may have had. MITS doesn't make money selling software. The royalty paid to us, the manual, the tape and the overhead make it a break-even operation. One thing you do do is prevent good software from being written. Who
can afford to do professional work for nothing? What hobbyist can put 3-man years into programming, finding all bugs, documenting his product and distribute for free? The fact is, no one besides us has invested a lot of money in hobby software. We have written 6800 BASIC, and are writing 8080 APL and 6800 APL, but there is very little incentive to make this software available to hobbyists. Most directly, the thing you do is theft.
What about the guys who re-sell Altair BASIC, aren't they making money on hobby software? Yes, but those who have been reported to us may lose in the end. They are the ones who give hobbyists a bad name, and should be kicked out of any club meeting they show up at.
I would appreciate letters from any one who wants to pay up, or has a suggestion or comment. Just write to me at 1180 Alvarado SE, #114, Albuquerque, New Mexico, 87108. Nothing would please me more than being able to hire ten programmers and deluge the hobby market with good software.
Bill Gates
General Partner, Micro-Soft
How many falsehoods can you find in that message?
Anyway the message is clear, "You idiot hobbyists are to stupid to make code for yourselves, better you pay us to do it for you."
I think it's going to be a mix going forward on P2. P1 forced it really. Damn good thing. P1 will always be open enough to cultivate the open culture a lot of us like so much too. Honestly, that's a big part of why I continue to enjoy retro-computing and OSS software. It's just a good thing.
Not that paying for high value software isn't a perfectly reasonable and viable thing to do. It's not and I buy plenty. But I don't want to buy only. Never did, and I don't like dependencies in too many contexts either.
To be fair, Gates was envisioning the growth of computing and for that to happen, there was going to have to be dedicated programming efforts, and there really wasn't a center of mass then. Funding it had to happen somehow.
Later on, we did get a center of gravity on all of that leading to the rise of GNU / Linux, which arguably has empowered a lot of people to do a lot of things. Both models are acceptable, both have value, but they are not exclusive in my experience.
Never did like the negative framing Gates used though. It was annoying then, with a loooong trend after that. Painful. That same letter and value proposition, which is a perfectly viable value proposition as we all know, could have been framed very differently. Who knows what things would be like had he taken that approach? Some times very small things have very big ripple effects. Defining kinds of effects that endure a long time. I know that letter impacted me, and I must say that impact was not favorable toward Microsoft.
The Propeller Tool is a miserable closed source Windows only tool. The Spin interpreter and loader code in the P1 ROM was closed source. There was a lot of resistance in many circles to the P1 because of those limitations. Meanwhile the Arduino blossomed, a far less capable platform but riding high on the waves of open source. Both software and hardware.
How different the PII is.
Luckily the Gracie's and Parallax have embraced the open source approach. The Spin interpreter get's published, the loader gets published, propgcc comes on the scene, there is an open source Spin compiler. Good grief the entire design of the PII has been going on out in the open. It must be the first time in history that a processor has been designed on the fly with so much input from it's intended customers. Phenomenal. Even Heater has a tiny suggestion taken up which becomes a major PII feature.
Not sure where I'm going with this ramble, just making some observations.
That's funny. As we have seen in a previous post, Creative Commons suggests that it's license not be used for code.
Are you saying example code that's part of a text post has its own licence? Not only unworkable but completely unnecessary.
There's a difference between software and code examples. Code posted here is not software, and is often incomplete in and of itself. It is equivalent to HTML and CSS. Creative Commons is used world wide as public licensing for these elements.
Comments
Oh yeah, we had to flake piece off our rocks to tune them!!
Remember that people are different: I, for example, am a 'specifications' type of programmer - I prefer to write code from specifications, I don't care much for looking at source and avoid it if I can - it's not particularly interesting. It's more interesting to analyze data traffic if there are no specs. Low-level analysis, that's the thing.
I'm actually implementing something right now on a "clean room" basis - another guy in another company is looking at some reference source, but fortunately he's not having to write up all the specs from that, the specs are documented. But he is able to clarify weak spots in the docu.
-Tor
I am aware it is copyright law. I have no problem writing code that is inspired by reading someone else's code, and am happy to give credit to the author. OTOH when the license is restrictive I prefer to avoid looking at the code so there is no possibility of inadvertently duplicating any portion of it.
The term restrictive, like viral, is a tad loaded here. Every licence is restrictive and recursively so, therefore viral. That's even true for generic copyright and the MIT licence.
So, it's not that there are restrictions but rather what those specific restrictions are.
PS: I'm thinking the clean-room approach is prolly over the top carefulness aiming to avoid patent problems rather than copyright. I don't think even SCO went down this road in their hugely over-funded lawsuit, they were gunning, instead, for actual verbatim source copying into Linux.
Clearly not all licenses are recursive. If I offer you a copy of my work under licensing terms that forbid you to copy and distribute it that prevents any recursion.
The clean room approach, famously used by Compaq to create an IBM PC clone, does not help you with patents at all. You could potentially end up recreating the patented technique in your "clean" version.
I do agree that the "clean room" requirement is ridiculous. As I said, applied to authors of detective novels they would never be allowed to read each other books.
Good point, every license does have some restrictions so what I really meant to say was "has restrictions I can live with". Giving credit to authors when I use their code and allowing my code to be copied and distributed I can not only live with, but is something I prefer to do.
That process, of prevention at all further levels, is a recursion in it's own right.
Using filler terms like viral and expecting it's original meaning to fit perfectly is falling for some smoke and mirrors me thinks. I could just as easily say that demanding non-disclosure is monopolistic behaviour and therefore must be avoided by everyone at all costs.
You are right, we are just quibbling about about words. But there is common usage to be aware of so as to try and avoid confusion.
That's just a point of view only. Typical FUD.
Meaning? ... that viral should be associated with sharing? That sounds remarkably like a negative spin on a positive feature to me.
Using the term "viral" in context of describing licencing is wrong.
A virus is a thing that can invade a cell and modify it so that more of the virus is produced. The cell is an atomic thing, standing alone and when not infected, capable of serving it's purpose and reproducing.
So let's talk about that for a minute. Virus in the medical context is negative. We almost always don't like them because they make us sick and do various kinds of harm. However, we are beginning to like some kinds of virii more because we can use them as carriers to complete various medical tasks we find very important.
Viral in the social meme context is generally more positive. When we produce creative works and share them, other people sharing them also generally means a rapid accumulation of mindshare, and that can be traded upon, leveraged in various ways to benefit both the creator and those who share the works. There is a negative component in that lots and lots of sharing of things makes noise, which we generally find undesirable and often not productive, though potentially highly entertaining!
IMHO, the case for viral being a strictly negative connotation when associated with licensing is subjective. Really, more context is needed to properly frame all of that up and understand whether or not the intended and implied meanings are negative or positive. Maybe it's neutral too.
In the negative sense, Microsoft called the GPL a "cancer" which isn't really calling it viral, but it is linked to the medical implications of both words, and this is negative no doubt. It is negative to them for a few reasons: One is having to compete with software that doesn't have the revenue expectations their software has attached to it. Another is the wide availability of code that cannot be reused without the body of code it gets incorporated into being open as well. Given they produce mostly closed software for high margin and profit, this is a very high cost and impractical license for them. They have yet to recognize that alternative for profit licensing of GPL code is an option. IMHO, failure to discuss this in their negative framing is dishonest and a raw manipulation people should be critical of. Finally, they cited risk. One could accidentally incorporate GPL code into something closed and be forced to open it. Again, they fail to mention the "open all of it" remedy is rarely applied, again dishonest. There are lots of ways to resolve GPL code incorporation into closed code issues, requiring only a discussion to start.
IMHO, many GPL fans, myself included, get defensive at that kind of negative framing. Personally, I see various costs associated with software and those cost options simply vary. With closed software, the cost of source code access is dollars and sharp limits on what may be shared or incorporated or even compiled. Those are high costs. GPL costs are high too, just different. GPL software requires that derivative software generally be open. (yes, I simplified that for sanity in discussion and some lame *** attempt at brevity I know I am botching miserably)
But is that viral?
Seems to me in the loose sense it is! With the closed model, I see Heater being exactly right about it. Licensing closed source code really is all about not sharing that code for the purpose of building executable object code that people pay for and generally cannot modify. That's not viral at all in the code sharing sense. Really, this looks a lot like cells, each atomic, each capable of serving it's purpose and only reproducing when strictly necessary and value is added for doing so. GPL code is much more aligned with viral in that the source code is available to anyone, building is encouraged, modifying and reproducing is encouraged too! The requirements all add together to grow the body of available GPL code so that everybody contributing to that body of code sees a very high use value with few real dollar costs attached.
Both "cancer" and "viral" apply perfectly to GPL code!
But is that negative?
This is the crux of the discussion I saw so far. If you are in the business of selling, supporting and training on closed software, a growing body of open software that people can pick up on, use, grow, do, build is kind of a negative thing! Should that body grow large, how then will money be made with closed software? Great questions, and frankly a dynamic I think works very well. Closed vendors are forced to continue to add real value or they will see their closed software devalued by open software that offers the same capabilities. That is how it should be IMHO, because then we are paying for real value added through innovation, not rent seeking kinds of behavior where contracts and licenses mandate revenue that really has more artificial value than not as time passes and technology continues to advance, but that's just me.
On the other hand, let's say you make products and software is a component like other components are. Packaging, enclosures, circuits, software, data, etc... all combine into a product that is sold for profit. Now the equation flips! Suddenly, that growing body of GPL code is a really good thing! You get free components that keep costs out of your product, and if you are careful and plan well, you can employ open software for most, if not all the product, and employ small bits of closed software where open isn't possible, practical, legal, viable.
A third "hand" might be the student, or garage innovator, researcher, scientist, writer, creative. These people use software to many different ends and are highly likely to select software licenses that make the most sense to them. A creative person may well invest many dollars into closed software that adds a lot of value to their work because they are about making work for money and the cost of the software to them is inclusive. Getting free to use software that requires more labor, or that isn't as feature rich as closed software is represents a net higher cost because labor costs to them mean fewer works, lower quality works and in general high opportunity costs. A scientist or researcher may well prefer open software in many cases so they may engage in peer review or build on their works together. Open code adds a lot of value in that the process is malleable, code can be shared, things reproduced, discussed openly and in journals and all manner of things.
The product producer may really appreciate both GPL and MIT! GPL licenses are seen all over the place and have modest requirements attached to them easily incorporated into products. MIT works in a similar way, both providing resource choices that are lean in terms of capital, very high value for product oriented people. Viral in that sense is largely positive, IMHO.
So it's not strictly negative. Really. It's about context, and where we are coming from influences that context. I'm a fan of the GPL, and I frequenly refer to it as viral and I cite the use value of the body of GPL code out there as to why it's a good thing, and I also regularly cite the property of software that makes it all happen; namely, that a body of software can very easily be worth more than the sum of it's individual contributions! Adding to GPL code nearly always returns more than one invests, and one can always use the code with the minimum of investments should that not be the case anyway. Win-win for all but closed software producers, IMHO.
People copy, share, steal, or borrow whether or not there's a copyright or license attached to the work. Most people who might come here looking for help are working on their own projects, which will never be shared but could be commercial in nature. You'll never find out someone has used your copyrighted code without compensating you, either in money, deed, or acknowledgement, so why cry about it. If you're posting your code because you want to be adored, buy a puppy.
I suspect Parallax's interest in establishing a consistent license is for their corporate protection. For everyone else, if you post code thinking your rights will be followed, you're fooling yourself. Just admit that once you hit the Post button, your work is shared with the world, with nothing coming back except good Karma. Be happy you're paying forward the help you received when you started. You know, one good turn deserves another.
Every code example that I post on my own Web sites is in the public domain, or carries a copyright but with absolutely no restrictions. The text is Creative Commons, but mostly that's to keep people from lifting it for their Web sites only for search engine purposes, and not because they want to repost a (hopefully) useful article.
There are too many variations and interpretations for GPL. It's not needed, and counter productive, for code examples. A license for a code example is nonsense anyway, but if you feel you must use one, consider Creative Commons. It's far simpler, and as most people won't follow it anyway, is no better or worse than anything else.
That's funny. As we have seen in a previous post, Creative Commons suggests that it's license not be used for code.
The discussion about virility is not in reference to Parallax choosing a single licence. It's about the negative view of some of the earlier posts.
Potatohead: Has anyone mentioned that you make big posts?
I think it's fair to say that viral and cancerous were originally chosen explicitly for their negative connotations and very much deployed that way in the online war of words. And most certainly was used that way in this thread.
If one incorporates some closed source licenced code without careful management it can easily close an open source project. It only takes one mistake. The argument goes both ways equally.
Using the term "viral" in context of describing licencing is wrong.
I do disagree. Functionally, viral works very well and as to the negative, it's all framing. Frame it positive and it simply is. There is arguably a case for negative framing being harmful to OSS licenses. I tend to believe people are smarter than that, and where they aren't, the OSS idea doesn't work all that well for them anyway. And when that happens, maybe they learn something, smarten up a little and OSS is there anyway.
And there is the school of avoidance and the school of embrace and the one of confrontation. I'm inclined to confront and embrace, marginalizing potent language and potentially twist it to my own ends, denying naysayers a well crafted tool. To each their own on this, but that's how I roll more often than not.
(which should put my post above into better context, if it were not clear already)
*easily close or open OSS project / code. Well not really. There are a lot of options for people to employ to reach a resolution. Only one of them is an opening of the whole project for some code inclusion. I consistently push back on that meme because it really is a meme more than fact more often than not. What it does do is present cost and risk, both to be avoided IMHO.
May be I have had a fuzzy head after the holiday seasons festivities, or maybe we are separated by a common language but I have only just realized we are arguing at cross purposes and probably actually agree with each other.
The viral analogy for license terms is good. As far as any analogy goes. The terms of the license, the copyright legislation, the ability of licencees to copy, mix, mutate, append, re-transmit work can make the whole process seem like a virus reproducing in a host, and travelling from host to host. A "viral" license, like GPL, obviously has terms that promote this behavior. A non-viral license, as attached to most movies and proprietary software does not.
However I now see that you are not so much concerned with that observation, but rather with the negative, derogatory, connotations of the use of words like "viral" and "cancerous" to describe the GPL and perhaps other opens source licences. After all you do say:
Common usage of "viral" conjures up images of flu, bad diseases and sickness, but ultimately it all depends on context, I might also say that good manners are viral, education is viral, Christianity is viral. All good stuff.
"Cancerous" is interesting. First used to describe open source by someone at MS I believe. There are a couple of interpretations of that:
1) If you are a proprietary software producer having your customers suddenly realize they can create and share their own code is a cancer that will kill your business given enough time.
2) GPLed code finding its way, accidentally or otherwise, into your products will kill that as a money making product if anyone finds out.
I find it funny because in my mind MicroSoft is the giant out of control tumor that is sucking the life out of the computing organism.
I think even MS had toned down the use of such language to describe their opensource competition, they see it just makes them look like idiots.
Bottom line for me is:
"Viral" is just an analogy, with no positive or negative spin.
Cancerous" is just dumb. Open source is a very good and useful thing to suffer from isn't it? A cancer kills it's host. Open source (GPL or otherwise) does not.
I love the GPL the LGPL, the MIT, the BSD etc licenses and the spirit of open cooperation they promote. I can also respect a software producers desire to get a fair reward for the effort they put into creating something and that that might require a traditional restrictive license.
Really guys and Gals . Its simple . a snippet of text ( license ) is not going to stop a Die-hard person from just Copy-paste .
None of Us have the $$$ to search every program posted with SPIN code so If person X uses Person A Code and does not follow Persons A License . There is NO way to know what person X used . unless they post it some where search able .
Or in laymans terms ...
If it( Code ) has Ever EVER EVER ! touched the WWW /Interwebs/Matrix . Its GOING to be Copyed and thus at some point be used outta License and that is that.
\
SO unless you can Live with that .,Hide In a tin box and Never post Code ANYWHERE .
Do WE here do this behavor . I dont Think so . but this forum is not hiddin so really any Drive By Bot or person can copy all the code and we will never know..
Parallax did a Very smart move with MITing the new code posted here ....... the one catch is gonna be the Grey zone of date of publish .and how it applys to Older code Re posted or the like....
Peter..
Out of all that kit, I really like Visual Studio, though it too has the same "viral" negative I'm about to put here. So I did, beginning to explore when we both decide to read all the legal that was printed realllly tiny!
Viral. Think in terms of skills, how we think, what we write with, read on, etc... Those basic skills for me were mapped to paper. Very few dependencies. Just need to make marks and carry stuff around at best. Jumping full on into that Microsoft kit meant mapping skills to it, just like it does OSS. Well, that went along fine, good things happening, until... Microsoft went and changed a lot of stuff and they depreciated the Alpha box I was running on. Really liked that Alpha, BTW. Fast machine, ran well.
Suddenly, those skills all just vanished, marginalized, gone. The other fine box on my desk was an SGI. It was a UNIX, and most of my OSS skills I mapped worked just fine! SGI end of lifed that machine because MIPS kind of crapped out, unable to make CPUs that would compete with Intel. OSS kept both the Alpha and IRIX machines relevant for as long as I wanted. Just boot strap the OSS tools onto them, then build a lot of software, edit here and there and go! The guys over at Nekochan.net are still running IRIX boxes with OSS and their skill mappings are still productive for them, etc...
So there are axis to viral. If one really gets tuned to Microsoft, when they change stuff, or raise a license cost to raise revenue those skills all attached to their stuff are viral, creeping into life, work, play, and suddenly you are on a chain, yanked this way and that, dollars falling out of your wallet for nothing more than the fact that they just want a little more causing it.
It all cuts both ways folks. Viral can be very bad, or very good. IMHO, with OSS it's really good. I'm a big fan, and I will always be a fan because those skills pretty much always work, and they don't cost much, and I can employ them on nearly any hardware I can name or get my hands on.
With Microsoft, it's all about dependencies. Once you've built up on a few of theirs, they will charge and charge and charge.... And Visual Studio with all of it's auto-complete fun gets you too, because when you don't have that spiffy stuff, it's harder to just type it out... Interesting how they work, isn't it?
***We both walked from that kit, using OSS to the maximum possible, mapping all we could, leaving application and OS skills as necessary evils and that continues through today. Viral was very negative in that context. Still is.
How many falsehoods can you find in that message?
Anyway the message is clear, "You idiot hobbyists are to stupid to make code for yourselves, better you pay us to do it for you."
I hope the Propeller world is better than that.
Not that paying for high value software isn't a perfectly reasonable and viable thing to do. It's not and I buy plenty. But I don't want to buy only. Never did, and I don't like dependencies in too many contexts either.
To be fair, Gates was envisioning the growth of computing and for that to happen, there was going to have to be dedicated programming efforts, and there really wasn't a center of mass then. Funding it had to happen somehow.
Later on, we did get a center of gravity on all of that leading to the rise of GNU / Linux, which arguably has empowered a lot of people to do a lot of things. Both models are acceptable, both have value, but they are not exclusive in my experience.
Never did like the negative framing Gates used though. It was annoying then, with a loooong trend after that. Painful. That same letter and value proposition, which is a perfectly viable value proposition as we all know, could have been framed very differently. Who knows what things would be like had he taken that approach? Some times very small things have very big ripple effects. Defining kinds of effects that endure a long time. I know that letter impacted me, and I must say that impact was not favorable toward Microsoft.
The Propeller Tool is a miserable closed source Windows only tool. The Spin interpreter and loader code in the P1 ROM was closed source. There was a lot of resistance in many circles to the P1 because of those limitations. Meanwhile the Arduino blossomed, a far less capable platform but riding high on the waves of open source. Both software and hardware.
How different the PII is.
Luckily the Gracie's and Parallax have embraced the open source approach. The Spin interpreter get's published, the loader gets published, propgcc comes on the scene, there is an open source Spin compiler. Good grief the entire design of the PII has been going on out in the open. It must be the first time in history that a processor has been designed on the fly with so much input from it's intended customers. Phenomenal. Even Heater has a tiny suggestion taken up which becomes a major PII feature.
Not sure where I'm going with this ramble, just making some observations.
I guess where I was headed with that is the P2 has code protection where P1 didn't. Two different things, and I mixed them together. Good post!
Are you saying example code that's part of a text post has its own licence? Not only unworkable but completely unnecessary.
There's a difference between software and code examples. Code posted here is not software, and is often incomplete in and of itself. It is equivalent to HTML and CSS. Creative Commons is used world wide as public licensing for these elements.
-- Gordon
As the Loyal Opposition, I say they are just lingering over the dead and there is no heartbeat.
This is but an interesting blip in what is otherwise a long and enduring conversation.