Jump to content

Licensing Opinions


Jon
 Share

Recommended Posts

  • Administrators

Before I start this topic, this is NOT going to turn into a flame topic and no product names will be mentioned. Anyone doing so will have their posts deleted and will be warned. This is a serious topic and it is to determine the future of AutoIt intellectual property.

I've just about had it with numerous other projects repeatedly taking AutoIt code - against the expressed wishes of the developers - including it whole in their own code and then setting themselves up as competitors. In extreme cases bad mouthing AutoIt in favour of their own while using the AutoIt name for advertising purposes. When we complain we generally get the response "it's GPL so tough".

After the success of of AutoIt 2 and the community support it received I wanted to do something better that met these goals:

- Free for all. Personal and business.

- Allow people to easily contribute code and documentation, nothing cements community more than feeling you helped to create something great.

- Decent forums and other things (even if at personal expense)

I'm not one of those doey-eyed Linux types who think that open source software is some sort of holy right - the GPL license was chosen as it is generally accepted as the most restrictive. So how did we do? Well, the community is thriving and there are a handful of core developers that put insane amounts of time in writing code and documentation specifically for AutoIt. Currently all code in the AutoIt core has been written by myself or written for AutoIt by people who love the language.

Now the rub.

Over the last year 70+ functions and code sections containing over a year of work have been "leeched" whole, mostly without proper credit. I make pains to credit all the people involved in AutoIt in the helpfile - even down to the functions of AutoIt they have worked on - and would expect anyone using our code to do the same. Not for any "license" reasons, but just out of common courtesy. I write code because I love AutoIt and I know this feeling is shared by most of the developers. The feeling when your code is used against your wishes in order to diminish the product your wrote it for is gut wrenching. In this respect I feel the GPL has failed us.

Has the GPL given us anything? Debatable. I think all the core developers would still be in place if the source was semi-closed and available to those who showed an interest - but only they can answer that for themselves. And end-users generally don't care as long as it free :idiot: (Actually I've had a few criticisms about companies not being able to use AutoIt as they are disallowed GPL!)

So what do we do? Because we wrote all the code for AutoIt we actually have a lot of options but I want to see how other feel. Some ideas are:

- Keep with the GPL and put up with leeching.

- Open source with a "no leeching, you must ask permission" license (wouldn't stop leeching but would give a moral victory for us).

- Semi-closed source, source available for download to the devs and those who have demonstrated commitment to improving AutoIt on the forum.

- Closed source, available only to the devs and invitation only.

As we wrote the all code we can depart from the GPL if we choose. Previously downloaded source would still be under GPL (as per the license) but new copies of the source would be under whatever license we care to make. I was always wary of what might happen under the GPL which is why I only wanted custom written code in AutoIt. It gives us options when things turn to shit.

I wouldn't want to go back to completely closed source as in AutoIt v2 but the current situation is just far too demoralising for me. Looking down the changelog for 3.0.103 fills me with pride, I managed to get ControlListView working and the long elusive DllCall, JP must have put all of his spare time into the GUI and the contributions of the other devs (larry, valik, nutser, holger, jdeb, cyberslug, tylo, etc etc - see help file :D ) have continued to be outstanding. We have great window spys, reg exps, guis, docs, forum, forum help, editors, code tidying...the list is endless. When I know that within a day of the release of that source it will be ripped out in 5 minutes (damn my modular coding style) and waved in our faces I get really angry. I can't be alone in that respect.

Discuss. No flames, no "that sux" posts, no hunting for the offending programs and starting hate campaigns. NOTHING. That is not what I want. This is about AutoIt and nothing more.

Serious chat only.

Link to comment
Share on other sites

Personally, I wouldn't mind seeing the third or fourth alternatives you mention. I have no problem with more closed source, especially if it stops the leeching.

I personally haven't contributed anything large, yet, however, it would comfort me some to know that when I do, its not going to appear somewhere else in a matter of days. The things that I've been working on now (Very slowly, I might add :idiot: ) I think would be nice additions, and they are somewhat larger projects and its taking lots of time to research and write code and test and such.

Like Jon, I write modular code as well. The design of my project is to have it almost totally decoupled from AutoIt. This means that it'd be leechable in less than a day after any source is posted. The thought of that doesn't exactly thrill me.

To be fair, even if the license/situation doesn't change, I would still present the code to Jon for inclusion. The current situation does not effect my desire to develop, either. I go at a slow pace simply because I work on it when I get time and interest do so. Unfortunately, thats not often, which is also the reason I'm intentionally vague on what it is; I don't wish for people to know and be looking forward to it when I am not developing it at a quick rate.

Whatever is decided, Jon, I support your decision. Personally, I would prefer something more closed (And less reliant on morals), but I will continue to develop under any scenario.

Link to comment
Share on other sites

  • Administrators

I personally haven't contributed anything large

I disagree. I thought the function lookup stuff that was thashed out with you, Tylo and Nutster was fantastic - made things so much easier. You've done lots of stuff that hasn't made it in but given me ideas too. Your work has been very important to me.

The things that I've been working on now (Very slowly, I might add :D ) I think would be nice additions,

:idiot:

Whatever is decided, Jon, I support your decision.  Personally, I would prefer something more closed (And less reliant on morals), but I will continue to develop under any scenario.

Thanks. Edited by Jon
Link to comment
Share on other sites

  • Developers

I have been mainly a "sideline" contributor with the SciTE Lexer/Installer stuff and wrapper scripts and have always published the source of anything I've made.

Main reason is that most of them are AutoIt3 scripts and want to show what you can do with AutoIt3 in the hope people learn and add-on to it.

Having said that, i would also feel as frustrated if the stuff made would be used by others in the way you describe.

Whatever you decide, for the valid reasons as describe, I'll continue to work with you all for the simple fact that:

- it has been a great learning experience for me and still is.

- enjoy the way the regulars work together and hash out new ideas.

- Most of the people on the Forum are very positief and helpful...

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

I haven't added anything to this project, but I have been here a pretty long time. I have certainly enjoyed the development that has occurred since it has became open source. Here is what I think might work.

Alot of assumptions are made in this so correct me if I'm wrong.

AutoIT is modular so anyone can write a function and not ever have to see the code.

I don't know how you currently show people how to write code for it (i.e. if you have a document that shows it or if you just tell them to look at the source code), but I think you have to have a document up that shows how to write it so it can be easily integrated. As functions get added by that person and as Jon determines they are trustworthy they should be able to get the source code to help enhance the current functions etc.

So I guess I would choose #4. With the developer forum still open to look at. I enjoy to see what they are talking about and you don't need code to have ideas on how to work things. But it would be understood that all code would be posted in a closed forum.

red

Link to comment
Share on other sites

Guest Brian Smith

Im not a developer of AutoIt, but I am very interested in the project and have used it for personal / at work use.

From the end user point of view, I would argue that AutoIt should definitely stay with the GPL license. The fact that AutoIt was open source is what originally got me interested in the product the reason for this being that I knew I could use this program at work, etc without needing to worry about licensing concerns and I knew that the source was there if I ever needed to change small things for my specific environment.

As a user who just donated a small amount of money to the project a few days ago, I can tell you that I probably wouldnt have donated to a non-GPL project.

I think that it is essential for AutoIts growth to stay GPL.

If AutoIt stays GPL, then everyone knows that the project will ALWAYS be free. If it becomes closed source, everyone using (especially businesss using or looking to use) AutoIt will have worry about AutoIt turning into a commercial product.

So I think that these benefits of the GPL clearly outweigh the code stealing from other projects. I think that it is clear to most users which Windows automation product the innovation comes from, and which just leech off of others.

Brian

Link to comment
Share on other sites

  • Administrators

If AutoIt stays GPL, then everyone knows that the project will ALWAYS be free. 

Actually that's not quite true (and a common misconception about GPL :D ). I could sell it for $200 right now and still have it GPLed. And that's even if it had GPLed code from other projects in it too. Also as long as you have the copyright on all the code you can release a project under the GPL _and_ another license at the same time.

It's certainly a messy area. :idiot:

(Edit: It's been free for 5 years now, I've never even had the slightest "itch" to make it otherwise :lol: )

Edited by Jon
Link to comment
Share on other sites

Personaly I'm at an end user point of view on this project as well for now. I love open source projects and follow hundreds of projects.

It is a shame that this is happening and usually only happens with recognised forking,

for someone to not acknoledge a fork and to borrow code (withoug proper credit even) is a slap in the face.

What protections are under GPL? IF someone blatently ingnored the GPL or worse 5 other companies, would you have the money and or legal means to protect it? What do you do when one or several groups break any copywrite method you have in place, can you pursue it?

It would seem like a very stressful situation to me, along with family problems, health problems etc. as a result.

The only REAL control you have is how availible this information is.

So there you do have control of what happens, and in this case an ounce of prevention is worth a pound of cure.

I really love open source and the idea, promotion, and community that comes with it. I would hate to see when COM comes along that everything gets buckled up. That is why it is so hard to get things like COM and stuff in is that there is not alot of material to work with in that area and is when alot of scripting buckles down its code and goes commercial.

That would be a shame, but what is happening is a shame too. I am realy torn.

On another note following as many projects as I do. I have run across some pretty strange license agreements over time. Not being able to chew gum and code at the same time, cannot be used with malicious intent, open but read-only source to prevent forking, read only source with permission to alter code given and listed on an individual named basis, modified versions of existing licenses etc. I'm not too sure on upholding this kind of license or even a regular GNU license for that matter but it might be something to look into as well.

If it goes too wacky maybe the core could be GNU but certain aspects can be of a more restrictive or invite only source. I just feel that once existing members get past the initial learning aspect of autoit, they will increasingly become interested in how autoit works and be asking alot of questions about C++ which is happening already. Having a way for people who may not be able to contribute now but may be able to later would be a good idea, perhaps point them to the source of v3.102 and see if they can work from there first.

I think autoit has one of THE BEST contributing communities in all of the open source communities that I follow. I have also seen projects go closed, commercial, or more restrictive, and seen members fall off one by one until the project just up and died altogether after a month or two. To me this would mean failure more than anything else.

I really feel that you have made your goal in what you wanted to achieve and in saying that, this community and it's members both developers and end users alike are the best asset of Autoit, not some code.

Link to comment
Share on other sites

Jon,

I am very sad to hear what you say (i.e. the leeching of the AutoIt code). I've been in similar (although in a much smaller scale!) situation before, where people would take credit of my own work and I know that it is one of the most raging things that can happen to you on the intellectual level.

So I wonder if there aren't any legal tools that we, as a community, could use. After all the GPL not only gives protection to the users but also to the license holders. Have you tried to contact the Electronic Frontier Foundation (EFF) to get some assistance? I would imagine that they could help you a lot. If you know for sure that some company has leeched the AutoIt code perhaps there is a way to sue them at no cost to you.

Another option would be to let the Slashdot crowd know about this. I do not read Slashdot often but I've seen them do some amazing things in the past. And they would get to know about AutoIt which would be great too. Just be prepared for the "slashdot effect" :-)

So, in my opinion you should try to get the EFF assistance and in the mean time work using option 4 for the 3.0.103 code. Once things are cleared up then you can release it under the GPL. The project would be still GPL (after all the source code for 102 would still be available) but "frozen" until things got fixed.

Also perhaps you could already release a new version of 102 under a non GPL license to let those that cannot use AutoIt because it is GPL use it. As you said you guys own all the code so you can do that, right?

I really hope that this situation does not make you guys lose your interest in enhancing AutoIt. I really love it!

Cheers,

Angel

Link to comment
Share on other sites

AutoIt is the bees knees. Once we get COM and/or DDE support (whatever COM and DDE mean)

<{POST_SNAPBACK}>

COM: Compact Object Model, now integrated into ActiveX

DDE: Dynamic Data Exchange - to pass data between different running processes.

OLE: Object Linking and Embedding - Store the data for another application, which will display that document/image for you. I am sure that could say that better. ;)

On to the main topic:

I wrote most, but not all, of the code that I submitted. The code for the guts of the Random function is a GPL random number engine. However, none of these proposals would break that.

For those that want to develop code, Jon, Larry, JP, me, etc. could do with the help and the new ideas. This would seem to indicate that we should leave the source code openly available so that others can learn from and add to what we have done. This would be great in an ideal world. Unfortunately, that is not the world we live in. :D

Thieves will always find a way to steal, no matter what we may want to do to make it more difficult. Not only do we have locks on the doors of our cars, but we also install other theft deterents as well. Anybody else have a Club? :idiot: If a few others choose to be untrustworthy, they spoil the experience for the rest of us.

In the acedemic world, taking some one else's ideas without proper permission and credit is called plagerism and if caught, say bye-bye to your univeristy career. "So what happened on your first try at university? Kicked out for plagerism? I see. We are so sorry that we do not have enough space to admit you this year." First offence of any cheating, including plagerism, can give you a hearing in front of an acedemic board, where the instructor or other accuser brings forth his/her evidence you cheated and you defend your actions and/or present evidence that you did not cheat. I had a generious department head at one time, so when I went to him with some copied papers I graded, rather than conviening a cheating board, he said I should just make an announcement in class, without naming names, about the problem, and assign the copied assignments with marks of 0. So much for 5% of the grade. Come on, senior students should know better. I guess that is what Jon is doing here, but he can't flunk anybody for stealing our code.

:lol: It is too bad, but because of this, I agree that we need to restrict the source code to those people involved in developing it. Those that want to help will have to impress Jon enough to be trusted with this valued commodity. I wish we could trust others to do the right thing, but then I would not need a firewall when I go out on the internet nor be swamped by spam on a daily basis. (If I want cheap Canadian drugs, I will walk down the street to the Canadian drug store! And while I could do with more frequent sex, what I got is the right size and works just fine without any pills, thank you very much.)

"I look so great only because I stand on the shoulders of giants."

-- Albert Einstein

He may started from well off the ground, but he still stood higher than anybody else on those same shoulders.

Edited by Nutster

David Nuttall
Nuttall Computer Consulting

An Aquarius born during the Age of Aquarius

AutoIt allows me to re-invent the wheel so much faster.

I'm off to write a wizard, a wonderful wizard of odd...

Link to comment
Share on other sites

So far I've just been an end user who loves AutoIt. I'm not anywhere close, but hope to contribute when I have the skills to do so. If there is a reasonable way to pursue violations of the GPL license that's my first choice for how you should respond. If not, it's up to you to decide what you're willing to put up with. I'd only want to see completely closed code if everything else fails to keep the enormous amount of work you and the other developers do from being ripped off. In your place I'd want to go with option three.

Link to comment
Share on other sites

Breaks my heart to see this thread.

I'm going to show my ignorance of both the GPL and what has gone one before in this forum and ask about how the plugins planned in the to-do list might be implemented? Would it be possible to have a GPL core binary and more restricted licensing for plug-ins?

Ah. Sorry. Past my bedtime. That wouldn't solve anything; the same code looters would have the plugin API from the core code and could use any AutoIt plugins, make their own, reverse engineer existing ones, etc. etc.

Would it work the other way? Restricted core, GPL plugins?

Yes yes yes, there it was. Youth must go, ah yes. But youth is only being in a way like it might be an animal. No, it is not just being an animal so much as being like one of these malenky toys you viddy being sold in the streets, like little chellovecks made out of tin and with a spring inside and then a winding handle on the outside and you wind it up grrr grrr grrr and off it itties, like walking, O my brothers. But it itties in a straight line and bangs straight into things bang bang and it cannot help what it is doing. Being young is like being like one of these malenky machines.

Link to comment
Share on other sites

Another user opinion here, take it as you may. I was drawn to AutoIt because of a need and because it's GPL'd. I'm FAR from being an expert, but I can, and have, hacked together things for friends and businesses in many languages, including C++. I find that being a single dad cuts into my time somewhat as far as contributing, but I did look at the code for several hours one night. If nothing else for peace of mind.

That being said, I find that the politics behind the GPL aren't welcomed as much in the realm of Gates domination...or really understood...or something. It just doesn't seem to be embraced. I will certainly stay around no matter what the license decision is. Until such a time that I find employment working with *nix.

Maybe a delayed GPL, like Sendmail? It seems that would take care of a lot of the issues...

I kind of feel bad adding anything to this thread as I've contributed nothing. So far.

Link to comment
Share on other sites

  • Administrators

So I wonder if there aren't any legal tools that we, as a community, could use. After all the GPL not only gives protection to the users but also to the license holders. Have you tried to contact the Electronic Frontier Foundation (EFF) to get some assistance? I would imagine that they could help you a lot. If you know for sure that some company has leeched the AutoIt code perhaps there is a way to sue them at no cost to you.

Unfortunately, the GPL encourages this. As you can see from the SlashDot article that CyberSlug posted I would be criticised for not wanting people to use the code. There appears to be no stipulation about giving credit except in the source itself - which noone except about 3 devs ever see. I was too naive to see this particular problem when I started, and that sort of behavior goes against my priniciples.

There is a bit of code in autoit that is a simple asm replacement for some math functions, just a header file. It was labelled as "do what you want with it" code but I still thought it right and proper to contact and ask the author if he would be happy with me using it. Had he said no I wouldn't have touched it. That seems to be directly at odds with the attitude of the GPL.

Link to comment
Share on other sites

  • Administrators

I really hope that this situation does not make you guys lose your interest in enhancing AutoIt. I really love it!

It's certainly causing me to get upset and lose my temper a lot - I don't know how long someone can stay like that before it becomes a chore. I think I'll just have to accept that I do have a lot of pride in the work we do and I'm just not happy with the way the GPL allows that work to be used. If people want to make AutoIt competitor apps then so be it, but I'd rather it wasn't with our own code. I guess I'm just not as much of a GPL person as I thought I was. :idiot:
Link to comment
Share on other sites

  • Administrators

On to the main topic:

I wrote most, but not all, of the code that I submitted.  The code for the guts of the Random function is a GPL random number engine.  However, none of these proposals would break that.

It's one of those "honor our wishes/copyright" licenses. And look how we did that in the Random helpfile and that's just for a single internal function! We are just too damn nice.
Link to comment
Share on other sites

I am not at all an expert in licensing but with the amout of time Jon spent and other dev contributors I think intelectual property is key.

So 3 and 4 options are my first choice.

I don't know if I could have enter the game if the source where not available at the begining. I pretty glad to have contribution to this wonderfull project.

So without having a better idea I stay on 3 and 4. Newcomer developper as me can start with the 3.0.102 source which I suppose will stay available.

Thanks Jon and AutoIt community to have accept me and develop my skills.

I will contribute as usual in this project.

Link to comment
Share on other sites

I am for closed source. I had no sure idea when I read the topic the first time, (no answers yet).

But after reading others post I am sure this is the best.

Closed source with some anti-decompiler tricks should keep away most of the thieves.

The main problem that worries me is about sending new code. If I'll ever make something that may improve Autoit and it becomed closed source. How can I?

Should I send it to you, Jon that you will personally add to the code?

Or just I'll have to make my own external .dll and shut up?

Sigh... Very sad anyway. :idiot:

Link to comment
Share on other sites

  • Administrators

The main problem that worries me is about sending new code. If I'll ever make something that may improve Autoit and it becomed closed source. How can I?

Should I send it to you, Jon that you will personally add to the code?

Not decided yet (on anything :idiot: ). Either a basic framework code or just the 3.0.102 code to begin with, or depending on the level of trust, the current or previous version of the source.

I actually add all the current submissions by hand anyway, very tedious but it acts as a good first QA. Most functions are completely standalone anyway and just an example non-autoit exe submission with the source would be easy enough to integrate. It only gets difficult when instead of adding functions people start messing with the expression parsers, lexers or real internals of the code (like Nutster can never resist doing :D ) but I tend to look long and hard at that sort of code anyway as it can wreck things.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...