Ken Gracey (Parallax) said...
I'll be traveling to Minn - St. Paul Sunday through Monday.
Oh? Welcome to my town. Can I crawl into your suitcase and come out to parallax land? Its too cold here. Only thing I can think of on why you'd be coming to this frozen tundra is due to something Christmas related. They have elaborate Christmas light shows up here at various places... And a parallax product would be ideal for that. I'd like to shake your hand for being apart of such a great USA based company. If you meet anyone up here that needs someone familiar with the prop, bs2 and sx, I would love to help.
Its kind of odd you are in town the same weekend that I just started my project of teaching the youth using the propeller as an introduction to electronics, for free too. I am starting with a single young man so I can get my method down before I open it up to other young people.
I love the open source direction parallax is driving... keep it up.
Chris_D: "In the area of what we all do (programmers), you would think people would be smart enough to know that not all software is available for all operating systems."
That is an outrageous statement. It basically says that that people who have a desire to not use Windows are stupid.
I don't know what area you are working in but my observation is that it is precisely the programmers, as opposed to your average user, who are the ones to want to get away from Windows and Microsoft. The reasons for that seem to be very hard for "normal" people to grasp and run a lot deeper than "I like Linux better that Windows", or "Linux does not cost me anything". If it were just that trivial I would probably see it as you do.
I could now run on here with the usual of reasons: the Windows "lock in", the danger of dependence on a computing mono-culture, the restrictive licensing, the truly appalling business practices of Microsoft. The constant forced upgrade tax etc etc. The lack of control of your own computer. The impossibility of a community of computer users to collaborate in improving their OS... The technical merits or otherwise of Windows are actually quite low on the list of priorities here.
Clearly you are not in tune with those motivations yet. I recommend your reading about some of these motivations here www.gnu.org/gnu/thegnuproject.html. It describes that happy playground that was computing before it was locked down and commercialized. And perhaps will show you why programmers would like to see a return to that situation.
Actually that linked story kind of describes the Propeller community here.
By the way the latest atrocity coming down the pipe from Microsoft seems to be twisting the arms the worlds hardware manufacturers to use a new exFAT for SD cards and such. With appropriate licensing such that people like Propeller heads won't be able to use it.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
potatohead "So, author A produced something and licensed it under GPL, forcing all derivatives to be GPL also. That's the bad viral thing nobody likes."
What ?!
The GPL may not match up with you agenda as a software author, dealer or user but I would point out that many people like it. Rather than argue in general I will present a simple case.
My humble offering to the Propeller community is an emulation of a 8080/Z80 microprocessor. I'm quite happy for anyone anywhere to use that code for fun and even for profit. I'd like it be running around as source code so that anyone who has a mind to can fix it's bugs, optimize it, extend it, adapt it to different hardware etc etc. This openness benefits me. As you may have noticed with ZiCog that is exactly what has happened. It now runs on hardware configurations I could never have dreamed of. Has been improved by numerous suggestions and actual code from many people. It has grown up beyond my wildest dreams.
Now there is one thing I don't want. I don't want someone taking all that accumulated effort of many people and selling it for a profit as binary only, perhaps embedded in some funky device that needs a Z80. Unlikely to happen I admit but there it is.
So the GPL would suit my intentions with ZiCog perfectly.
Parallax has nothing to lose by putting the Prop tool out under the GPL. Competitors won't learn anything more form it than they can learn here already.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
heater, I think he was just saying that people like you are familiar with the situation enough that it shouldn't surprise you when stuff only has support for Windows or only OSX and Windows. I am never surprised when Windows and/or OSX are the only supported platforms for things. I can hope for support across more platforms, but I can understand the reasons why many companies don't do it.
I am not as anti-Windows as you seem to be (probably because my livelyhood depends on it, since I work on PC games). I use it as my main OS (Windows 7 64bit), but I do use OSX (G4 Mac sitting here next to this machine) and Linux for some things as well (I also fondly remember my AmigaOS days).
---
I think the best reason for Parallax to release this source code is to allow for the community to develop more and better support for different platforms. I think this up-side far outweighs any down-side people have expressed in other posts here.
Also, I don't really see a down side to someone making SPIN work on other chips/platforms. In fact, I would prefer it, then I could use one language for more stuff. Is it really a bad thing if someone made SPIN work on an AVR or PIC or <insert other MCU here>? The way I see it the thing that is Parallax's advantage is the Propeller chip itself. It's a unique architecture (as far as I know) and if people want the best chip to run their SPIN code on, I think that will be the Propeller until the "Prop 2" comes out.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Check out the Propeller Wiki·and contribute if you can.
Mike Green said it clear what is necessary.
For Parallax to have not more work (except for putting the code somehwere):
There is only one official version that is supported by Parallax. And that is theirs.
It is enough to release the compiler, assembler, interpreter and the uploader. The code released is "as is", no questions answered, no service, nothing. They just keep it up to date with their version.
I do not think they are giving away too much. It will only help to support different OSes and IDEs and help spread the Propeller. I only see a win-win situation.
My 2 cents!
Nick
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Never use force, just go for a bigger hammer!
The DIY Digital-Readout for mills, lathes etc.: YADRO
heater, the reason I dislike GPL is the part where anything it comes in contact with (my code added to it or using it) is forcibly GPL. Also, with my job I am forbidden to even look at GPL'd code that is in relation to anything I am working on, because it is too risky for our company to deal with it. It's quite common in the industry.
Of course, any code I write for the Propeller I will give away completely free. Fully public domain, because honestly I don't care how anyone cares to use it. If they make money from it, more power to them. This is just a hobby for me.
Also, honestly, you are the first person I have seen say that they liked GPL.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Check out the Propeller Wiki·and contribute if you can.
i see no situation where a product given away for free with no advertisments or restrictions of use should not be open source(under the right license). open source means you can take advantage of others code(if you chose to). and since your product is free with no chance of direct revenue there is no loss to you.
The biggest problem is much thought needs to be put into how to make the obex keep working. If Parallax makes a custom license that requires anyone writing an IDE using there code to comply to serten file and code format restrictions then the OBEX will keep on working. What we need to do now is think up how we can make the coding structure as diverse and flexable as possible while still allowing any compiler to compile the code correctly even if maybe not as optimized as it could be.
The biggest problem is much thought needs to be put into how to make the obex keep working. If Parallax makes a custom license that requires anyone writing an IDE using there code to comply to serten file and code format restrictions then the OBEX will keep on working. What we need to do now is think up how we can make the coding structure as diverse and flexable as possible while still allowing any compiler to compile the code correctly even if maybe not as optimized as it could be.
A custom license is a legal nightmare. A very simple rule should apply that will make it completely unambiguous. If it does not compile with the Parallax compiler, it's not welcome in the OBEX.
Your argument on open source falls down in several places. One of note would be if I happen to use some code in one of my freely published projects that I also shared with a commercial product. In this instance, giving away the source could constitute a risk to my intellectual property.
Roy, chalk me up as someone who likes the GPL also. I actually prefer the LGPL, but either is ok. The concept of you using my code is all fine and good, but I want a license that *forces* you to give me back any improvements you make to my code. In this instance, the LGPL with the binary linking exception used by the freepascal project is nice. I use their RTL code in bst. The three portions of it I've modified/improved I've fed back to the team, but I don't have to release the source to my software. It's a nice compromise.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
If you always do what you always did, you always get what you always got.
> What we need to do now is think up how we can make the coding structure as diverse and flexable as possible while still
> allowing any compiler to compile the code correctly even if maybe not as optimized as it could be
This is simply the task of the one who made the port. Time will show, users might spot problems, the community will help to fix them. This doesn't require any kind rules.
Darwin will help here. The IDE xy has problems that aren't fixed, so people will move to a better supported one.
Nick
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Never use force, just go for a bigger hammer!
The DIY Digital-Readout for mills, lathes etc.: YADRO
Nick Mueller the issue is mainly on how to handle compiler optimization.
i want to be able to write 1 code and use #if def like commands to customize to different platforms.
at present this would make the code not work on the ide but other compilers would understand.
if parallax could put in place something for example:
#ifdef A
//run code if macro A is defined parallax ide ignores it..
#endif
#ifpide
//parallax ide include this section
#endif
this would require parallax to make a change to there ide to at least recognize ifdef but only needs to utilize the ifpide. in this way code could be optomised but could still compile on parallax ide. Custom IDE could have a test with parallax option programmers could use to test it still works before submitting to obex.
I am not saying this is the best solution. I am saying this is the kind of things that need to be thought up and changed in the IDE before code can be released and not cause fracturing of OBEX.
Roy Eltham: "I am never surprised when Windows and/or OSX are the only supported platforms for things"
In general I am not surprised either. Saddened but not surprised. Here I'm talking things like games, media players bla bla.
BUT in the world of engineering I am very surprised when a platform specific tool is the only way to make use of a particular product.
Don't get me wrong. I am not "anti Windows" as such. I am damn annoyed at the world constantly telling me that I HAVE to buy, install, learn, use, some product that I have no interest in just so that I can do something else that I do have an interest in. Especially when it is totally unnecessary for that dependence to exist.
Simple case, I wan to use a 5 dollar Propeller chip. What you saying? I have to go out and pay for such and such an OS which has nothing to do with that chip. Go through all the hassle of installing it on my machine and disrupt everything else I do here. Oh, what's that?, I can set up dual boot or get a second machine, thanks.
Roy again "the reason I dislike GPL is the part where anything it comes in contact with (my code added to it or using it) is forcibly GPL"
If you want to use someone's code you have to pay their price. If the price is to high don't use it, write your own. It's that simple. It's quite common for software to be written using others objects, libraries, widgets whatever. You pay the money, accept the restrictions, get the licence and everyone is happy.
It's the same with GPLed code. Except the price is is not monetary.
Why do you expect to be able to leech GPLed at no cost? If the cost is to high write your own or pay some else to do so.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
BradC, I guess the thing for me is that if I am willing to release the source code then I am willing for it to be completely free of any restrictions. If I want restrictions then I don't release the code, simple as that (this case is really rare for me).
If I could I would release all the code I have ever written for work as well. I think the benefits of open and free sharing of code without restrictions far outweigh the possible negatives. I would love it if people could learn from the graphics engine work I have done over the years. Sure there are people that would just take it and use it for their own projects (even claiming it as their own), but for every one of them their would likely be several others that gave credit and/or released improved versions or just gave constructive feedback that would allow me to improve future code. Realistically it would take considerable effort for someone to take just my source code and produce a final product (competing or otherwise), so I'm not really worried that much about that.
Anyway, I do understand the intent of GPL (and LGPL), I just don't agree with it's method. In my experience, one tends to get a lot more positive responses from asking verses demanding.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Check out the Propeller Wiki·and contribute if you can.
1) Release the Prop Tool under the GPL or BSD or such licence.
2) Give that release a different name so as to ward off support calls.
2) Yet another custom Parallax licence just adds more complication and confusion to the mix.
3) Point any support queries about the open release to the forum here [noparse]:)[/noparse]
3) Parallax is in the business of selling Propellers here, what happens to the Prop Tool code is not important. We want you busy working on Prop II [noparse]:)[/noparse]
4) Except, that an open tool sucks in a bigger pool of customers for the Prop, especially after it has been enhanced by the community that might grow around it.
5) Don't worry about OBEX. What stops me posting code there now that does not work with the PropTool? The Prop community here that's what. If my new object were useful but incompatible there would soon be lots of shouting about it. All it needs is a comment or check box in OBEX where people can point out "Hey won't compile with PropTool"
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
heater, I do not "expect to be able to leech GPLed at no cost". I full respect the licenses use by anyone releasing code. In the case that they choose to use GPL, I simply do not look at or use their code.
I don't like to think of it as leeching, nor do I wish to steal anything from anyone. I just prefer that if someone is going to release their source code in hopes of getting the most people to use it and positively contribute that they not use GPL.
Also, I sympathize with your position on products only supporting Windows. However, what about from the other side? If I make a product and have limited resources but want to reach the largest market of people then it's probably a good idea for me to support Windows. Sure, in an ideal situation, enough resources are available to support more platforms, but often times that is not the case. It's usually not a case of them "telling you that you have to buy, install, learn, use, some product that you have no interest in", but more them providing the support that they can given their resources and reaching the largest market they can in the process.
Parallax is in a position where they are willing to release source code in order to allow the community to expand the supported platforms. I think this is a great thing.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Check out the Propeller Wiki·and contribute if you can.
Roy, "If I make a product and have limited resources but want to reach the largest market of people then it's probably a good idea for me to support Windows"
Yes you are totally correct. That is why the entire worlds computing infrastructure is now held to ransom by a single corporation. A dependence on a single source is bad enough but for most of us it's a foreign single source. I just think that is an incredibly dumb situation for the world to be in.
Fortunately, thanks to people who have been thinking about this for a long time it is now possible for people like Parallax to create cross platform tools fairly easily.
One of the simplest ways to get cross platform for free is just to release your code and let the interested community take care of it.
As I say, Parallax wants to sell chips, so the IDE is just an overhead to that aim. So nothing to lose by opening it.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
> i want to be able to write 1 code and use #if def like commands to customize to different platforms.
In my eyes, this also isn't a problem.
Just write "requires XYZ" in the description. The PropTool will fail to compile. With a bit of hand-fiddling the code, it should compile with the blessed IDE.
The good thing is: The better and more widely used IDE will win "the battle".
Looking at my cristal ball I see the following:
A few attempts to build a different IDE will be undertaken (or be continued). People see that tool-chain X is better than the PropTool (not meaning that bad) and Parallax will switch and take that IDE as blessed. You'll see, that will happen within one year. And its an advantage for both sides.
I see the Parallax people as being quite relaxed and open-minded about that subject. Give them the time to assimilate to that idea and I bet they will like it. As a lot of others will.
Of course there will be branches of that tool-chain. Like compilers for OS$whatever. But the mainstream IDE for Win/*NIX/Mac will be a single one that is completely open sourced and has a blessed branch at Parallax's site.
Nick
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Never use force, just go for a bigger hammer!
The DIY Digital-Readout for mills, lathes etc.: YADRO
Heater, I need to be clear. You can go google me to vet this. Just PM me, and I'll hook you up with the details. Suffice it to say, you will find numerous writings of mine, some prominent, articulating the ideology of open code and why it matters.
I love the GPL, and I love it for the growing and always open body of code we have today. I understand the use value of that, I understand the political value of that.
Where pure matters of software are concerned, I have few hesitations using GPL software, and have written and contributed GPL software to that body of code. I did so gladly, moved by the very significant use value proposition I found in that body of code; namely, one gets more out than they put in!
This is not a software only matter. Hardware is a part of the mix. That makes things different, thus the "viral part nobody likes" A large fraction of products are closed because they are required to be closed at this time. As open grows, that will change, and when it does, less of this will be a worry. Now is simply not that time, that's all.
What I wrote above is from the perspective of basically, "If I were Parallax". And if I were Parallax, in this market, with these competitors, having my stuff made off-shore, I would absolutely give the risk inherent in that as much consideration as I would users. I don't think any of us would do anything less.
Simply put, there are business realities and families to be fed that warrant some caution as to when to open that code.
Assuming it's actually when, I would prefer the GPL, as all derivatives would then be open. I also prefer the different release, to protect those unable to make use of GPL code. Finally, I would do it, because commercial licenses can be issued right along side that GPL.
If Parallax wants to sell the most chips, they would be wise to have a closed path for those that need closed. Political realities dictate this. Ironically, a GPL release is the strongest one for this, because of the strength of the license, and the clear boundary between open and closed.
From their point of view, there are two markets. The growing open one, and a closed one, and they manage the closed one much like they do now, while the open one does what open ones do best!
Releasing under MIT, for example, allows somebody else to also serve the closed market, and that's a control issue I personally would be wary of, again given this industry and the nature of many players in it.
Before doing either, a limited release, under a valid and viable limited disclosure and redistribution contract is something I would do first, if nothing else, but to reward those who are able and willing to innovate now. Let that occur and build a more solid base before opening up. Should it not go well, no open release has occurred.
Should an open release occur, those who agreed to terms earlier could also then do open things with no worries, just like anyone else.
My reasons for this are:
1. Limit risk and maximize value early on. There is some really great potential that can occur now, without a wide open release, and that does not prohibit said release. This is a free card, in poker terms.
2. It is very important that Parallax remain the authority here, as it is their holistic design that is part of their value add to the product. Other efforts to expand on that are good, welcome, and I would argue necessary, but do not define the product in a primary way. This is a key business differentiator that needs to be protected. A nice chuck of what I do surrounds these kinds of issues, and I've seen that go badly before.
It is extremely important to preserve differentiators and leverage them to a high degree to remain sustainable, period.
3. If there is an open release, I oppose the MIT, because then the line between open and closed will be blurred, and that will empower competitors, who may or may not hold to Parallax standards and this has the potential to either empower a nefarious competitor, or dilute the brand differentiators as noted above.
GPL is actually best in that Parallax remains the authority, and the arbitrator between what is open and what is closed as their business needs demand over the longer term. Open adds the most value when it is open always, adding to the body of other open code, making that use value proposition stronger for all involved. In this way, open is a solid competetor, and that is necessary in this near mono-culture we live in.
I hope I'm clear enough on that.
Guys, I value open as much as anyone here. I also am acutely aware of the business realities for many in this industry and in the one I serve for my day job. Growing open is always good. Existing on only open is difficult. Closed is necessary, while open grows. The most potent tool for this is the GPL, not MIT or BSD style license, as both of those allow competing closed derivatives which dilute the authority of the originator who publishes under them. I believe that would be foolish for Parallax at this stage of the technology development cycle as a whole. (Prop, I, II, III and surrounding products)
Edit: Having better established the Propeller, the need for being the primary authority will diminish as a function of the ecosystem surrounding the chip grows. That's also my primary reason for risk limitation. Right now, I don't see that ecosystem as authoritative enough to check the cost of risk, it's that simple. A release under contract would actually grow that eco-system, keep risk low, and reward early adopters. That is the only reason for suggesting it, and I concur with Mike on this point, assuming he was thinking along similar lines.
From a business point of view, risk flat out equals dollars over time. The means and methods I outlined are structured to incrementally maximize potential mutual value propositions (prop + either product, or code product = more value than just prop + Parallax IDE), while limiting risk growth.
From an ideological point of view, I say "Hell yes! Open the thing, as once it's open, it's always open, and that is good".
I take the business perspective here because ideologically I would be gratified by a seriously open release of these things. It would be a shame to have made that statement, enjoyed the fruits of it, only to see it all die on the vine with either no future propellers, or significantly changed ones to recover from an unanticipated situation that required drastic means to recover from. When I am 20 years older, I hope to be building Propeller stuff for people, doing it on open tools, competing with and beating out closed alternatives and life would be good.
Getting there means managing risk, at least that's what I believe and what my life experience has shown me.
Finally, I take that perspective because not everyone in the discussion is, and that's just healthy, and because I have been treated so well, welcomed and encouraged on a level I find amazing. I sit here at my desk with these electronics I left so many years ago, using some tools shipped to me because I expressed interest, nothing more. I am compelled to give back my thoughts as best I can, giving that "family" the greatest consideration I can, and considering the business element must be a part of that. There is Parallax, who has been excellent and a mentor to me, and others a part of this community who have done the same. That has stellar, off the chart use value. Consideration due is consideration given, maybe that's how I can put it best.
Roy Eltham said...
Anyway, I do understand the intent of GPL (and LGPL), I just don't agree with it's method. In my experience, one tends to get a lot more positive responses from asking verses demanding.
GPL is a license to combat stealing as is every other license out there. All legal documents are effectively a demand backed by state law and enforcement.
Even the MIT License still demands credit be given. So, it defines stealing as not giving credit to the author.
Asking has no impact on those that are doing the stealing. And when they then use the stolen code for monopolistic purposes again those who are playing by the rules. Wouldn't that suck?
The GPL has a few benefits for those companies investing considerable resources into a GPL'd product. It is designed as a commercial level license. Treat it as such when comparing.
Go easy on the "viral" insinuations too. As an example, any non-disclosure clause is also viral. You could say the viral part of the GPL is a compulsory disclosure clause. :P
Sorry to pick a nit, but it's infringement, not theft. This is not to say it's not as bad, maybe worse. Don't get me wrong there. It feels like theft too. Been there in the past, done that.
I only make this point because a significant contributor to the sorry state of our IP environment today is the sometimes contrived improper use of the worth theft in the discussion. This is often done to capitalize on the strong and ubiquitous negative connotation associated with theft, and out of simple ignorance, or to leverage simple ignorance in legislators of all people.
This can be mitigated by greater use of the correct term, infringement, and doing so will then better realize the elements of the debate as a whole, yielding us laws rendered to actually work for us in a way all can live with, instead of kludges we all struggle with.
The reality with these things is all about those who consume and distribute while not being entitled to do so. Nothing was stolen, as both those with entitlement, or who hold rights, still retain their rights and entitlements; therefore, no material element of theft exists, meaning a case for theft cannot be made. We have the word infringement for these matters, please use it.
I truly believe this matters in the end. Thanks! [noparse]:)[/noparse]
Agreed on "viral". This element of the license is a good thing in the end, but must be discussed. If I did more harm than good with "viral", I'm sorry and will always work to get better about it.
I think I've said my bit here too. Really I saw some elements not part of the discussion. They are now, and I'll sit back and watch how it all goes in the end.
potatohead said...
Ironically, a GPL release is the strongest one for this, because of the strength of the license, and the clear boundary between open and closed.
From their point of view, there are two markets. The growing open one, and a closed one, and they manage the closed one much like they do now, while the open one does what open ones do best!
Quote for emphasis. A well written posting all round.
Potatohead: Looks like we are basically like minded on this topic[noparse]:)[/noparse]
I can understand the need for closed software. It's a way to make money, write a program, sell it, profit. Open would kill that possibility instantly. If that is your business model then go for it. It will work, until some else creates a better program for cheaper (Word over WordPerfect say) or until the users community comes up with hits own solution.
My point is that Parallax is not in that business. In the case of the Prop selling chips is the business. I can't see how GPL'ing the IDE can hurt that business in any way.
They don't lose money when I use BST instead of the Prop Tool. They even gain because I buy chips that I may not have done if BST were not available.
They don't give away any Prop secrets to their competitors by opening the IDE.
What's the problem?
Well, you did mention that the Propeller product is not just the Propeller but the "holistic" value of the Propeller chip, the IDE, the OBEX, the support system, the forum (yes us), the documentation, the demo boards etc etc.
This is a very good point. The Prop product is not "just another chip". However again I don't see the problem with opening the IDE. Give the open release a really different name to distinguish it from the supported version and avoid trade mark issues. A really stupid name as is popular nowadays ("Iceweasel" for a web browser, jees).
That open IDE will take on a life of it's own out in the wild. Or not. What difference does it make? Someone might start hacking on it, others may join in. Then we have a divergent, perhaps incompatible tool. So what? It subtracts nothing from that "holistic" Propeller product. But it will encourage others to buy more Props.
I like it. Why? I want the Prop and it's future incarnations to be around for a long time to come. This seems an excellent way to allow it to spread and grow.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
This is the last thing I'll say about GPL. If it's released GPL, then I won't even look at it, let alone contribute to any tools using it, and I think that I could contribute positively. That is how strongly I feel the GPL is the wrong route to take to be open. I am pretty certain I am not alone in my dislike of GPL.
---
I am also, pretty certain that you guys are not thinking about all of the possible uses of this code. Uses that would quite likely be blocked or at least hindered by the GPL. Uses that could benefit Parallax where it counts, the sale of significant amounts of their hardware. Uses that are not even anything like an IDE or traditional compiler.
The PropTool is free, someone creating a competiting tool that they charge for just doesn't matter. Who's going to use that now when the free version is the one made by Parallax and has been out longer?
The only situation I see where releasing this code can hurt Parallax is if someone uses it to make some form of clone Propeller hardware, and realistically someone willing to do that won't really care about any license you throw on this source.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Check out the Propeller Wiki·and contribute if you can.
I'm with Roy and others; no GPL though Parallax haven't suggested that it would be GPL.
I personally hate GPL, I see it as a viral cancer, politically motivated and unreasonably restrictive. I don't see a problem with fully unrestricted licensing and others taking that, commercialising and profiting from it; it's not like access to the original is removed. Far better IMO that something useful is done with my code than it never being taken further for lack of resources or interest.
And let's be honest; very few will find the Parallax source code release really useful, and probably even less will set up in commercial competition ( I'd guess zero ). Bottom line is that if it doesn't adversely impact the existing business no harm is done. I believe Parallax are more than capable of making such a risk assessment.
Many good points have been made and all of you are considerate to be concerned about the long-term welfare of your business, Parallax. <= how's that for open-source? We will have to become a 501(c)(3) non-profit when we're done giving everything away.
All fun aside, one motivating fear against an open-source release is that we could enable a competitor to develop a hardware product from our code. What if a competitor used our material to make their own "Propeller", then pursuing us under patent infringement over their new "multicore" patents? That's a dirty thing to do and probably not very likely.
On the other hand, establishing prior art is a strong reason to release since our legal policy is to defend ourselves and protect what we've engineered.
Whatever we do today should not cause us need to work more closely with lawyers in the future. While mentioning lawyers, a company with bad intentions or patent sharks should know that we're ready to fight for what's ours, just in case they're reading. . .we all know that a "well-trained" Silicon Valley legal team could bring Parallax or similar company to its knees paying legal fees. But we'll die on our feet before we live on our knees. I really shouldn't be thinking out loud on these forums.
I'm think that the IP protection rage with lawyers is waning a bit in the USA. It's bad for our economy, innovation and customers. Who really wants to base on product on intellectual property that was made available with an exclusion for commercial uses anyway? Bad guys do, probably in other countries. There's no stopping them, but there's also no need to help them.
Carry on, please, freely.
Ken Gracey
Parallax Inc.
Post Edited (Ken Gracey (Parallax)) : 12/12/2009 8:33:57 PM GMT
Ken Gracey (Parallax) said...
What if a competitor used our material to make their own "Propeller", then pursuing us under patent infringement over their new "multicore" patents?
The army of parallaxians here would take them down.
I have never used any product that had a following like parallax does.
Ken: "What if a competitor used our material to make their own "Propeller"
A valid concern.
I think there is enough published material on the Prop that it is quite possible for anyone keen enough to create a Propeller clone already. After all by necessity the instruction set, op-codes, memory capacity, timing info are published so that your users can get on with the device.
Copyright law does not stop anyone developing their own implementation. You don't have patents. Only trade mark law stops them calling it a Propeller.
There is one big hindrance to the cloning process and that is the Spin interpreter in the Props ROM. Cloning that is a violation of copyright and writing a clean room version might be very hard.
The fonts and tables in the ROM are probably protected by copyright.
Given that I would not worry about clones.
Is there really any information about the operation of the Propeller that a clone maker would need hidden in the source code of the Propeller Tool? Some how I think not.
By the way, it just occurred to me that perhaps Chips idea of putting a self hosting IDE in the Prop II ROMS is a damn good way of obtaining legal protection against cloners. It would clearly be copyrightable.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
Ken Gracey said...
All fun aside, one motivating fear against an open-source release is that we could enable a competitor to develop a hardware product from our code.
I would not worry about someone using your code to make a hardware platform. There is already enough information about the propellers inner workings publicaly available that it would be fairly easy to duplicate the propeller. The only things stopping anyone from doing this are:
1) Startup cost to get a custom silicon chip made is very high.
2) The cost of the prop chips is very low
3) Reverse engineering a product is illegal
With these 3 things the reward for duplicating the prop is not worth the legal and financial risks. If someone wants to compete they are far better off to design from scratch a processer with similar layout but more memmory, more io, and more cogs. XMOS is probaby the closest thing there is to a competitor you have. It is faster, has more memmory, and more threads. But it is also more expensive, more complicated, uses more power, and has lass support. I will chose yours over any competitors so long as your company keeps its moto of "make it right the first time and support the comunity" and you do not fall to far behind in the MIPs and IO category. Prop II may be a year behind its time already but comunity, price, and perfection will make it a keeper.
Comments
Oh? Welcome to my town. Can I crawl into your suitcase and come out to parallax land? Its too cold here. Only thing I can think of on why you'd be coming to this frozen tundra is due to something Christmas related. They have elaborate Christmas light shows up here at various places... And a parallax product would be ideal for that. I'd like to shake your hand for being apart of such a great USA based company. If you meet anyone up here that needs someone familiar with the prop, bs2 and sx, I would love to help.
Plus who wouldn't want someone that can do this without a pcb and still maintain sanity:
http://forums.parallax.com/attachment.php?attachmentid=62967 LOL.
Its kind of odd you are in town the same weekend that I just started my project of teaching the youth using the propeller as an introduction to electronics, for free too. I am starting with a single young man so I can get my method down before I open it up to other young people.
I love the open source direction parallax is driving... keep it up.
That is an outrageous statement. It basically says that that people who have a desire to not use Windows are stupid.
I don't know what area you are working in but my observation is that it is precisely the programmers, as opposed to your average user, who are the ones to want to get away from Windows and Microsoft. The reasons for that seem to be very hard for "normal" people to grasp and run a lot deeper than "I like Linux better that Windows", or "Linux does not cost me anything". If it were just that trivial I would probably see it as you do.
I could now run on here with the usual of reasons: the Windows "lock in", the danger of dependence on a computing mono-culture, the restrictive licensing, the truly appalling business practices of Microsoft. The constant forced upgrade tax etc etc. The lack of control of your own computer. The impossibility of a community of computer users to collaborate in improving their OS... The technical merits or otherwise of Windows are actually quite low on the list of priorities here.
Clearly you are not in tune with those motivations yet. I recommend your reading about some of these motivations here www.gnu.org/gnu/thegnuproject.html. It describes that happy playground that was computing before it was locked down and commercialized. And perhaps will show you why programmers would like to see a return to that situation.
Actually that linked story kind of describes the Propeller community here.
By the way the latest atrocity coming down the pipe from Microsoft seems to be twisting the arms the worlds hardware manufacturers to use a new exFAT for SD cards and such. With appropriate licensing such that people like Propeller heads won't be able to use it.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
What ?!
The GPL may not match up with you agenda as a software author, dealer or user but I would point out that many people like it. Rather than argue in general I will present a simple case.
My humble offering to the Propeller community is an emulation of a 8080/Z80 microprocessor. I'm quite happy for anyone anywhere to use that code for fun and even for profit. I'd like it be running around as source code so that anyone who has a mind to can fix it's bugs, optimize it, extend it, adapt it to different hardware etc etc. This openness benefits me. As you may have noticed with ZiCog that is exactly what has happened. It now runs on hardware configurations I could never have dreamed of. Has been improved by numerous suggestions and actual code from many people. It has grown up beyond my wildest dreams.
Now there is one thing I don't want. I don't want someone taking all that accumulated effort of many people and selling it for a profit as binary only, perhaps embedded in some funky device that needs a Z80. Unlikely to happen I admit but there it is.
So the GPL would suit my intentions with ZiCog perfectly.
Parallax has nothing to lose by putting the Prop tool out under the GPL. Competitors won't learn anything more form it than they can learn here already.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
I am not as anti-Windows as you seem to be (probably because my livelyhood depends on it, since I work on PC games). I use it as my main OS (Windows 7 64bit), but I do use OSX (G4 Mac sitting here next to this machine) and Linux for some things as well (I also fondly remember my AmigaOS days).
---
I think the best reason for Parallax to release this source code is to allow for the community to develop more and better support for different platforms. I think this up-side far outweighs any down-side people have expressed in other posts here.
Also, I don't really see a down side to someone making SPIN work on other chips/platforms. In fact, I would prefer it, then I could use one language for more stuff. Is it really a bad thing if someone made SPIN work on an AVR or PIC or <insert other MCU here>? The way I see it the thing that is Parallax's advantage is the Propeller chip itself. It's a unique architecture (as far as I know) and if people want the best chip to run their SPIN code on, I think that will be the Propeller until the "Prop 2" comes out.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Check out the Propeller Wiki·and contribute if you can.
For Parallax to have not more work (except for putting the code somehwere):
There is only one official version that is supported by Parallax. And that is theirs.
It is enough to release the compiler, assembler, interpreter and the uploader. The code released is "as is", no questions answered, no service, nothing. They just keep it up to date with their version.
I do not think they are giving away too much. It will only help to support different OSes and IDEs and help spread the Propeller. I only see a win-win situation.
My 2 cents!
Nick
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Never use force, just go for a bigger hammer!
The DIY Digital-Readout for mills, lathes etc.:
YADRO
Of course, any code I write for the Propeller I will give away completely free. Fully public domain, because honestly I don't care how anyone cares to use it. If they make money from it, more power to them. This is just a hobby for me.
Also, honestly, you are the first person I have seen say that they liked GPL.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Check out the Propeller Wiki·and contribute if you can.
The biggest problem is much thought needs to be put into how to make the obex keep working. If Parallax makes a custom license that requires anyone writing an IDE using there code to comply to serten file and code format restrictions then the OBEX will keep on working. What we need to do now is think up how we can make the coding structure as diverse and flexable as possible while still allowing any compiler to compile the code correctly even if maybe not as optimized as it could be.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
24 bit LCD Breakout Board now in. $21.99 has backlight driver and touch sensitive decoder.
A custom license is a legal nightmare. A very simple rule should apply that will make it completely unambiguous. If it does not compile with the Parallax compiler, it's not welcome in the OBEX.
Your argument on open source falls down in several places. One of note would be if I happen to use some code in one of my freely published projects that I also shared with a commercial product. In this instance, giving away the source could constitute a risk to my intellectual property.
Roy, chalk me up as someone who likes the GPL also. I actually prefer the LGPL, but either is ok. The concept of you using my code is all fine and good, but I want a license that *forces* you to give me back any improvements you make to my code. In this instance, the LGPL with the binary linking exception used by the freepascal project is nice. I use their RTL code in bst. The three portions of it I've modified/improved I've fed back to the team, but I don't have to release the source to my software. It's a nice compromise.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
If you always do what you always did, you always get what you always got.
> allowing any compiler to compile the code correctly even if maybe not as optimized as it could be
This is simply the task of the one who made the port. Time will show, users might spot problems, the community will help to fix them. This doesn't require any kind rules.
Darwin will help here. The IDE xy has problems that aren't fixed, so people will move to a better supported one.
Nick
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Never use force, just go for a bigger hammer!
The DIY Digital-Readout for mills, lathes etc.:
YADRO
i want to be able to write 1 code and use #if def like commands to customize to different platforms.
at present this would make the code not work on the ide but other compilers would understand.
if parallax could put in place something for example:
#ifdef A
//run code if macro A is defined parallax ide ignores it..
#endif
#ifpide
//parallax ide include this section
#endif
this would require parallax to make a change to there ide to at least recognize ifdef but only needs to utilize the ifpide. in this way code could be optomised but could still compile on parallax ide. Custom IDE could have a test with parallax option programmers could use to test it still works before submitting to obex.
I am not saying this is the best solution. I am saying this is the kind of things that need to be thought up and changed in the IDE before code can be released and not cause fracturing of OBEX.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
24 bit LCD Breakout Board now in. $21.99 has backlight driver and touch sensitive decoder.
In general I am not surprised either. Saddened but not surprised. Here I'm talking things like games, media players bla bla.
BUT in the world of engineering I am very surprised when a platform specific tool is the only way to make use of a particular product.
Don't get me wrong. I am not "anti Windows" as such. I am damn annoyed at the world constantly telling me that I HAVE to buy, install, learn, use, some product that I have no interest in just so that I can do something else that I do have an interest in. Especially when it is totally unnecessary for that dependence to exist.
Simple case, I wan to use a 5 dollar Propeller chip. What you saying? I have to go out and pay for such and such an OS which has nothing to do with that chip. Go through all the hassle of installing it on my machine and disrupt everything else I do here. Oh, what's that?, I can set up dual boot or get a second machine, thanks.
Roy again "the reason I dislike GPL is the part where anything it comes in contact with (my code added to it or using it) is forcibly GPL"
If you want to use someone's code you have to pay their price. If the price is to high don't use it, write your own. It's that simple. It's quite common for software to be written using others objects, libraries, widgets whatever. You pay the money, accept the restrictions, get the licence and everyone is happy.
It's the same with GPLed code. Except the price is is not monetary.
Why do you expect to be able to leech GPLed at no cost? If the cost is to high write your own or pay some else to do so.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
If I could I would release all the code I have ever written for work as well. I think the benefits of open and free sharing of code without restrictions far outweigh the possible negatives. I would love it if people could learn from the graphics engine work I have done over the years. Sure there are people that would just take it and use it for their own projects (even claiming it as their own), but for every one of them their would likely be several others that gave credit and/or released improved versions or just gave constructive feedback that would allow me to improve future code. Realistically it would take considerable effort for someone to take just my source code and produce a final product (competing or otherwise), so I'm not really worried that much about that.
Anyway, I do understand the intent of GPL (and LGPL), I just don't agree with it's method. In my experience, one tends to get a lot more positive responses from asking verses demanding.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Check out the Propeller Wiki·and contribute if you can.
1) Release the Prop Tool under the GPL or BSD or such licence.
2) Give that release a different name so as to ward off support calls.
2) Yet another custom Parallax licence just adds more complication and confusion to the mix.
3) Point any support queries about the open release to the forum here [noparse]:)[/noparse]
3) Parallax is in the business of selling Propellers here, what happens to the Prop Tool code is not important. We want you busy working on Prop II [noparse]:)[/noparse]
4) Except, that an open tool sucks in a bigger pool of customers for the Prop, especially after it has been enhanced by the community that might grow around it.
5) Don't worry about OBEX. What stops me posting code there now that does not work with the PropTool? The Prop community here that's what. If my new object were useful but incompatible there would soon be lots of shouting about it. All it needs is a comment or check box in OBEX where people can point out "Hey won't compile with PropTool"
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
I don't like to think of it as leeching, nor do I wish to steal anything from anyone. I just prefer that if someone is going to release their source code in hopes of getting the most people to use it and positively contribute that they not use GPL.
Also, I sympathize with your position on products only supporting Windows. However, what about from the other side? If I make a product and have limited resources but want to reach the largest market of people then it's probably a good idea for me to support Windows. Sure, in an ideal situation, enough resources are available to support more platforms, but often times that is not the case. It's usually not a case of them "telling you that you have to buy, install, learn, use, some product that you have no interest in", but more them providing the support that they can given their resources and reaching the largest market they can in the process.
Parallax is in a position where they are willing to release source code in order to allow the community to expand the supported platforms. I think this is a great thing.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Check out the Propeller Wiki·and contribute if you can.
Yes you are totally correct. That is why the entire worlds computing infrastructure is now held to ransom by a single corporation. A dependence on a single source is bad enough but for most of us it's a foreign single source. I just think that is an incredibly dumb situation for the world to be in.
Fortunately, thanks to people who have been thinking about this for a long time it is now possible for people like Parallax to create cross platform tools fairly easily.
One of the simplest ways to get cross platform for free is just to release your code and let the interested community take care of it.
As I say, Parallax wants to sell chips, so the IDE is just an overhead to that aim. So nothing to lose by opening it.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
In my eyes, this also isn't a problem.
Just write "requires XYZ" in the description. The PropTool will fail to compile. With a bit of hand-fiddling the code, it should compile with the blessed IDE.
The good thing is: The better and more widely used IDE will win "the battle".
Looking at my cristal ball I see the following:
A few attempts to build a different IDE will be undertaken (or be continued). People see that tool-chain X is better than the PropTool (not meaning that bad) and Parallax will switch and take that IDE as blessed. You'll see, that will happen within one year. And its an advantage for both sides.
I see the Parallax people as being quite relaxed and open-minded about that subject. Give them the time to assimilate to that idea and I bet they will like it. As a lot of others will.
Of course there will be branches of that tool-chain. Like compilers for OS$whatever. But the mainstream IDE for Win/*NIX/Mac will be a single one that is completely open sourced and has a blessed branch at Parallax's site.
Nick
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Never use force, just go for a bigger hammer!
The DIY Digital-Readout for mills, lathes etc.:
YADRO
I love the GPL, and I love it for the growing and always open body of code we have today. I understand the use value of that, I understand the political value of that.
Where pure matters of software are concerned, I have few hesitations using GPL software, and have written and contributed GPL software to that body of code. I did so gladly, moved by the very significant use value proposition I found in that body of code; namely, one gets more out than they put in!
This is not a software only matter. Hardware is a part of the mix. That makes things different, thus the "viral part nobody likes" A large fraction of products are closed because they are required to be closed at this time. As open grows, that will change, and when it does, less of this will be a worry. Now is simply not that time, that's all.
What I wrote above is from the perspective of basically, "If I were Parallax". And if I were Parallax, in this market, with these competitors, having my stuff made off-shore, I would absolutely give the risk inherent in that as much consideration as I would users. I don't think any of us would do anything less.
Simply put, there are business realities and families to be fed that warrant some caution as to when to open that code.
Assuming it's actually when, I would prefer the GPL, as all derivatives would then be open. I also prefer the different release, to protect those unable to make use of GPL code. Finally, I would do it, because commercial licenses can be issued right along side that GPL.
If Parallax wants to sell the most chips, they would be wise to have a closed path for those that need closed. Political realities dictate this. Ironically, a GPL release is the strongest one for this, because of the strength of the license, and the clear boundary between open and closed.
From their point of view, there are two markets. The growing open one, and a closed one, and they manage the closed one much like they do now, while the open one does what open ones do best!
Releasing under MIT, for example, allows somebody else to also serve the closed market, and that's a control issue I personally would be wary of, again given this industry and the nature of many players in it.
Before doing either, a limited release, under a valid and viable limited disclosure and redistribution contract is something I would do first, if nothing else, but to reward those who are able and willing to innovate now. Let that occur and build a more solid base before opening up. Should it not go well, no open release has occurred.
Should an open release occur, those who agreed to terms earlier could also then do open things with no worries, just like anyone else.
My reasons for this are:
1. Limit risk and maximize value early on. There is some really great potential that can occur now, without a wide open release, and that does not prohibit said release. This is a free card, in poker terms.
2. It is very important that Parallax remain the authority here, as it is their holistic design that is part of their value add to the product. Other efforts to expand on that are good, welcome, and I would argue necessary, but do not define the product in a primary way. This is a key business differentiator that needs to be protected. A nice chuck of what I do surrounds these kinds of issues, and I've seen that go badly before.
It is extremely important to preserve differentiators and leverage them to a high degree to remain sustainable, period.
3. If there is an open release, I oppose the MIT, because then the line between open and closed will be blurred, and that will empower competitors, who may or may not hold to Parallax standards and this has the potential to either empower a nefarious competitor, or dilute the brand differentiators as noted above.
GPL is actually best in that Parallax remains the authority, and the arbitrator between what is open and what is closed as their business needs demand over the longer term. Open adds the most value when it is open always, adding to the body of other open code, making that use value proposition stronger for all involved. In this way, open is a solid competetor, and that is necessary in this near mono-culture we live in.
I hope I'm clear enough on that.
Guys, I value open as much as anyone here. I also am acutely aware of the business realities for many in this industry and in the one I serve for my day job. Growing open is always good. Existing on only open is difficult. Closed is necessary, while open grows. The most potent tool for this is the GPL, not MIT or BSD style license, as both of those allow competing closed derivatives which dilute the authority of the originator who publishes under them. I believe that would be foolish for Parallax at this stage of the technology development cycle as a whole. (Prop, I, II, III and surrounding products)
Edit: Having better established the Propeller, the need for being the primary authority will diminish as a function of the ecosystem surrounding the chip grows. That's also my primary reason for risk limitation. Right now, I don't see that ecosystem as authoritative enough to check the cost of risk, it's that simple. A release under contract would actually grow that eco-system, keep risk low, and reward early adopters. That is the only reason for suggesting it, and I concur with Mike on this point, assuming he was thinking along similar lines.
From a business point of view, risk flat out equals dollars over time. The means and methods I outlined are structured to incrementally maximize potential mutual value propositions (prop + either product, or code product = more value than just prop + Parallax IDE), while limiting risk growth.
From an ideological point of view, I say "Hell yes! Open the thing, as once it's open, it's always open, and that is good".
I take the business perspective here because ideologically I would be gratified by a seriously open release of these things. It would be a shame to have made that statement, enjoyed the fruits of it, only to see it all die on the vine with either no future propellers, or significantly changed ones to recover from an unanticipated situation that required drastic means to recover from. When I am 20 years older, I hope to be building Propeller stuff for people, doing it on open tools, competing with and beating out closed alternatives and life would be good.
Getting there means managing risk, at least that's what I believe and what my life experience has shown me.
Finally, I take that perspective because not everyone in the discussion is, and that's just healthy, and because I have been treated so well, welcomed and encouraged on a level I find amazing. I sit here at my desk with these electronics I left so many years ago, using some tools shipped to me because I expressed interest, nothing more. I am compelled to give back my thoughts as best I can, giving that "family" the greatest consideration I can, and considering the business element must be a part of that. There is Parallax, who has been excellent and a mentor to me, and others a part of this community who have done the same. That has stellar, off the chart use value. Consideration due is consideration given, maybe that's how I can put it best.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Propeller Wiki: Share the coolness!
Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
Safety Tip: Life is as good as YOU think it is!
Post Edited (potatohead) : 12/12/2009 12:18:51 PM GMT
Even the MIT License still demands credit be given. So, it defines stealing as not giving credit to the author.
Asking has no impact on those that are doing the stealing. And when they then use the stolen code for monopolistic purposes again those who are playing by the rules. Wouldn't that suck?
The GPL has a few benefits for those companies investing considerable resources into a GPL'd product. It is designed as a commercial level license. Treat it as such when comparing.
I only make this point because a significant contributor to the sorry state of our IP environment today is the sometimes contrived improper use of the worth theft in the discussion. This is often done to capitalize on the strong and ubiquitous negative connotation associated with theft, and out of simple ignorance, or to leverage simple ignorance in legislators of all people.
This can be mitigated by greater use of the correct term, infringement, and doing so will then better realize the elements of the debate as a whole, yielding us laws rendered to actually work for us in a way all can live with, instead of kludges we all struggle with.
The reality with these things is all about those who consume and distribute while not being entitled to do so. Nothing was stolen, as both those with entitlement, or who hold rights, still retain their rights and entitlements; therefore, no material element of theft exists, meaning a case for theft cannot be made. We have the word infringement for these matters, please use it.
I truly believe this matters in the end. Thanks! [noparse]:)[/noparse]
Carry on.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Propeller Wiki: Share the coolness!
Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
Safety Tip: Life is as good as YOU think it is!
Post Edited (potatohead) : 12/12/2009 12:46:58 PM GMT
I think I've said my bit here too. Really I saw some elements not part of the discussion. They are now, and I'll sit back and watch how it all goes in the end.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Propeller Wiki: Share the coolness!
Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
Safety Tip: Life is as good as YOU think it is!
Post Edited (potatohead) : 12/12/2009 12:45:19 PM GMT
I can understand the need for closed software. It's a way to make money, write a program, sell it, profit. Open would kill that possibility instantly. If that is your business model then go for it. It will work, until some else creates a better program for cheaper (Word over WordPerfect say) or until the users community comes up with hits own solution.
My point is that Parallax is not in that business. In the case of the Prop selling chips is the business. I can't see how GPL'ing the IDE can hurt that business in any way.
They don't lose money when I use BST instead of the Prop Tool. They even gain because I buy chips that I may not have done if BST were not available.
They don't give away any Prop secrets to their competitors by opening the IDE.
What's the problem?
Well, you did mention that the Propeller product is not just the Propeller but the "holistic" value of the Propeller chip, the IDE, the OBEX, the support system, the forum (yes us), the documentation, the demo boards etc etc.
This is a very good point. The Prop product is not "just another chip". However again I don't see the problem with opening the IDE. Give the open release a really different name to distinguish it from the supported version and avoid trade mark issues. A really stupid name as is popular nowadays ("Iceweasel" for a web browser, jees).
That open IDE will take on a life of it's own out in the wild. Or not. What difference does it make? Someone might start hacking on it, others may join in. Then we have a divergent, perhaps incompatible tool. So what? It subtracts nothing from that "holistic" Propeller product. But it will encourage others to buy more Props.
I like it. Why? I want the Prop and it's future incarnations to be around for a long time to come. This seems an excellent way to allow it to spread and grow.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
---
I am also, pretty certain that you guys are not thinking about all of the possible uses of this code. Uses that would quite likely be blocked or at least hindered by the GPL. Uses that could benefit Parallax where it counts, the sale of significant amounts of their hardware. Uses that are not even anything like an IDE or traditional compiler.
The PropTool is free, someone creating a competiting tool that they charge for just doesn't matter. Who's going to use that now when the free version is the one made by Parallax and has been out longer?
The only situation I see where releasing this code can hurt Parallax is if someone uses it to make some form of clone Propeller hardware, and realistically someone willing to do that won't really care about any license you throw on this source.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Check out the Propeller Wiki·and contribute if you can.
I personally hate GPL, I see it as a viral cancer, politically motivated and unreasonably restrictive. I don't see a problem with fully unrestricted licensing and others taking that, commercialising and profiting from it; it's not like access to the original is removed. Far better IMO that something useful is done with my code than it never being taken further for lack of resources or interest.
And let's be honest; very few will find the Parallax source code release really useful, and probably even less will set up in commercial competition ( I'd guess zero ). Bottom line is that if it doesn't adversely impact the existing business no harm is done. I believe Parallax are more than capable of making such a risk assessment.
All fun aside, one motivating fear against an open-source release is that we could enable a competitor to develop a hardware product from our code. What if a competitor used our material to make their own "Propeller", then pursuing us under patent infringement over their new "multicore" patents? That's a dirty thing to do and probably not very likely.
On the other hand, establishing prior art is a strong reason to release since our legal policy is to defend ourselves and protect what we've engineered.
Whatever we do today should not cause us need to work more closely with lawyers in the future. While mentioning lawyers, a company with bad intentions or patent sharks should know that we're ready to fight for what's ours, just in case they're reading. . .we all know that a "well-trained" Silicon Valley legal team could bring Parallax or similar company to its knees paying legal fees. But we'll die on our feet before we live on our knees. I really shouldn't be thinking out loud on these forums.
I'm think that the IP protection rage with lawyers is waning a bit in the USA. It's bad for our economy, innovation and customers. Who really wants to base on product on intellectual property that was made available with an exclusion for commercial uses anyway? Bad guys do, probably in other countries. There's no stopping them, but there's also no need to help them.
Carry on, please, freely.
Ken Gracey
Parallax Inc.
Post Edited (Ken Gracey (Parallax)) : 12/12/2009 8:33:57 PM GMT
The army of parallaxians here would take them down.
I have never used any product that had a following like parallax does.
A valid concern.
I think there is enough published material on the Prop that it is quite possible for anyone keen enough to create a Propeller clone already. After all by necessity the instruction set, op-codes, memory capacity, timing info are published so that your users can get on with the device.
Copyright law does not stop anyone developing their own implementation. You don't have patents. Only trade mark law stops them calling it a Propeller.
There is one big hindrance to the cloning process and that is the Spin interpreter in the Props ROM. Cloning that is a violation of copyright and writing a clean room version might be very hard.
The fonts and tables in the ROM are probably protected by copyright.
Given that I would not worry about clones.
Is there really any information about the operation of the Propeller that a clone maker would need hidden in the source code of the Propeller Tool? Some how I think not.
By the way, it just occurred to me that perhaps Chips idea of putting a self hosting IDE in the Prop II ROMS is a damn good way of obtaining legal protection against cloners. It would clearly be copyrightable.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
I would not worry about someone using your code to make a hardware platform. There is already enough information about the propellers inner workings publicaly available that it would be fairly easy to duplicate the propeller. The only things stopping anyone from doing this are:
1) Startup cost to get a custom silicon chip made is very high.
2) The cost of the prop chips is very low
3) Reverse engineering a product is illegal
With these 3 things the reward for duplicating the prop is not worth the legal and financial risks. If someone wants to compete they are far better off to design from scratch a processer with similar layout but more memmory, more io, and more cogs. XMOS is probaby the closest thing there is to a competitor you have. It is faster, has more memmory, and more threads. But it is also more expensive, more complicated, uses more power, and has lass support. I will chose yours over any competitors so long as your company keeps its moto of "make it right the first time and support the comunity" and you do not fall to far behind in the MIPs and IO category. Prop II may be a year behind its time already but comunity, price, and perfection will make it a keeper.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
24 bit LCD Breakout Board now in. $21.99 has backlight driver and touch sensitive decoder.