Protecting Your Code While Allowing Source Access?
Posted by
Cliff
on from the open-source-doesn't-necessarily-mean-free dept.
foo_48120 asks: "My small development shop, myself and four employees, is taking on a fairly large job that will run a substantial part of the clients business. To protect themselves they want the source code to the project. Frankly I don't blame them. We bid aggressively to get them to underwrite our own efforts to build this code, which we plan to resell again and again. That is the basis for our company.
I have no problem with them holding the source but need to make it clear that we own the code and that they have a license to use it in their business. They may at their discretion hire others to modify the code, but would still be required to pay their maintenance contract and be prohibited from reselling it or using it to run an additional business. How do you provide open source without escrow, yet protect what we are documenting up front as out intellectual property rights in the ownership of this code?"
Of course third party developers may break things and we would not be responsible for that or for fixing it without further renumeration.
Ideally, if we make them happy then we will do all future upgrades and add on modules as well. I am not worried about that. I do want to know if anyone has experience in the writing of such a licensing agreement? Perhaps they could provide me with a sample copy of their text?
Let's leave aside for now the issue of totally open source vs. closed source. There are times when you want the product to be proprietary as we do, however I want them to feel comfortable using our code so that if a proverbial plane were to fly into our building and wipe us all out then they don't go down the tubes with us."
Talk to a lawyer
by
realmolo
·
· Score: 2, Insightful
Seriously, why are you even bothering to "Ask Slashdot?".
This is a legal issue, you'll need legal contracts and agreements, all of that.
Talk to a fucking lawyer.
Re:Talk to a lawyer
by
sirius_bbr
·
· Score: 5, Funny
Seriously, why are you even bothering to "Ask Slashdot?". This is a legal issue, you'll need legal contracts and agreements, all of that. Talk to a fucking lawyer.
You clearly don't know the difference between what you talking to a lawyer costs, and what talking to the slashdot-crowd costs:)
--
this sig has intentionally been left blank
Re:Talk to a lawyer
by
lpret
·
· Score: 5, Insightful
Ok, I singled your comment among the many "Go talk to a lawyer" comments because you asked seriously. And I will answer seriously.
Many of us at Slashdot have been in similar situations. As such, we know there are certain details to keep in mind regardless if the use of a lawyer or some other type of consultant is necessary. For example:
I play rugby and in a recent match I landed on my foot wrong and parts of my foot went numb. Now, I asked some friends of mine and what do you think they said? "Go talk to a fucking doctor?" No, because they have had past experience with similar situations. They gave me anecdotes about past injuries they had, how they felt, etc. some of which helped, some did not.
Now this is the same here, all of the info given here may not be helpful, but the few comments that are made could tremendously help the person asking the question. So please, if you have something to say about the situation, say it, if you don't, try to help in whatever way you can -- remember, we're a community here.
-- This is my digital signature. 10011011001
Re:Talk to a lawyer
by
IanBevan
·
· Score: 5, Funny
Talk to a fucking lawyer.
...although bear in mind that a lawyer engaged in copulation may not have his/her mind completely on the job.
Re:Talk to a lawyer
by
L.+VeGas
·
· Score: 5, Funny
Well my past experience is this:
Go ahead and give them the code. When they start modifying it, taking it to 3rd parties, and using it at other businesses, stare at the ground and tremble your lower lip. That night, get into an argument with your wife and kick the dog.
yeah, it's something along the lines of one takes you money and the other takes your dignity...
--
--Keeping the flame wars alive, one post at a time
Re:Talk to a lawyer
by
donutello
·
· Score: 5, Insightful
You clearly don't know the difference between what you talking to a lawyer costs, and what talking to the slashdot-crowd costs:)
You clearly don't know the difference in the quality of advice that a lawyer will give and what talking to the slashdot-crowd will give;-)
In this case you get what you pay for. Seriously, when my brother-in-law who's a realtor has a problem getting his wireless networking problems debugged, do you think he should send out an email to his real-estate buddies? What kind of advice do you think he'll get? They all usually have very strong opinions from what "they knew worked" in the past. It's also usually dead wrong. It's the same here.
-- Mmmm.. Donuts
Re:Talk to a lawyer
by
LostCluster
·
· Score: 5, Insightful
Lawyers are better at telling you if what you're trying to do is going to work than telling you what to do. That's where we come in...
Asking Slashdot will likely generate a lot of dumb ideas that won't fly legally, but it also at times generates the occasional 5-Insightful that contains the idea that neither you nor your lawyer would have thought of. Get the idea from Slashdot, run it past the lawyer, and you might just get an idea that would not have been used otherwise.
Right you are. I would suggest putting your code under the GPL or LGPL. Some people might suggest a BSD license, but those people are pedophiles. The GPL will allow you to restrict your client from doing anything with the code that pisses you off. Also, about that problem with your foot, you might try cutting open the skin and having a look-see. This is what doctors call "debugging". Walk around for a while with your foot open - you should be able to see the problem right away.
-- XML causes global warming.
Re:Talk to a lawyer
by
Skirwan
·
· Score: 3, Funny
remember, we're a community here.
I think you're confused: this is Slashdot. We eat our wounded.
-- Damn the Emperor!
Re:Talk to a lawyer
by
rob_from_ca
·
· Score: 3, Insightful
The problem is, there is no information that the Slashdot community can give you about legal situations that could be useful. Lawyers aren't allowed to answer (essentially) at all unless they are retained as council. The asker is certainly going to need to speak with a lawyer; period. Why not skip the uninformed legal advice and skip straight to the people who can help navigate the situation. Now, "Does anyone know a good lawyer for handling cases such as blah blah blah" would be a great slashdot question. If it's just for fun and to share anecdotes, that's fine too, but I'd probably stick that into the question somewhere just to avoid the "talk to a lawyer" contingent.
Well, theoretically of course; they will still be there, since tons of people wouldn't actually read the question. I'd suggest putting "I ALREADY HAVE A LAWYER AND AM JUST POSTING THIS FOR INTERESTING AND FUN ANECDOTES" in bold at the top. Although I'm not sure about the wisdom of discussing potentially private legal strategies in public...:-)
Re:Talk to a lawyer
by
Frobnicator
·
· Score: 3, Insightful
Talk to a fucking lawyer.
The question doesn't say that he DIDN'T talk to a lawyer.
First we're talking about IP, copyright, and trademark. You don't talk to 'a lawyer' becuase most lawyers pass the regular Legal Bar and not those for IP, which are much more difficult.
Second, this kind of issue is best discussed with slashdot AND a lawyer, AND newsgroups, AND maybe a second lawyer.
Third, (I agree) -- talk to a lawyer.:) I have worked with IP lawyers who do non-profit work for free, and personal work for very low cost ($10/hr, more or less). This sounds like you are getting professional work done, but IP lawyers aren't that expensive.
Most of us think of 'Hiring a Lawyer' as an unattainable task, or costing thousands of dollars for extensive work, like is done in court cases. Finding an IP lawyer is easy. Look in the phone book, call the people who don't have full-page ads, and find one that charges between 25-50 per hour and specializes in IP. Find a small business with several lawyers and a single receptionist that has a low, reasonable hourly rate for small projects like that.
In this case where there was extensive bidding going on for the project, the small cost of $200-300 for a day with a competent lawyer should have been included as part of the bid. They probably should have spent $50-100 for a morning with the lawyer while working on the bid, just in case.
It is going to involve contracts, copyrights, license agreements, software and computers. You not only have to talk to a lawyer, you have to talk to the right lawyer. Code escrow agreements aren't completely new, so someone here might be able to point in the right direction. (Hey, it could happen.)
Asking Slashdot will likely generate a lot of dumb ideas that won't fly legally, but it also at times generates the occasional 5-Insightful that contains the idea that neither you nor your lawyer would have thought of.
Unfortunately, a large number of "5-Insightful" comments on/. should have been "-5 Dead Wrong".
Voting is a lousy way to arrive at the truth.
Re:Talk to a lawyer
by
plover
·
· Score: 3, Insightful
The difference is that when you're talking contract law, the devil is most certainly in the details.
Your foot will probably heal by itself. It might heal faster given certain generic treatments (ice, stretching or immobilization or whatever.) And if it doesn't get better in a couple of weeks, you go see a doctor anyway, who goes "tsk, tsk, you should have seen me last week" but fixes you up all the same.
But the contract that he writes and signs will effectively "own" his business and the payrolls of four other people for the next year. If he forgets to dot a legal 'i' or cross some legal 't', a troubled client might take serious advantage of him. Hiring a lawyer to draft the contract will help cover those clauses that might otherwise expose him to some unforseen liabilities.
I'm not saying that his client is shady, or that he isn't honest. I'm saying keep in mind that three years ago every dot-com had a million dollars of venture capital to fund these projects. These days, money is not so free and customers may have their financial situations change. If his client starts feeling the money belt tighten, this guy had better have an airtight contract to make sure that 1) he gets paid for work he does; or at least 2) he can stop working if he doesn't get paid.
The Slashdot crowd will no doubt have some ideas regarding coverage of intellectual property, and I'm sure that's what this guy wants to read. But he needs to spend a few dollars on a decent contract lawyer to ensure that his company's future isn't thrown away by a PREVENTABLE turn of the die. Isn't protecting a million dollar investment worth $5000?
If your nipples are below your ribcage, you have two possible solutions:
#1) You're a girl and need to investigate this amazing invention called a bra.
#2) You're a guy and should shoot yourself before you infect the rest of the gener pool.
As far as the software goes. Give it away and let them spread it around. After it get's sufficiently popular, file a patent on the idea and sue everyone using it. That seems to be the standard business model these days.
-- I've dirtied my hands writing poetry, for the sake of seduction; that is, for the sake of a useful cause. --Dostoevsky
I agree with you 100%. A lawyer is necessary for working out the "legalese" and being able to finding the "devils in the details".
However, I still think it's important to find technical issues that a lawyer would neither have the foggiest idea to even consider, nor the different strategies available to hinder other's using the code. Such as, (and I in no way recommend this, but it may work) the idea to put all the source on one line to give them -- somewhat of a security through obscurity technique.
At any rate, after any rugby injury I see the sports physician at my school regardless of ideas given to me so that I, in total blind faith of other people who might make mistakes, don't do something that would actually screw it up even more.
In my case, it isn't a $10 laywer, but a practicing corporate and IP lawyer that makes a significant amount of cash from the companies he works for. He feels that, if he is interested in the subject and it isn't a time-consuming item, individuals and non-profits could benefit from his expertise.
Personally I have donated many hours of computer skills, graphics skills, and programming skills to individuals and non-profit groups that I think have fun, short projects. I've done several where I expected no payment, but then they offered me a token payment.
My largest project like that was for a non-profit music group, I spent over 300 hours re-designing and building database applications. From my view, I got to review my SQL (which is something I seldom do) and develop some trivial applications in other languages, such as building ActiveX controls and VB programs. It was fun for me and useful for them. The fact that they paid me a token amount of about $1 per hour after the fact didn't bother me -- I spent the time expecting to not get paid, I saw the $300 as a 'thank you', not a payment. I believe the lawyer in my example feels the same way.
Frob.
-- //TODO: Think of witty sig statement
Signed contract... good lawyer.
by
Jerry
·
· Score: 5, Informative
I ran my consulting business under the same premis for 15 years. The contract they signed with me included, among other features, their right to the source code with the restriction that they could not use it as the basis for competition against me. Terms included where a conflict could be ajudicated, the amount of damages, etc...
--
Running with Linux for over 20 years!
Re:Signed contract... good lawyer.
by
CableModemSniper
·
· Score: 2, Funny
Running with Linux for over 5 years!
I hope thats on an iPAQ or something, a desktop or even a laptop would be kind of heavy to run with, especially for 5 years.
-- Why not fork?
Re:Signed contract... good lawyer.
by
AndroidCat
·
· Score: 5, Funny
A contract like that that can work -- if they know that you can and will have a lawyer sue them if they violate the agreement. (You don't have to make threats, just let them know that you have the resources to do so, and your lawyer isn't Clippy. "I notice that you're trying to sue someone...")
-- One line blog. I hear that they're called Twitters now.
We have a similar situation where I work - We've handled it by putting the code in the hands of a third-party escrow service. If we disappear, they get the code. Otherwise, they don't get to look at it.
you protect your code with a lawyer, who writes up a contract that says that they're only allowed to use it in the agreed upon ways, and that's that. They'll probably obey it, and if they don't and you catch them, you can sue them and collect your due royalties, plus punitive damages of course.
When it comes to selling source code, that's the only method that works.
First, grab a dictionary.
by
Xerithane
·
· Score: 5, Insightful
... How do you provide open source without escrow, yet protect what we are documenting up front as out intellectual property rights in the ownership of this code?"
First off, find out that what you are talking about is not open source. If it was open source, or a compatible license, than your client company would be free to redistribute.
Second, it's called a contract. And lawyers. Slashdot is neither. Just (have a lawyer) draft a contract specifying exactly what can be done and saying anything not listed is expressly forbidden unless written permission is granted.
Re:First, grab a dictionary.
by
Xerithane
·
· Score: 2
As opposed to the common dictionary definition of open source? From now on, I'm going to call any 2 door vehicle "rocks" and expect everyone to know what I mean. If they don't, they are obviously stupid.
Re:First, grab a dictionary.
by
aardvarkjoe
·
· Score: 2
Well, that definition also claims that Open Source means about the same thing as Free Software. I can see Prophet Stallman about to explode...
However, I am in agreement that terming this "open source" is, at the very least, misleading. Rather than trying to jump on the Open Source name, they should probably just say "source code will be available to the customer" and leave it at that.
--
How can we continue to believe in a
just universe and freedom to eat crackers if we have no ale?
This seems obvious to me. Come up with a license agreement for the source that specifies what your customer is allowed to do with it. The restrictions you outline seem reasonable, you want to protect your interests, they want to protect theirs. Hell, get a lawyer to draw up the contract for you, and you will have legal recourse if the company breaches the contract and tries to sell a competing product.
Contractual Clauses
by
il_diablo
·
· Score: 5, Informative
Look into a Exclusive Use rights clause in your contract. There's nothing saying that you can't agree to let them use the software and have a copy of the source as a deliverable. However, you can limit their ability to resell/reuse the component.
Additionally, create an Intellectual Property clause in the contract spelling out specific ownership rights/responsibilities.
Insert IANAL comment here.
-- Quidquid latine dictum sit, altum sonatur.
This seems bad...
by
sterno
·
· Score: 3, Insightful
They may at their discretion hire others to modify the code, but would still be required to pay their maintenance contract and be prohibited from reselling it or using it to run an additional business
So, you've got the possibility that you'll be responsible for supporting the product even though other people are modifying it? How are your people going to have expertise in the work being done by these others?
--
This sig has been temporarily disconnected or is no longer in service
I think the better way to structure it is that they agree to buy support for your code. However, if they modify any part of the production system, then you are no longer responsible for support on that section, yet they must still pay the agreed upon price. That is, you still get the money, but they waived the service.
Why ask on Slashdot?
by
Valdrax
·
· Score: 2, Insightful
A) This is not open source you're talking about at all. You don't understand the term, obviously, or are abusing it to somehow seem relevant to Slashdot.
B) This is purely a legal question. Ask a lawyer. It's all a matter of the contracts. The first company I worked for did exactly the same thing for one of their product lines, a COBOL-based transaction processing system. You got the code, but if you wanted support, you had to pay us. You couldn't resell the code without getting your ass sued off. It's just that simple. There is no technical solution to it. You just make it very clear that you can take them for all they're worth if they resell your code.
Get a lawyer. Leave the work to them.
-- If it's for-profit but free, you're not the customer -- you're the product (e.g., the Slashdot Beta's "audience").
A) This is not open source you're talking about at all. You don't understand the term, obviously, or are abusing it to somehow seem relevant to Slashdot.
I wasn't aware that "news for nerds, stuff that matters" actually translated to "discuss open source only or fsck the hell off!"
I don't see how nerds with consulting companies that want to sign closed-source contracts is somehow off-topic for slashdot...
Another question for an IP lawyer, not Slashdot
by
HotNeedleOfInquiry
·
· Score: 2
I am not a lawyer and this is not legal advice.
You need to see an IP lawyer. He will tell you to write an agreement then he will revise it. He will include provisions in the agreement that spell out your protection under copywrite, trade secret and licensing issues.
You really do need to get a lawyer for this. I've written many agreements myself and am good at it, but would defer to a lawyer on this one.
-- "Eve of Destruction", it's not just for old hippies anymore...
Sometimes I fail to understand people
by
Tim_F
·
· Score: 4, Insightful
They are paying you to code something for them. You are a contract firm. What you code for them is their property. Would you get to keep your code if you worked for a company? No, the code would belong to them. This company is paying you for the code, and so, when you are done, then the code belongs to them. They lose their monetary investment if you get to keep the code and resell it to their competitors.
Re:Sometimes I fail to understand people
by
sirius_bbr
·
· Score: 2, Interesting
I disagree. The company is contracted to deliver a product (a compiled and working program or perhaps a license for that). All the knowledge they gather during the construction of the product belongs to this company. The source is a reflection of that knowledge. Giving away the source is just an extra 'service', so the client has the opportunity to make future adjustments to the product.
Then again, I could be completely wrong here.
--
this sig has intentionally been left blank
Re:Sometimes I fail to understand people
by
Phillip+Birmingham
·
· Score: 5, Insightful
This company is paying you for the code, and so, when you are done, then the code belongs to them.
Wrong. The company is paying you for whatever the contract says they are paying you for. No more, no less.
-- Make me aerodynamic in the evening air
Re:Sometimes I fail to understand people
by
bahwi
·
· Score: 3, Informative
Guru.com has something else to say. They say if you are not an employee, you keep the copyright to the code. The people who pay you to develop it are granted a nonexclusive right to use what you've created. The fact that they get something that accomplishes their goal is their monetary investment coming back to them. Not the right to sell and resell the code to make millions while paying you a few thousand.
That's just what guru.com says, and it is always best to have everything in writing, and it is always best to consult a lawyer, not a site like guru.com (or even slashdot.org, although we all love pointing out this fact every time this question arises over and over!)
Outstanding service and support
by
SmoothOperator
·
· Score: 4, Informative
If you offer them outstanding service and support throughout the time they use your product, they will come back over and over again to you. They will want you, and only you to maintain the code, as well as to provide upgrades. If you start jacking them up, have poor business relations with them, they will look for alternatives, and they will take your code, no matter how many clauses you place in your EULA.
--
Veni, vidi, vici.
Re:Outstanding service and support
by
LostCluster
·
· Score: 2
Glad to see you've never been burned by a client. What if a client were say, to not give you a chance on service, and just take your code from the get go?
Re:Leave out the Comments
by
Courageous
·
· Score: 2, Insightful
While I'm sure you intended to be funny, showing a customer bad code is a bad idea. It risks making them wonder how reliable and safe your code is, for one thing. This will make them consider someone else.
C//
I bought source MANY times for vast amounts of $
by
Anonymous Coward
·
· Score: 2, Interesting
I negotiated with people similar to your firm MANY times and got source code that I changed on occasion but mainly just overviewed what I was being billed for.
I have FULL source to the entire PRIME operating system (Primos), and full source to many things I ran on that mini-computer mainframe.
I had full source to ADP's Manage 2000 system. (over 100,000 dollars per copy per machine)
All sorts of things.
I did some amazing hacks and rewrote some crital bits, but mainly I wanted the source because only an idiot would trust a rinky dink outfit like yours to follow up on an escrow arrangement if you went belly up.
deal with it.... your precious source means NOTHING to the customer but comfort. YOu can salt it with lots of identifying special lines and variable names and sue for millions if they ever give it to someone that cares about your damned source.
No one is going to exploit you... they will merely see if you are billing correctly for mods.
Technically speaking, there really isn't any way to prevent this. If they are to have maintenance access to your code, then there is no way to keep them from giving the code to someone else.
The only thing I can think of that might work would be to add extensions to the language you use (like extra keywords) and provide your own closed-source compiler, which is hobbled so it only works on the original system, perhaps with some kind of hardware dongle, or net connection that connects to your server to verify the compiling machine's serial number and some cryptographic key.
This wouldn't prevent it from being hacked, but it might make it difficult enough to make the prospect less likely.
-- bytesmythe Hypocrisy is the resin that holds the plywood of society together. -- Scott Meyer
The only thing I can think of that might work would be to add extensions to the language you use (like extra keywords) and provide your own closed-source compiler, which is hobbled so it only works on the original system, perhaps with some kind of hardware dongle, or net connection that connects to your server to verify the compiling machine's serial number and some cryptographic key.
This wouldn't prevent it from being hacked, but it might make it difficult enough to make the prospect less likely
And if they did hack it you could have the FBI pay them a visit for violating the DMCA!
I suppose the contract could contain the stipulation that if the company folds, they will provide a non-crippled compiler to the client.
-- bytesmythe Hypocrisy is the resin that holds the plywood of society together. -- Scott Meyer
Copyright Law...
by
loucura!
·
· Score: 4, Insightful
Assuming you are in the United States, your work is still covered under US Copyright law. Just because you are giving them access to the source code, does not give them redistribution rights, or the right to make a derivative without expressed permission.
So, all you should need is an (C) Your Co. All Rights Reserved.
If that doesn't work, a handy lawsuit works wonders.
-- Black and grey are both shades of white.
Re:Copyright Law...
by
cpt+kangarooski
·
· Score: 3, Informative
It DOES give them redistribution rights, actually, under the First Sale doctrine. The same rule that lets you buy a book or CD, then sell it used.
It has to be the same copy as originally purchased, and you couldn't keep a copy of that for yourself, but it could be redistributed.
They may also be able to create a derivative work if it is sufficiently remote from the original, as well as make fair use of it, etc.
-- --
This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
Redistribution rights are commonly held to be reproduction rights, or--as it was before the digital computers--reprinting rights, not first sale doctrine...
-- Black and grey are both shades of white.
Re:Copyright Law...
by
cpt+kangarooski
·
· Score: 3, Interesting
Only the licensing thing is baloney.
It doesn't accord to the principles of copyright law, of the UCC, or even particularly to contract law. It's probably bunk, and it's utterly useless.
Sadly, there's been no serious test case. There is no willingness of developers to risk finding out that EULAs are garbage and that they've been outright selling software all this time, and too few purchasers that are otherwise acting in accordance with the copyright laws.
Personally, I have no respect for licensure that interferes with copyright policy. A license that grants me a right that I wouldn't have if I just bought the work, or which occurs in a transaction that is distinguishable from a mere sale of the work -- that's all I can see being acceptable.
Have you read the Softman case? It's not squarely on point, but it gets mighty close. Bobbs-Merril _is_ directly on point, OTOH, and comes out 100% against the licensor.
Software is no different than books, CDs, movies, or any other copyrighted work. It's not generally licensable.
-- --
This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
too late?
by
saucerattack
·
· Score: 2, Interesting
Shouldn't you have figured this out before even writing the first line of code? The fact that they want source code is a pretty good indication that they think they "own" the software you are developing for them. And that makes a lot of sense since I don't think that any company is going to finance the development of software that will end up potentially benefitting the competition. You better get yourself a lawyer and send her every scrap of documentation and agreements you have with your client to make sure you understand the situation you are in.
And that makes a lot of sense since I don't think that any company is going to finance the development of software that will end up potentially benefitting the competition.
Wrong. At my company, we have funded several consultants in the past to write extensions of open source software that the developer later rolls into the next open source release.
Here are several reasons:
1. It usually is just one piece of the puzzle. 2. The competitor has to actually find out about the enhancements that may benefit them. 3. It's not in an area where one's company adds much value. 4. It might not serve the competitor's needs as well as it does yours.
It's like this. Imagine Boeing pays a tool maker to develop a new, better, tool that works on aircraft. They know full well that the tool maker is going to sell the tool to the competitors too. It's still worth investing in usually. It's the same with this, and with the GPL in general.
I think that this is the real GPL/Open Source business model that many people seem to miss. It's not all about "support" in the "my mouse won't work" sense.
-- I've had enough abrasive sigs. Kittens are cute and fuzzy.
Re:I would make two version of the tree
by
viking099
·
· Score: 5, Insightful
That would totally negate them having the code to begin with. It sounds like they want the code so that they can make changes to their business software when and how they want it. If you intentionally make it difficult or impossible to do what they're entitled to do (it sounds like they're wanting to basically buy a copy of the code, like a book or something), then you're in violation of the spirit, if not the terms, of the contract. Plus, if you're not nice to the people who are paying you lots of money, you're less likely to get repeat business from them.
2) I've never met someone who was more skilled at composing correct, easy-to-read code than myself. So why should I let anyone else alter my source?!
I swear, this sounds exactly like me. I hate group projects at school, and when I had to do one for software engineering, I made my teammates do all the documentation work while I wrote the code.;)
-- bytesmythe Hypocrisy is the resin that holds the plywood of society together. -- Scott Meyer
My company (I'm a founder and co-president) has dealt with this type of things many times. The bottom line has been we put a license and ownership statement in the contract.
There are two basic ways (as we see it) to do this.
Keep ownership and grant a license that has a specific list of allowed uses or just the reverse where you give them ownership but retain specific license for yourselves.
You can usually make it work as you need it with either party having ownership, since ownership just means they have final say, can change the license, and get any non-specified (default) rights.
Keeping in mind this is only one small part of the whole contract and I don't promise this is safe or useful for you as it is... here is a paragraph right out of our standard contracts:
(b)Grant of License. Steem hereby grants to Client, upon the terms and conditions set forth in this Agreement, a non-transferable, non-fee bearing, single use, worldwide right and license, without the right to sublicense, for software developed by Steem for use with the Web Site. Any artwork, graphics, or designs created to Client specifications for use in the Web Site become property of the Client upon the Web Site Launch. However, Steem retains the right to display any created artwork, graphics, or designs as part of Steem's portfolio of design work. Steem retains sole rights and ownership of all interactive code. The provisions of this Section 7 will survive indefinitely regardless of the completion or termination of this Agreement.
-- RudeDude
Perl/Linux/PHP hacker
Re:My company
by
jmcharry
·
· Score: 3, Informative
Having been on the other side of a number of these, that is a good start. We usually wanted the right to make and use as many copies as we wanted inside the company, and the rights to read and modify the source. Sometimes we granted an unlimited license to the modifications back to the original vendor if they wanted to add them to the maintenance bundle. Starting with something like this boilerplate and keeping an open mind to modifications from both sides can produce a fairly detailed list of rights, but one that avoids any disputes in the future.
Sometimes, if the vendor doesn't want to cough up the source code, there is an agreement to put a copy in escrow with a third party in case the vendor goes casters up. I can recall once when we did this. Turns out the working level people on both sides just shared the source anyway, which wasn't a problem.
Wow. I applaud your company. Pinstruck.com (which you developed, I assume) is simply wonderful. I've been using it to scare the shit out of superficial people I know.
Fuck! Some asshole picked out my email and cursed me. Is there a way to get uncursed? I need to go somewhere and now I can't leave the house.
Re:I would make two version of the tree
by
billnapier
·
· Score: 5, Funny
You just need to write an obfuscator then, something that takes the inhouse code and changes variable names and adds bogus modules and subroutines.
I know developers who do this part without really trying that hard...
Re:Give it to them for Free
by
Waab
·
· Score: 5, Insightful
Programmers are morally obligated to give the code to their users and allow their users to freely modify and redistribute the code.
When did this happen?
Is [insert popular novelist here] morally obligated to give away his/her novels, allowing the readers to freely modify and redistribute the text?
I respect the open source movement and I think free (as in speech and beer) software is a Good Thing(tm), but I think saying coders are morally obligated to give away their source code is a step too far.
Redundant I know, but if enough people say it you might believe it. Get a lawyer. The only way to resolve the issue if it comes up is through a lawsuit and when that happens you are going to want to have an airtight case.
Get a lawyer.
For what purpose?
by
perrin5
·
· Score: 3, Insightful
Here's a question for you: You said "for their protection". Protection from what, precisely? If they are concerned that you, as a company will cease to exist, and they will no longer be able to modify their code, then the previously mentioned escrow service should be perfectly fine with both of you. If this is another issue, the question of relevance comes to mind. If they want it to be sure that the software is "secure" from buffer overflows, etc, then you will need to hire a lawyer and write some sort of ironclad document to make sure they can't steal it, sell it, or claim any royalty fees on it. If they want it for any other purpose, I don't see them having a ligitimate claim to the software. I mean, sure, they're your employers, but unless there was something funny in the bid documents, they probably don't have any "right" to see the code.
-- hmmmm?
Re:Give it to them for Free
by
glenstar
·
· Score: 5, Insightful
...for one thing, the model of selling a product doesn't work in the software development industry.
What? You had better share that insight with all of the commercial software vendors out there quickly before they go out of business! Make sure to include Microsoft, Oracle, IBM, etc...!
Programmers are morally obligated to give the code to their users and allow their users to freely modify and redistribute the code.
Again... WHAT? I am not aware of any code of morals saying that developers have an obligation to give away their code. Can you explain to me, all GNU and FSF rhetoric aside, why my company should spend countless resources to create a product that we give the code away for and let people do as they wish with it? I personally don't get that logic.
Slightly offtopic (but not by much): I think that the ideal license is one that says something like: "By purchasing this software you get rights to the source code, to do with as you like *within* your organization. If you plan on offering your changed product outside of your organization, you must sign an approved Royalty agreement with the Publisher..."
Don't bite the hand that feeds and don't assume that you can make money by putting a product out as OSS and that someone will pay you to extend or support it.
...you need a lawyer. And probably not the cheap kind. Asking a bunch of anti-Microsoft zealots and Star Wars fans this kind of question can only lead to heartache.
More seriously, this really is a legal problem. I don't know if you were looking for a technical solution or not (I got the impression you might be), but the short answer is that it doesn't exist - once they have the ability to look at the source, it's a matter of their honesty and your ability to detect and prosecute infractions.
If you must try a technical solution, you could maybe attempt some kind of crypto-escrow: They get the code encrypted, and if they ever want to look, they have to buy the key - or if your company folds, you are contractually bound to give it to them gratis. But you'll probably have trouble getting your client to go for that, as it really doesn't offer them any advantage over you just giving them the source (except perhaps some liability protection).
Ask them to pay you want you want?
by
gsfprez
·
· Score: 3, Insightful
I don't mean to sound flippant.. but i'm in a line of work where, when i work during the day, i assume that that work is done, and that tomorrow, i'm going to get paid for working tomorrow.. and not to keep getting paid and repaid for the work i did last week.
Is the concept of "pay me for work" completely dead? Must everything be "pay me for work, and keep paying me for years later too?"
Why do you not just simply charge them for getting a job accomplished, and then, if they want you to come back, tell them it will cost them more money?
If you think that there is something to your work, and if the source code get distributed, then you may see that others will want to pay to have you come and work for them to help them integrate whatever it is that is so wonderful that you wrote up.
What you sound like you want is "pay us now, but we want to hold our code hostage so that any time someone uses it, you want to get paid."
If you were to ask 3 times as much for your work, and they got an unlimited use of your code, would that be sufficient?
IANACIAAA (I am not a coder, i am an analyst), so please, this is not a "you suck" post.. this is an honest question.... where does my idea fall flat, if it does, please tell me, i want to be educated.
So that you can get a sense of where i'm coming from.... what i do every day is i sell out my brain power (and those of my partners here) by the hour.
I get paid to give someone a analysis of this, or an analysis of that... and i tell them "that will take 6 months and cost you $100,000". My reputation is good, so i get more people to come back to me and keep hiring me to do more work for them.
I do not hold my output hostage...i give it freely to the companies, and their use of it is what they will of it, except that they must reference the writer - me - when they use the data. They are not allowed to say "this analysis was done by us" I only ask that they say "this analysis was done by gsfprez".
What else they do with the data, i don't care, and its not my business....I have gotten plenty of work simply from others seeing my output, and they were impressed.
My customers always have new problems, and i'm here to help them when those problems come up. They also have partners, and so, they come to us for help because they saw what were were able to accomplish.
When they do, they ask me how much it will cost.... they pay us then....
rinse, lather, repeat.
-- guns kill people like spoons make Rosie O'Donnell fat.
Re:Ask them to pay you want you want?
by
JordoCrouse
·
· Score: 4, Insightful
Is the concept of "pay me for work" completely dead? Must everything be "pay me for work, and keep paying me for years later too?"
Why do you not just simply charge them for getting a job accomplished, and then, if they want you to come back, tell them it will cost them more money?
In a business situation, its never about just paying for software, and you are done. Nobody wants to pay $100,000 dollars for a chunk of software, have a CD arrive in the mail, and have that be it. They want the peace of mind of knowing that bugs will be fixed, support will be offered, and most importantly, that the expertise of the developers will be available to them if they choose.
No offense, but this isn't just a report or some finite amount of data that you provided. This sort of thing always goes way beyond just delivering a binary.
-- Do you have Linux and a DotPal? Click here now!
Re:Ask them to pay you want you want?
by
Zordak
·
· Score: 2
What you sound like you want is "pay us now, but we want to hold our code hostage so that any time someone uses it, you want to get paid."
If you were to ask 3 times as much for your work, and they got an unlimited use of your code, would that be sufficient?
You've obviously never contracted with the government or military. As messed up as it sounds, this is exactly how it is done much of the time. The government pays some Corporation to provide a software product, the Corporation provides the software product and keeps proprietary rights to all source code, and then continues milking the cash cow for many years as bug fixes and updates are required. It's not necessarily a "good" thing, but it happens like this all the time.
--
Today's Sesame Street was brought to you by the number e.
Re:Ask them to pay you want you want?
by
Planesdragon
·
· Score: 2
I do not hold my output hostage...i give it freely to the companies, and their use of it is what they will of it, except that they must reference the writer - me - when they use the data. They are not allowed to say "this analysis was done by us" I only ask that they say "this analysis was done by gsfprez".
What else they do with the data, i don't care, and its not my business....I have gotten plenty of work simply from others seeing my output, and they were impressed.
You have decided to take the recurring income from your creative effort in the form of publicity rather than cash; this does not alter that you are getting recurring income from the work.
If you can find a creative (or semicreative) person who gets no credit, no recurring income, and no control over the work they do, and the only thing that they get is in their paycheck, THEN you've found someone who gets "paid for their work."
It's really not all that hard a concept to understand, really. Every transaction carries a certain "recurring" cost; in certain creative aspects, this can be the only cost that the creator recieves for the work, and so it's important to preserve.
But even in non-creative and semi-creative methods of work (everything from planting a field to coding a custom program), there is a certain recurring income to the worker, be it in cash or simply in reputation and goodwill.
Re:Ask them to pay you want you want?
by
The+Panther!
·
· Score: 3, Insightful
There's a huge difference between a programmer and an analyst, as you describe it. Programmers create an eternal product, that is source code that solves a particular problem. Often, problems are recurrent and the same solution will work in an infinite number of cases. If you have access to the source code, it can be adapted to meet the changes in problem parameters. Some programmers can make it their life's work to maintain a single solution-giving set of source code, and get paid well to do so.
Analysis of a problem doesn't solve anything directly, so you work in a service-oriented field. It's information to be used or not used, but at the end of the day, you haven't solved the problem being analyzed. They might hire 20 analysts (wastefully) to provide insight or estimates, and they might all disagree, and they won't have solved the problem. However, after a programming team does their work, the problem is solved now and forever. Programmers are content/solution producers. Analysts are not.
I'm not judging either field. I'm simply stating that your analogy and your plea for "A Day's Pay For A Day's Work" is meaningful ONLY in a service oriented profession. Otherwise, you'd have musicians that could never get paid more than once for making a recording, and authors that would always get paid one time for a book, or programmers that could never sell the same software several times. Do you see the difference?
-- Any connection between your reality and mine is purely coincidental.
Re:Ask them to pay you want you want?
by
sql*kitten
·
· Score: 2
Is the concept of "pay me for work" completely dead? Must everything be "pay me for work, and keep paying me for years later too?"
Say you invest $1,000,000 developing a piece of software (salaries, rent, equipment, etc). You want to sell copies of the software for $100 per seat. You have revenue coming in after you've finished coding. The 10001st copy of the software is where you start to make a profit.
Or are you saying that customer 1 should pay the full $1M (for a word processor, say) and all the rest should get it for free? Even the most elementary understanding of the software market or economics in general. should enable you to understand why it cannot work like that.
I get paid to give someone a analysis of this, or an analysis of that... and i tell them "that will take 6 months and cost you $100,000". My reputation is good, so i get more people to come back to me and keep hiring me to do more work for them.
You're in a completely different market: your product does not require upfront investment, and can be sold for what it cost to do. You're a bespoke tailor, and a software house is Sears.
Re:Ask them to pay you want you want?
by
rabidcow
·
· Score: 4, Insightful
Is the concept of "pay me for work" completely dead? Must everything be "pay me for work, and keep paying me for years later too?"
It's not that, it's distributed payment for work. It's "I want to be paid in full, but they don't want to pay that much so we'll compromize."
Let's say a coder produces a program at $100/hr and it takes 4,000 hours. This will cost $400,000. No one wants to pay $400,000 for that software. This company in question specifically does not want to pay $400,000.
So what do you do? You sell it to them cheaper and say "but you can't sell this to anyone else, because you haven't fully paid me for it."
It's like a rental, except it's not time based because no one ever has to return it. Instead, it's instance based. You rent x copies of the code, forever. To be fair, they should be able to sell their copies so long as they stop using them (and don't sell more than they've bought).
Now eventually the coder may have made the full cost of the software, been fully compensated. They could release it for free after this, but software isn't a sure bet. You can have one product make a substancial profit and have another be a total loss. If the potentially profitting projects were cut off when they had been fully paid, all software companies would lose money.
Re:Ask them to pay you want you want?
by
HamNRye
·
· Score: 2
Often times the "work" that goes into coding is not the coding. As a developer on some very small projects I offer two methods: upfront payment, and extended payment. Upfront payment: 35$ per hour coding. ($135 ph. for work on-site) Flat. I don't show up to install, support, nothing. If you need my services afterwards, $135 hourly. (Normal Rates)
Extended Payment: Flat rate on the coding - pre-determined, with a 2 year maintenance contract at X amount.
If the customer owns the source, $85 ph. for coding, or the flat rate doubles for Extended.
I am assuming that once you have completed your analysis that your customers do not expect you to be available at 2:00 A.M. to discuss the facts in that report for up to five years after it's completion??
Since most business software is expensed as a two-three year amortization, the Extended payment option is doubly attractive businesses. Many small users are concerned about support, they get the maintenance specifically to avoid only being able to call 9AM. - 5PM.
In 4 years, I have written ~1000 scripts and small executables. I can think of three people who didn't get extended. I can also think of well over 50 people who paid me for support on freely available scripts around the web.
I think the point is this. Companies choose coders on esoteric qualities, support after the sale, reputation, cool logo or tagline, golfing buddies. But noone really looks at the code to see if you knew what you were doing. The worst thing they will do is call another coder to improve on the code you left behind. My reputation is built on fair pricing, good support, and meeting deadlines. The quality of my code does not even enter into a reason why a business would hire me. As long as it compiles that is....
I guess a good analogy is this: If cars were as unreliable as software, would you buy one if the dealership couldn't give you some reassurances that they could keep it running?? Your warranty provides that functionality. You pay for your warranty as part of the car. (In many cases 5 years after you take posession of the car.)
The same applies with those in store warranties. People want the piece of mind, and in software, more than anything. Heck, most software doesn't even promise to be serviceable upon reciept. Of course people want piece of mind.
Re:Ask them to pay you want you want?
by
gsfprez
·
· Score: 2
>No offense, but this isn't just a report or some finite amount of data that you provided. This sort of thing always goes way beyond just delivering a binary.
no offense taken.. that is why i said "i'm asking, please educate me".:-)
while many people appear to have said "you don't understand", and the go on to say that they charge over time for additional work... which is what i asked.
If company X asks me to "support" them for the next year, then i'm going to charge them just the same as the software coder. My work is up front, the software people is in the back.. but there is no fundamental difference.
"It will cost $Y for this product because it will cost me X time" doesn't change if you make a delivery part-way thru the X or at the very end, or in increments throughout the time X.
I guess what i'm asking is is the concept of "pay me for my time" a long lost concept? Because it seems like many (maybe not these) coders want to get paid today and tomorrow for work they did today... and i'm not talking about support, because, obviously, support is work. Support is work half way thru X. Delivery was at half way, and then the support was the second half.
-- guns kill people like spoons make Rosie O'Donnell fat.
Comanies that do this.
by
Flamesplash
·
· Score: 4, Insightful
First off there are other companies that "license" their source code, like ICS. You could always find one of these companies and ask them how they do it.
Second, this does simply sound like a licensing issue. You trust your customers not to hack the license keys for the binary form of your product, or to redistribute it. So perhaps it's all about trust....
-- "Not knowing when the dawn will come, I open every door." - Emily Dickinson
"How do you provide open source without escrow, yet protect what we are documenting up front as out intellectual property rights in the ownership of this code?"
By hiring yourself a good lawyer.. and not taking law advice from a bunch of pimple-faced/. know-it-alls.
-gerbik
Re:Give it to them for Free
by
ShwAsasin
·
· Score: 3, Insightful
"Programmers are morally obligated to give the code to their users"
WRONG! It is at programmers discretion. A progammer wrote the program to fulfill the users requirements for software. It can be interpretted both ways, unless the user specifically wants the source-code, the programmer has no obligation to give it to them.
Generally in contracts I've seen the user retains the rights to that specific binary, but not the source-code. Meaning that the programmer/company can make dirivitives of it, but not hand out the exact same program.
Rather then say open-source every second, in the vastly competitive software development world it is not feasible to say open source all the time. I like open source as much as the next guy, but if they open sourced their program their software technologies could be stolen, and honestly who would know? If they gave the source-code away, even under the GPL, you could modify it and no-one would be the wiser. Yes some people could complain about infringing on the GPL, but if the progammers are good enough at changing things, nobody would know and now your out a good technology.
In a last thought, why is closed-source so bad? If your company spent 5 years and millions on researching an algorithm for X, I personally see no reason why can't make a bit of profit off it and keep it closed source as long as they don't play the patent/copyright/trademark game and take away everyone elses rights to anything similar.
It's a shame that some companies would sink to these levels, but we live in mainly unethical world where business rules everything (or atleast in North America).
Sure, I may be flamebait for this. Maybe. But if you used Palladium (when it comes out), then you could maybe protect it from modification. That doesn't mean they can't mod-chip the computer somehow or simply print it and scan it back in. But if they were just looking over the code to check for security problems, using Palladium or just giving them a hard copy could help. I mean, if the code is 50,000,000,000 pages long it's not likely they're going to go back and steal it...
[end rambling]
-- I'm the Devil the Windows users warned you about.
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the the Scarpelli family's Guido Public License gives you more freedom with the benefit of protection for you, your family and your business. The Guido Public License applies to most of the Scarpelli Family Software Foundation's
software and to any other program whose authors commit to using it. (Some other Scarpelli Family Software Foundation software is covered by the Guido Library General Public License
instead.) You can apply it to your programs, too.
Accidents, fires and floods happen. The Guido Public Licenseprotects you.
We protect our rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy and distribute the software.
Failure to abide by the rules of any of the Guido Public Licenses will mean a visit from Guido Scarpelli himself.
You don't want that.
-- Trolling is a art,
Re:I would make two version of the tree
by
isomeme
·
· Score: 3, Informative
The parent is modded as "Funny", but this is a real strategy, called "source shrouding". Doing a thorough job of it is nontrivial, because it requires a full language parser to morph everything correctly. But the result can be e.g. program source with no comments, no unneeded whitespace (including newlines), and all identifiers replaced with x00001, x00002, etc. It's not a guarantee against someone managing to modify it, but it sure raises the barrier.
That said, the other posters on this thread are quite correct in saying that the "right" approach is to craft a contract that specifies how your code may be used.
-- When all you have is a hammer, everything looks like a skull.
Re:Give it to them for Free
by
blincoln
·
· Score: 5, Funny
Well, for one thing, the model of selling a product doesn't work in the software development industry.
I just heard a thunderclap. I think it was the sound of Bill Gates' bank account entering the atmosphere of your argument. I estimate about five minutes until it re-enacts the scene from the end of The Forge of God when it meets up with Scott McNealy's.
-- "...always new atoms but always doing the same dance, remembering what the dance was yesterday." -Richard Feynman
Yes you can do this and it works
by
MadHungarian
·
· Score: 2, Informative
I assume you are not asking how to do this, for that you need a lawyer, but asking if it is doable. The company I work for develops custom software and provides source licences.
In one case, client has the source, but the company owns the rights and if the client modifies it, all warranties are void.
In another case the client has the rights to use the code, but pays a license fee for each instance. Yes, you can have your cake and eat it too.
Yes, it's yet another entry in a long line of 'Ask Slashdot' articles that should have been entitled 'Ask My Paid Legal Counsel'.
It's really quite simple: you have complicated legal requirements. Therefore, you require a well-paid lawyer who understands the legal implications of what you're requesting, to write up a detailed unambiguous contract.
/. will give you a bunch of one-liner responses and general advice, but that's about all we can do for you. We Are Not A Lawyer.
--
When I moderate, I only use "-1, Overrated". That way, I never get meta-moderated!
Re:Give it to them for Free
by
Otter
·
· Score: 3, Insightful
Just look at Redhat: they are actually making a profit through selling improvements to something that is buggy and hard to use otherwise.
I think your advocacy might go better if you didn't sound so astonished that your preferred scheme actually worked for someone. (Albeit someone in a business niche that has next to nothing to do with what this guy does.)
And isn't someone going to flame him for claiming that Lunix is buggy and hard to use unless you buy it with Red Hat support?
Well, who pays for that?
by
955301
·
· Score: 5, Insightful
You just need to write an obfuscator then, something that takes the inhouse code and changes variable names and adds bogus modules and subroutines.
And I suppose you bill the client for the time it takes to obfuscate and confuse the code? Or you eat the cost?
Trusted relationships are enforced by contracts all of the time. Comfort yourself with some analogies from other industries, then define the terms of the contract and call your lawyer.
That reduces your problem to catching them if they break ranks with the agreement. Rich comments and the occasional random readme in the source tree (e.g., Java package.html files, copyright headers/footers) help give your code a signature.
Something else just came to mind here. What about splitting the code into libraries versus their proprietary code (unique to their project) and only give the source to the latter? It doesn't sound applicable for your current project, but you may find yourself with an opportunity to reduce your risk later by doing this.
-- You are checking your backups, aren't you?
This issue is hardly as black and white as that...
by
JLavezzo
·
· Score: 5, Insightful
If I'm an architect and design a house for you, you get to live in the house. But if an architecture magazine publishes an article on it, I get the royalties, not you. And it's my reputation as an architect that is improved.
The actual issue here is, "How much is the client paying for?" Are they buying use of the end product? of course. Are they buying all rights to and use of the design or source? Probably not all rights and use. So, therefore, the challenge is to work out an equitable and profitable distribution of rights and use between the original client and the artist/programmer.
This post is asking, "What are the methods that are established for describing who gets which uses and rights on a piece of software that was part of a custom contract?"
That's not open source
by
nsayer
·
· Score: 5, Insightful
Open source implies that they have all the rights you specifically say that they will not be granted. Your scheme is closer to Microsoft's Shared Source scheme, or what we often refer to as "source under glass" - Look, but don't touch. Source, yes; open, no.
I'm sure there will be those here who will take an activistic viewpoint and urge you to do something different. I will not. You have every right to release code under any terms and conditions you may legally obtain, and more power to you. But my opinion is that you ought not use the phrase "open source" unless it meets the OSI mark requirements (which your plan most certainly would not).
Re:That's not open source
by
Florian+Weimer
·
· Score: 2
Open source implies that they have all the rights you specifically say that they will not be granted.
The term has been dilluted over the years. Anybody can call anything "open source", as long they ship a few lines of source code, and they don't charge extra for the delivery of these few lines. Hardly anybody will check the software license or the patent situation etc., and certainly not the journalists who report that company X will release product Y in a few months as "open source".
There are two sides to this question: a pragmatic question and a legal one.
Pragmatically, if you provide them the source, there is no practical limit to their ability to modify, redistribute or sell the code.
Therefore, it falls back upon the legal system: you need a contract that you can both agree that protects the intellectual property rights that you think are important to preserve.
Of course, none of this has even the tiniest bit to do with open source. The restrictions on modifications and redistribution that you seek are explicitly disallowed by any definition of open source licensing you are likely to run accross.
Frankly, I'm unsure why any business would pay you to develop software that they integrate into their business but for which they retain few rights in the future, but you might be able to hoodwink them into such a circumstance. It probably would be easier to get them to agree to a true open source license, where both parties retain the same rights to modification and redistribution
Just because people other than the programmer are permitted to see the source doesn't make it open source... Id Software licenses the Quake 3 source for companies to make all sorts of games, but it sure isn't open source (yet).
Just Ordinary Source Licensing
by
John+Hasler
·
· Score: 2
> How do you provide open source without escrow, > yet protect what we are documenting up front as > out intellectual property rights in the ownership > of this code?"
This has nothing to do with Open Source. You're just looking for an ordinary source license such as companies have been using for decades. Hire a lawyer.
-- Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
Mod Parent up, +5 Funny...
by
siskbc
·
· Score: 4, Insightful
Oh...wait...you mean that wasn't sarcasm? You actually wrote that with a straight face? Now *that* is funny.
Let's see how your opinion of free software changes after Mommy and Daddy stop paying for school and you have to get a job. Your tune will change when you realize that people who give away software won't be hiring you, because....they have no money to pay salaries! Hell, where does Linus get his paychecks? Not from a company releasing its intellectual property for free. As for consulting...you want to add up all the dollars spent on software (binaries) compared to consulting services? It isn't remotely close. Nice try.
This whole "all source code should be free" crap is only popular among people who don't work for a living (and, somehow, Stallman). When you own your code, and make a living off of it, it's amazing how your views tend to change. It's kind of like how the hippies of the 60's became the 80's Me-generation - money and power (and closed source code!) is only bad when someone ELSE is controlling it.
Re:Give it to them for Free
by
cornice
·
· Score: 2
-1 Flaimbait...
You have it backwards. You're not morally obligated to do anything but document it.
Re:Three words:
by
plankers
·
· Score: 3, Interesting
Agreed. Get a very good intellectual property lawyer, or better yet, a lawyer in a firm that deals with business issues and has IP specialists on staff. I was in this very same position with a software application my company had started writing, and a medium-sized business in the Midwest was interested in it. It would have saved them quite a lot of money over commercial applications, plus it would have been fully customized for their business. And on top of it, we could go on to sell the software to other companies for more money. Good for both parties.
The other company was worried about us being able to finish the project to their specifications. We'd develop a contract with them, send it to them, and their lawyers would change it to basically ensure that we would at some time be in breach of contract. If that happened they would get the source code. We were already willing to share the code with them as part of the deal so long as they didn't resell it or market it themselves. No need to get hostile about it. We learned quite rapidly that only lawyers can fight lawyers (without massive time committments on our part), and by spending the extra money on a good set of lawyers, including an IP specialist, we saved ourselves lots of future headaches and problems.
In the end we ended up not doing business with the company, and we lost the sale and opportunity. The other business spent ten times what we would have charged to implement a generic software package for their needs, and to cutomize that package to work with their business. Do I feel bad about it? Yeah -- it sucks to lose business like that, and it was a good opportunity. But I would have felt much worse if I hadn't involved expert lawyers along the way to protect us and explain what the other side was trying to do (the good parts along with the bad things they were doing).
While I agree that there is no moral obligation to release information, OTOH you must accept that there is no inherent right to prevent already-released information from being further used, modified, copied, and redistributed without your involvement or approval.
Any rights that the public at its whim graciously chooses to confer upon authors are intended PRECISELY to achieve that end result of totally removing the author from the finished work.
As for your ideal license, it's not bad, insofar as it extends powers to the licensee that he wouldn't normally have as a mere purchaser of the copyrighted work, BUT should include a clause that voids out the license without any loss of rights by the licensee when the copyright expires. (i.e. in 2098 or whenever when the copyright runs out, they don't get stuck with having to continue under this now rather pointless license OR having to cease their use of the work in order to get out from under it)
-- --
This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
Escrow contracts are voided by bankruptcy
by
Bruce+Perens
·
· Score: 5, Informative
Your customer is smart.
Conventional escrow doesn't work when customer needs it - when your company fails. A bankruptcy judge will review your company's assets, and may find that the source code is the only marketable asset, and must be preserved for your debtors. Judges have voided escrow contracts in order to maintain the remaining value of the company.
Thus, your customer is wise to ask for the source up front. And if your company is bankrupt, it's not going to matter much to you - except that you'll know you didn't screw the customer.
You need a lawyer. It's a pretty simple contract, once you've explained the parameters.
If you want to use Free-Software-friendly attorneys, I can direct you to several, but pretty much any attorney will do.
Re:Escrow contracts are voided by bankruptcy
by
gengee
·
· Score: 3, Informative
Yes, our contract basically grants 'unlimited use' of the code to the client in the event of insolvency, but specifically prohibits selling. Thus, the escrow doesn't obviate the ability of the company to list the code as an asset in Chapter 7.
If your company has no problem with opening the code to your clients/before/ insolvency then the issue is even simpler. I fail to see why whatever standard 'use license' you use currently wouldn't work...
-- - James
Re:Escrow contracts are voided by bankruptcy
by
SlamMan
·
· Score: 2
OK, I'm not very familiar with how escrow works in this situation, but couldn't you liscense a version of your code under gnu or gpl when it goes into escrow? Then, if you ever go out of business, it really can't be sold. Thing I wonder about though, is who is it liscensed to, if you do that? I liscense is a contract between parties, not a property of the document, right?
-- Mod point free since 2001
Re:Escrow contracts are voided by bankruptcy
by
Arker
·
· Score: 2
#include std_disclaimer.h
There should probably be something in the contract to require the code be treated appropriately in light of it's status as a 'trade secret' - i.e. basically a non-disclosure agreement, a requirement that anyone that works with the code sign one individually as well, specific provisions for how a breach would be punished...
-- =-=-=-=-=-=-=-=-=-=-=-=-=-=-
Friends don't let friends enable ecmascript.
Because some of us work in software companies..
by
Inoshiro
·
· Score: 5, Insightful
And their company isn't the first to happen upon this situation.
You always ask your friends about similar situations they may have encountered before you go into some situation. Fools would go ahead and get a lawyer without first discussing it with people who might have had experience with the situation.
-- -- Internet Explorer (n): Another bug -- that is, a feature that can't be turned off -- in Windows.
Re:Because some of us work in software companies..
by
spun
·
· Score: 2
Still, why ask about this particular situation? It seems so cut and dried. People get lost in all the newspeak of the technosphere and forget that business is business. Heck, I don't even own a business and I can see that this is a cut and dried case of contract law. It sounds like the poster was hoping for some clever (and free) technical fix from the nice open source people. We give everything away for free here, right? Here's a clue for the poster: we share things for free with other people who are sharing things for free. What you are doing is nothing like open source.
What you need is a lawyer whose work is open source, so you can use the advice they gave someone else for free. If you don't know where to find such a lawyer, I advise asking a Unicorn, Elf or some other mythical creature.
-- -
None can love freedom heartily, but good men; the rest love not freedom, but license. -- John Milton
Re:Because some of us work in software companies..
by
Pete+(big-pete)
·
· Score: 2
It sounds like the poster was hoping for some clever (and free) technical fix from the nice open source people.
IANANOSP.
"News for Nerds. Stuff that matters."
Nope - no mention there about Slashdot being entirely composed of Open Source fanatics... I think it was a valid question, and I am intrigued as to why you bothered clicking on the story if you had this little interest in the content?!
Often a story may seem like a cut and dried "ask a lawyer" question, but I often check the comments, just in case there's something exceptionally insightful, or to see if someone else has experienced such a situation, and has useful information to share before the lawyer route is taken.
I'm assuming your post was intended as a troll. Odd that you buried it so deep in the comments...
Add a distribution clause
by
dubbayu_d_40
·
· Score: 3, Interesting
Add a clause to your license/contract preventing the sale or redistribution in source or binary form. Don't get a lawyer. Find an existing clause and paraphrase it.
An honest client simply needs to know the rules. If they are unsure of your intent, their lawyer will ask you to clarify.
Even if you got a lawyer to write it, a crook isn't going to care...
Re:Learn from the RIAA/MPAA
by
glenstar
·
· Score: 2
Except for the fact that VB uses the tick (') as a comment marker and would not compile the code as you have it. Just a nitpick.
In other words, if you had a VB developer in your shop who didn't notice that code, you need to hire a new VB developer.;-)
Provide the source, but obfuscate it first...
by
puppetman
·
· Score: 2
They can, if need be, compile the code.
If work needs to be done, you can de-obfuscate the modules they need, and provide them.
This will encourage your client to get you to do modifications, and they will have the source.
This is a purely practical solution, and has nothing to do with licencing, or other abstract solutions.
Finally, a real answer.
by
charon_on_acheron
·
· Score: 2, Insightful
This is the only post so far to actually answer the original Ask Slashdot question. Instead of the fifty redundant posts saying "Get a lawyer", and the other ten saying "That's not open source", RudeDude actually gave a relevant response. Good grief, what was he thinking? That's not the way to karma whore.
Spaghetti code?
by
JeanBaptiste
·
· Score: 4, Funny
Thats my job-security. Nonsensical variable names, meaningless functions etc... It would be a nightmare for even a very experienced programmer to decipher some of my source codes, especially for larger programs... So spaghettify the source code then give it to them. In 5 years when they figure it out it probably wont matter much by then, as it would be quicker just to re-write it from scratch.
Re:Spaghetti code?
by
WasterDave
·
· Score: 5, Insightful
I work for some legacy crap written in C with the Source spread at customer's manufacturing facilities all over the world. Software that helps output stuff like LCD panels, CPU and memory chips.
And if any of you had the opportunity to look at the system and tried to learn what was happening you'd jump ship. Therefore, a license isn't required. The customer doesn't even dare to touch the thing when it's pumping out product that'd cost them 250k+ an hour for down time.
We had one customer try to get several of their employees to "learn" C and begin looking at our code. Well, the funny thing is, we *hired* the guy who knew the most about the system. The rest gave up and either quit the company or moved to another group.
A good business lawyer is worth his weight in platinum and charges accordingly. The purpose of a contract or license agreement is merely to frame the arguement when it comes time for a lawsuit.
Cynically Speaking, in the end it really doesn't matter.
Even if you have the most airtight legal agreement, if the company you are dealing with is a wretched hive of villainous scum, then they will violate the contract/license at will. Your company will sue, and it will take x years and XXX thousands of dollars to litigate. If your company could not survive if every TD&H has access to your code, you may need to rethink your business model. With information wanting to be free and all, you know.
This client is coming off to me as untrustworthy. That is, their reason to refuse escrow as an option seems bogus to me. It's seems like they want the code so that they can fold, spindle, and multilate it. The upfront money is all you'll ever see, as they'll have their own cheaper people modify and service the code if it ever needs changing.
Unless the client is willing to agree to an extreme penalty (on the scale of millions, something that'd potentially bankrupt the client) in the contract for violations, you may just want to abandon the project and let somebody else take the sucker punch.
I'll take the time to point out that, free software (read GPL'ed), specifically has Copyright restrictions. That's what the GPL is, a list of 10 restrictions that give you the right to copy the software. If you don't agree with them, you can't have a copy of the source, see section 6 of the GPL (I think it's section 6). Things without copyright restrictions are public domain.
No it's not. The source is not available to all who ask for free. The source does not allow others to copy and distribute the source for free or for profit. Open Source software is actually more free about copyright restrictions (like the BSD license) than Free Software which restricts copyright to ensure that all have access to the source of derivative works.
This is a restricted source licensing scheme, not an Open Source Software. You really need to read the Open Source Definition to get a better idea of what Open Source is. I mean, the first principle of OSS is allowing free redistribution. Free Software forces free redistribution. This guy's scheme doesn't allow free redistribution at all. Been there. Done that -- not OSS.
-- If it's for-profit but free, you're not the customer -- you're the product (e.g., the Slashdot Beta's "audience").
Re:Give it to them for Free
by
rossz
·
· Score: 3, Funny
Well, for one thing, the model of selling a product doesn't work in the software development industry.
Someone should tell Microsoft that Microsoft Office doesn't stand a chance in hell of making any money.
-- --
Will program for bandwidth
I'm going to burn some karma just to say
by
abe+ferlman
·
· Score: 2
Bruce,
You rock.
I would have just said "open your darn code, quit trying to steal from the commons of ideas", but your diplomacy shames me.
What are they going to do...
by
Eneff
·
· Score: 2
Go into competition with you?
That said, Microsoft is doing the same thing with the shared source initiative.
Furthermore, you're selling them a non-transferrable license. Source or not, this isn't too uncommon a thing with the right contract.
You will, of course, have a clause that says that you authorize the release of source under non-disclosure agreements to third parties for the express purpose of modifying the program for the customer.
(Disclaimer: my company does this same thing, but I don't know what kind of contract they use. They also sell to non-profits and governmental organizations..
Although he's not likely to find the definition. .
by
kfg
·
· Score: 5, Funny
of "Open Source" in a dictionary, making the exercise pointless, he is likely to find many other words in there.
For instance, after modifying the code his firm is indeed likely to renumerate it, i.e., give it a different version number.
For doing this his firm will expect to be *remunerated.* It's from the Latin remuneratus, derived from munis, from which we also derive the English words "munificent" and even "money."
( Munis is a gift, to remunerate is to *re*gift, i.e., effect an exchange)
This note brought to you by the ever hated Slashdot Lexical Patrol ( also known as SLaP), who believes that language is form of code and believes code should be well formed, it's terminology and functions properly called and invoked and even. ..gasp, beautiful.
Our patron saint is William Strunk, Jr., along with his acolyte E.B. White and our Demigods include such figures as Gibbon, Thoreau, Conrad ( who managed in a "foriegn" language no less), Yeats, Voltaire and Kipling ( The OS booted up like thunder!).
Just as Knuth is ( and should be) venerated, so should geeks venerate and study the "code" of these honored figures.
We all write faulty code at times. It's no shame to have to debug and reversion. ..or even have our code corrected by an outside party if that's what it takes to make beautiful code.
In fact, I rather imagine that some of the more ironically inclined are about to take a hearty whack at this missive itself.
KFG
An honest question, not a troll:
by
hndrcks
·
· Score: 2
What if Linus' 8/25/1991 announcement included:
"I have no problem with people using the operating system, but need to make it clear that I own the code and that they have a license to use it in their business. They may at their discretion hire others to modify the code, but would still be required to pay their maintenance contract and be prohibited from reselling it or using it to run an additional business."
Either information wants to be free, or it doesn't. You can't have it both ways.
-- Everyone will start to cheer when you put on your sailin' shoes.
Re:An honest question, not a troll:
by
LostCluster
·
· Score: 2
The tie back to this question is that closed-source code is usually sold with the implication that there will be further sales made in the process of supporting the code in the form of updates, revisions, etc. Some closed source programs are sold at a loss or given away free (as in beer) because they're only usuful when combined with a very profitable subscription service.
Free-code-for-hire is more expensive because it's a one-shot deal. Your people do a day's work, they get a day's pay but they get no leverage to force that the revision come from them. They have to collect more money upfront because they don't get the promise of money in the future.
If this company wants the code, but is paying the going rates for binaries instead... you don't want the job.
It certainly sounds like Bill, doesn't it? Of course, it might also be Steve Jobs asking about the APSL. Doh!
Intellectual Property and the Copyright (Inform)
by
tbonium
·
· Score: 2, Informative
What you really need to do is find a lawyer that knows something about technology and IP. There are some fairly tricky contracts that allow customers access to source code while not negating the IP rights of the author(s). The first thing that you need to do, however, is place copyright notices on every file of source code. At a minimum, it's better than nothing, especially if you are locked into a contract already. Getting a customer to rewrite a contract that has already been signed is a bad idea.
"They may at their discretion hire others to modify the code"
Ok, so they get some third party to modify the code. Now you have a human being with memories of your code out there thinking thoughts and writing more code on different projects. There is no way that this person can guarantee that their experience of *your* code isn't influencing their design of new code. They may not even intend to, but thats how thought works with creative stuff; inspiration.
So what are you going to do if you come across something that you think they did which was inspired by your code?
Is that ok or not?
There are arguments either way, but my line would be that any restriction on intellectual property is doomed to introduce the notion of thought crimes.
-- In the free world the media isn't government run; the government is media run.
You cannot collect punitive damages for breach of contract.
You can, however, put something in the contract like "Should [Company] terminate this agreement by distributing source code and/or binaries of the software, [Company] agrees to pay a one-time only $10,000,000 distribution license.":-)
The company where I work occaisionally allows the source to burned to a CD to by held by the purchaser (NOT a 3rd party) for escrow purposes only. It's worked fine for us. I work on a very small product line for a very small company with some very large clients; they primarily want the source because they worry about this product disappearing. Unfortunately, I can't provide you with a copy of such an agreement -- I don't have one.
On the other hand, you sound like you you want to do is sell source code that your customer can actively use it, but still maintain maintenance fees. I'd look at SLAs for commercial components as an example -- some will sell source. One example (for JClass Java components) is here.
Personally, I'd recommend going the escrow route, and perform modifications for the customer for an additional fee as required -- it would be extremely difficult from a technical point of view to support software that has been modified by 3rd parties who may not fully understand the side-effects of their changes. It sounds like your customer primarily wants security; escrow can provide that.
--
I can spell. I just can't type.
Re:No punitive damages
by
LostCluster
·
· Score: 2
No, but a smartly written contract has a section for the penalties agreed upon for breaches. That is, it has langauge stating that if they do one of the prohibited actions they agree to pay an outragous sum of money. In that case, the court will require payment of the agreed-upon sum instead of any actual damages.
No, but/. is the place for him to get ideas as to what to tell the lawyer to put into the license.
A lawyer is like a complier. You write code in English, he compilies it into airtight Legalese. However, if you give him a bug in the unput, his contract can still crash.
Re:I would make two version of the tree
by
Lumpy
·
· Score: 5, Funny
an confidential inhouse one, and an obfuscated one to give to the company, full of misleading variables names, fake variables, incorrect subroutines, etc. Of course, they both compile correctly.
so we convert it to perl then?
OW.. OW....OW..OW.OWOWOWOWOWOWOWOW! It's a joke! Stop hitting me!
-- Do not look at laser with remaining good eye.
Re:I would make two version of the tree
by
Kashif+Shaikh
·
· Score: 2
You just need to write an obfuscator then, something that takes the inhouse code and changes variable names and adds bogus modules and subroutines.
I know developers who do this part without really trying that hard...
Heck, I know a whole bunch of CS students who are experts at this stuff. It comes in handy when an 'assignment due date' is coming up and have the challenge of taking a working assignment and obfuscating it enough so that TAs won't know the difference between Joey's and Mark's assignments:)
Copyright and handle your code correctly...
by
scherrey
·
· Score: 2
First - Hire an IP lawyer (preferably an individual or very small partnership- not a large firm) to write a contract that gives them a limited license to use your source code internally and makes it clear that you hold exclusive copyright to the code. Also - you do not deliver the code until the acceptance provisions of the contract are met (which means you get paid). You can certainly allow the client to view the code during development for review but don't pre-deliver source to them. Your lawyer will recommend provisions for additional penalties for copyright violation and your ability to get an injunction that are fairly boilerplate.
Second - actually file the copyright for your source code. This gives you stronger rights to sue in case of a copyright violation.
I don't really like the part where the custoemer HAS to pay the maintenance fees. Or what? You'll shut their business down? What's the customer getting for the maintenance fee? Support? Bugfixes?
While I generally agree with the principle of pay once for code, I understand that there are cases in which this isn't always in the best interest of the customer. If I can build a solution for a customer that consists of re-using code from previous projects, I can offer that solution to the customer at a much lower price. If, on the other hand, the customer wants to own the source code, I must recode everything from scratch. The customer literally pays me to reinvent the wheel.
Given that most companies simply want to use and modify software, rather than sell it, I think that it is a good idea to re-use source code. This provides them with a break on their IT costs. However, releasing the source to a third party is essentially releasing it to the whole world - if even two customers have bought access to the source code, and later you find said source code on the net, you have no legal recourse, as it will be almost impossible to prove which of the businesses released it.
-- The society for a thought-free internet welcomes you.
Don't start with a lawyer
by
InnovATIONS
·
· Score: 2
Do pretty much what you have already done here. Make some lists.
What You Will Provide Them
What You Require of Them.
What They Can Do With What You Give Them
What They Can't Do With What You Give Them
What You Can Do With the Knowledge Gained From Doing This.
...And so forth. Then sit down with the customer and work out these terms. Then once you have an agreement about what will be the terms of the contract then go to the lawyer who could probably have one of his paralegals whip up an acceptable contract. On the other hand if you go to the attorney first you will wind up with a contract that is 90% boilerplate and hard to discern what the key terms are in order to work it out.
I have used several books from NOLO Press to draft legal documents and contracts. All of which revolve around my Software business. Their books are very well written and understandable by us geeks with out a lot of legal knowledge.
One book stands out in my mind that you may want to check out - Web & Software Development: A Legal Guide. If you do end up talking with a lawery, this book may help you to fully understand what you want and to be able to make sure that everything is included in the contract.
Life is like an elevator, sometimes you get the elevator and sometimes you get the shaft
I suppose I could have answered with simply "Yes it's possible, just get a lawyer.":) I was just crazy enough to supply more details.
Seriously tho... I was encouraged when our lawyers suggested this paragraph and approved our final boilerplate contract. I had these same concerns (as foo_48120) that we would never be able to build a "legal" code library when all these (uneducated) customers insisted we developers have no rights to code.
Another caveat... almost every single one of our customers that got around to reading the contract expressed concern about this paragraph. Granted it never really stopped anyone who was actually interested in Steem, but we did have to use the "reversed" version a few times.
-- RudeDude
Perl/Linux/PHP hacker
Re:Give it to them for Free
by
Bouncings
·
· Score: 3, Insightful
I respect the open source movement and I think free (as in speech and beer) software is a Good Thing(tm), but I think saying coders are morally obligated to give away their source code is a step too far.
Some middle ground here. Obviously the free software vs proprietary software debate isn't going to solve anything in this context. The consultants are clearly developing proprietary software.
Having said that, it is pretty low down dirty and slimy to have a company PAY YOU to write a program, PAY YOU to maintain a program, PAY YOU to give them a copy of the program, then you turn around and claim that they are bound by a license. If they commissioned the work to be done, you shouldn't be trying to shove a license up their butts.
It's just my opinion, but I've had to deal with these kind of consulting companies. If the customer is reading this story, some advice: Hire yourself a different consultant.
And if the consultant is reading this post: You are over stepping your ethical rights. They paid for it, they should control it.
-- --
Ken Kinder
ken@_nospam_kenkinder.com
http://kenkinder.com/
Granted, but OSS as a buzzword annoys.
by
Valdrax
·
· Score: 2
I don't see how nerds with consulting companies that want to sign closed-source contracts is somehow off-topic for slashdot...
Granted. It seemed, however, like he was trying to use "Open Source" as a buzzword to seem more relevant (in the "hip" sense of the word) with the Slashdot crowd, when he was proposing the exact opposite of an Open Source scheme.
-- If it's for-profit but free, you're not the customer -- you're the product (e.g., the Slashdot Beta's "audience").
Re:Granted, but OSS as a buzzword annoys.
by
kalidasa
·
· Score: 2
If he had just changed the word "open" to "shared," no one would be complaining. Certainly is should be on-topic, as while in an ideal world all source code would be open source and free, in an ideal world I'd be making $1B a year sitting on my but. One needs to find the most feasible compromise between idealism and necessity.
You mean when you only want to eat a piece of the cake and not the whole thing? He just wants to give his customers a few extra rights without giving up ALL of his. It's just like all of those documents you see that say you can distribute them but not modify them. Except in his case it's the other way around.
-- The only thing I know is that I don't know anything; and I'm not even sure about that.
Re:Give it to them for Free
by
LostCluster
·
· Score: 2
The way copyright was meant to work was that creators got a short period in which they had monopoly rights on their creation in order to make a profit on it, because you need a profit for most people to do anything useful, but after that time was up the book, poem, or drawing would go into the public domain.
However, this system has been corrupted by stretching the time out every 20 years so that Mickey Mouse era works never fall into the public domain, and also had no foresight for works such as computer binaires where the human readable part, the source code, that generates it can be divorced from what is distributed.
"Free Software" is a step forward in repairing the system, however it does not provide compensation to the author that only he can claim. Yeah, I can support my program and charge money for that... but you can read my code, eventually learn it as well as I know it, then undercut me in the support service. If all programming code has to be "Open Source", then the cost of getting a program that does what you want is either going to be free because it already exists, or incredibly expensive because the code that is going to be written for you is going to be code that everybody else in the same situation can use. Having closed-source code allows the programmer to sell you a copy, but allows him to charge everybody else who wants a copy as well so that he can multiply the price times the number of people willing to pay it. If he only gets to paid for the first copy, the programmer's going to have to get all of his money out of the first buyer.
Re:Although he's not likely to find the definition
by
fscking_coward_2001
·
· Score: 2, Funny
I would suggest not using the ellipse so often...
I believe you mean ellipsis. According to my dictionary, ellipse is a geometric figure.
If you're referring to the proliferation of "*" in the post, these are not ellipses. A "*" used as an ellipsis would indicate omission - as in "f*** you!". In the case of this post, the "*" is used for emphasis.
That said, I too find all the "*" annoying. And if anyone can tell me what name is for "*", I'd appreciate it.
Re:Give it to them for Free
by
tolldog
·
· Score: 2
I disagree.
Different rates should apply to people working on software to help a company and working on software *for* a company.
In some lines of work, there is a steep learning curve to develop the needed software. Sometimes one may only get a few clients to develop this work for. So then they are presented with the option of re-developing similar software for each of the clients or building from a basic code base for all of the clients and then customzing as the site needs.
The second option is cheaper for the client and better for the software. It allows each client to benifit from the work that the consultant has done. And allows introduction of tried and true code instead of something recently developed.
It also saves the consultant from going crazy because they had just coded a similar routine 5 months earlier 4 blocks away from where they are curently working.
I have seen where some industries embrace the idea of having mindshare with the competition because the money is not made in the back end of how the work is achieved but the art in doing the work. They would be willing to sacrafice that small advantage of maybe having slightly better software than the other shops for having software that is going through many more iterations and having a much larger input into how it is used.
So... having a consultant own the code is not a slimeball thing to do. It makes good sense in some businesses. The important thing is having that spelled out in the contract. Then, everybody knows what they are getting in to.
-Tim
-- -I just work here... how am I supposed to know?
Like wedding photographers....
by
zerofoo
·
· Score: 3, Interesting
I'm getting married next year, and my fiancée and I, like most couples, are hiring a photographer.
We hired the photographer to take OUR images, when TV news crews do that, they need to have you sign a release to use the footage. Your likeness belongs to you, and no one else.
For $5000 you'd think we own the photos right? WRONG! The negatives are held by the photographer. Each photo has a "Do not duplicate" stamp on the back....nice huh?
I think i'm going to start charging my clients for all the computers and network gear I install, but i'm going to have them sign an agreement saying I own the gear, and they have to pay me to make any alterations to the network or systems! Can you imagine that?
If you're referring to the character, it's of course an asterisk. If you're referring to its function in the previous post, it's to provide emphasis, but isn't standard typography at all. The pratice originated in online discussions that were restricted to plaintext; in that context, it functions tolerably well as a replacement for boldface or italicized type to provide emphasis to certain words or parts of words (much as _underscores_ serve to simulate underlining a word). This of course makes it relatively useless in a forum that actually does allow both boldface and italicized type for emphasis, but the practice has persisted.
Some localities do not allow for those exclusions.
by
zerofoo
·
· Score: 2
Wrong. The company is paying you for whatever the contract says they are paying you for. No more, no less.
That may not be true where the contract is signed. Some localities do not allow such contractual exclusions. As always, consult an experienced contract attorney before you decide to roll your own contract.
-ted
Re:Although he's not likely to find the definition
by
Trepidity
·
· Score: 5, Funny
...believes code should be well formed, it's terminology and functions properly called and invoked...
I would like to call your attention to the fact that the character sequence "it's" is a macro that is expanded by the preprocessor to the sequence "it is". Thus the sentence fragment above, once preprocessed, reads "...believes code should be well formed, it is terminology and functions properly called and invoked..." This bit of code, as it were, is clearly not well formed.
Re:Give it to them for Free
by
Herkum01
·
· Score: 2
allowing the readers to freely modify and redistribute the text?
I have tried this and generally it does not work. Noone wants the "altered" book. I really hate it when my 5-year old takes a crayon to my good books!
Re:Some localities do not allow for those exclusio
by
Phillip+Birmingham
·
· Score: 2
You have a good point there, but in most localities, how much you get paid, and what your client is buying, are spelled out in the contract. Even the customary total ownership that goes with traditional employment is not a matter of custom, but of the words in the documents you are required to sign upon employment.
As you say, a good lawyer is the place to turn for advice on this.
-- Make me aerodynamic in the evening air
Re:Give it to them for Free
by
kalidasa
·
· Score: 2
*Programmers are morally obligated to give the code to their users and allow their users to freely modify and redistribute the code.*
When did this happen?
Is [insert popular novelist here] morally obligated to give away his/her novels, allowing the readers to freely modify and redistribute the
Take out the "freely redistribute part," and I can see a difference here. The difference is this: a book is not as dependent upon platform as software is. Necessary changes to the platform (for instance, if the vendor for the OS goes out of business and support is needed, or the OS reaches supported endoflife) might break the code and require some fooling around with the source. Don't have that problem with a book, as long as the book is distributed using traditional media. If a book is distributed using non-traditional proprietary electronic media, on the other hand, then it has all the problems that software has.
Re:Give it to them for Free
by
Bouncings
·
· Score: 2
This is between the contractor and the customer, to negotiate as they see fit.
The same silly argument that no one is forcing a customer to take a bum deal had been used to defend loan sharks, dangerously unsafe cars, and sweatshops. In all cases, it's untrue. Even though two parties enter into a contract of their own "free will," the terms of the contract can still be unethical.
-- --
Ken Kinder
ken@_nospam_kenkinder.com
http://kenkinder.com/
Re:Give it to them for Free
by
Bouncings
·
· Score: 2
So... having a consultant own the code is not a slimeball thing to do. It makes good sense in some businesses. The important thing is having that spelled out in the contract. Then, everybody knows what they are getting in to.
Since these are both for-profit businesses and can hire lawyers, I would agree with you in that case. But I don't generally agree with the idea that just because a contract was entered into with freewill, that it is an ethical contract.
In this case, I would just advice the customer to move along. I've had to deal, as a programmer, with consultants who are anal about licensing you code that you paid to produce -- and it made my job a living hell.
-- --
Ken Kinder
ken@_nospam_kenkinder.com
http://kenkinder.com/
the very source you cite, which is also my default source, actually does define Open Source. Go figure.
I use the ellipsis quite apppropriately in my header, but perhaps less so in the body. A hyphen may be more appropriate in these instances, although it implies a bit more emphasis than I intend, aiming for mere dramatic pause as an orator might. I can see where that might prove annoying in a world that seems to have abandoned the comma.
But then I'm also one of those weird people who thinks that Python's use of whitespace is the proper way to go about things.
In the US, willful copyright infringers are (always?) liable for treble damages, or you can elect $100,000 statutory damages if you registered the copyright. It's also a federal crime.
That's a good attitude to have...
by
artemis67
·
· Score: 2
if you're set for life and never have to worry about where the next job is coming from, and never intend to quit working. For the rest of us, there's nothing wrong with getting creative with the licensing of our work in order to get residual income. If the market will bear it (i.e., if somebody will pay you for it!), then absolutely do it.
I work for an advertising agency, and when we produce a logo for a client, the client has the option of either licensing the logo from us or buying it outright. Sounds crazy, doesn't it? It would seem like every company would want to own their logo, but no, there are a lot of companies that are comfortable with licensing only.
In effect, the customer believes they are getting a great deal because it doesn't cost them anything to license the logo while they employ us as an agency; they can put off the cost of purchasing the logo outright when (if ever) they swtich agencies.
Setting up our pricing in this way has several benefits: 1) it allows us to set a premium price on the logo that the client is not yet committed to, but is fully aware of and has accepted, 2) the premium price establishes our regular cost as a good value, and 3) it serves as a means to retain the client.
Obviously, if we aren't doing great work for our clients then we don't deserve to retain their business; but, on the other side of the coin, we also have to assume that our client is hearing pitches from the competition (mostly informal) on a fairly regular basis, so the more "entanglements" the client has with us, the less likely they are to move on a whim.
I don't know if it's realistic to approach code licensing in the same way, but it is a possibility.
Yeah, I can support my program and charge money for that... but you can read my code, eventually learn it as well as I know it, then undercut me in the support service.
So? I can read novels written by a living author until I'm more well-versed in them than he is, then teach other people about them and how to interpret them. Literature teachers worldwide do this.
Writing a work doesn't entitle you to a monopoly on support regarding that work. Look at all the 3d party manuals and training available for Windows, a closed-source program.
Having closed-source code allows the programmer to sell you a copy, but allows him to charge everybody else who wants a copy as well so that he can multiply the price times the number of people willing to pay it.
NO. Copyright does this _MUCH_ better.
Firstly if you had a closed source uncopyrighted program, then any idiot could just make a copy of the binary they bought and resell it. Most people aren't interested in the source. And rare is the copy protection scheme that isn't broken.
On the other hand, if you had an open source copyrighted program, NO ONE can make copies of the source or the binary. The most that they can do is learn how you did things (just as we learn how an author writes by studying his books) and compete with you. Me, I like it when two people compete -- it means that they'll both have to strive to make a better product and charge me less money for it. Most people seem to share this view.
However, the competitor could NOT legally copy your work or use yours directly in a material way in making his own.
Furthermore, you get all the same advantages with regards to his code. And if either ever suspected the other was infringing, lawsuits would surely follow that would be aimed at driving the infringer out of the marketplace for his violation.
I'm not seeing a downside. All you've done is tell me why copyrights are good. You have failed to support an assertion of closed source software being good.
-- --
This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
Well whoever the author of the plays was, let's just arbitrarily call him Shakespeare for the purposes of this discussion.
Anyway, would he be happy if someone else took Hamlet, recast it with lions and made an animated cartoon out of it without giving him a penny? No.
But if the work is not copyrighted, we don't really give a flying fuck what he thinks. He's unimportant. Copyright is designed for the benefit of the public; not the author.
Besides -- he can't have it both ways. Shakespeare's Hamlet is directly based upon an earlier play of Hamlet. The story is quite old and eventually is loosely based on real historical events hundreds of years earlier.
Shakespeare never had an original thought in his life. Why should he get to borrow from other people and no one get to borrow from him? In fact, since it is only the public that we care about, why should we care who borrows what, so long as in the end, we get the maximum possible number of works for free, to do with as we please?
If someone wants a copyright, then they should have to tell me, a member of the public, why I should give it to them. What's in it for me?
-- --
This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
We only charge access to the cvs server (basically a subscription).
This is for companies who find they want to manage the code themselves, or hire thier own programmers.
IN the end though, you still need programmers. Whether it be us, or someone else, they will have to contribute those changes back into the community.
So, many companies stick to component subscriptions, and then use the API's against software they write explicitly, which is private.
Very similiair to what Nvidia does right now with XFree86.
The company gets too keep thier software process unique, and fundamental to thier business edge. (i.e. nobody can buy the process they use...)
While at the same time, the components they use to power that software get updates from said company to our cvs server for others to use.
Very nice arrgangement. I haven't found any company yet that has had an issue with the GPL cvs server arrangement we use.
We are a component company.
-hack
-- Got Geometrodynamics? Awe, too hard to figure out? Too bad.
Re:I would make two version of the tree
by
isomeme
·
· Score: 2
Actually, source shrouding was most commonly used to sell POSIX-compliant Unix programs back in the 80s. There were many flavors of Unix, all with different object file formats, but (with a liberal dose of conditional compilation) you could write programs that would compile and run on all of them. Rather than maintaining a library of binaries for every version of every flavor of Unix, you could just ship shrouded source with a makefile.
-- When all you have is a hammer, everything looks like a skull.
Get a very good intellectual property lawyer, or better yet, a lawyer in a firm that deals with business issues and has IP specialists on staff.
This is VERY true! Hire a lousy lawyer at $60 per hour and he'll make the contract for you in twenty hours. Hire a good lawyer ay $400 per hour, and he'll say "We did this before, here's a standard contract for this sort of thing" and he'll bill you for an hour.
--
Moneyed corporations, non-working 'poor' and criminal prisoners are turning productive citizens into tax-slaves.
use the law
by
Anonymous Coward
·
· Score: 2, Interesting
There are actually already laws that protect your interests in this situation.
You see, when you write code, you are automatically grated what is called a "copyright" to said code. This means that no one but you can make copies the code. There are of course exceptions for certain purposes such as commentary, parody, personal use, backups etc, but in general, as long as you own the "copyright", only you are going to be able to distribute and/or sell the code.
So go ahead and give your customer a copy of the code if they want, up the price while you are at it, (software with code is more valuable that without) but make sure that they understand you are retaining your "copyright" to the code.
Note that work for hire applies to employees but not contractors! A few clients have been burned because they didn't know or care about this, and their contractors neglected to raise the issue. Requiring the contractor to agree to assign the copyright to the work to you is the usual way of handling this.
The real money in software is in the services industry.... Just look at Redhat: they are actually making a profit through selling improvements to something that is buggy and hard to use otherwise.
Just look at Microsoft. They're making a profit selling software.
My school uses a product called Banner, made by a company named SCT. We get the full source code for the product. We can make changes if we want (our responsibility to maintain).
Obviously we can't give the source code/product out to anyone else. And we pay an annual maint fee. (Not sure what would happen if we stopped paying it - if we'd just code freeze where we were (no more upgrades) or have to stop using it)
The great thing is that tons of colleges use this product, so there is a large nationwide community of users. The company has several mailing lists for users on various aspects of the product. Code mods/fixes (amongst registered users) are quite normal, and sometimes some stuff even goes back into the baseline product.
The company is also active on these lists. Despite anything I may dislike about the product, I have to admit that I do like the company and the relationship we have with them and the other users.
To me this is a perfect example of how open source (not free source mind you) works wonderfully and lots of people benefit.
I'm sure there are some who believe that all software should be free source, but as for open source, it would be great if more companies would work like this.
If your not careful, you may find that the client can claim that since they comisioned the work, it is what is known as a "work for hire", which would (as I understand it, IANAL) mean that they own the copyright, not you.
One way to avoid this, without the need to hire expensive lawyers, is to ensure that neither of you own exclusive copyright --- how do you manage that? By ensuring that you use some code that is GPLed by other people, so that the final work is bound to be GPLed as well.
Then, as long as you get the clients permission to have a copy of the code at your site, even if they try to claim copyright on the work you wrote for them, you can claim your GPL granted rights on the code they distributed to you, so at least you don't end up with nothing.
The only question you need to ask yourself then is: "Is the client wanting to get into the software industry?". If the answer to that is "No" then chances are they will not be tempted to redistribute the GPLed code that they have, becuase they're busy doing whatever it is that they actually make money at. If that is the case, then after this deal, you still have the only copy of the code that is practically available to the world, so you still get to make money out of it.
Even if one of your subesequent clients does redistribute the GPLed code, you are still the experts in that code, so unless you're doing a spectacularly poor job of supporting it, you'll still get the calls, so could find that your business is actually increased by this.
Also, people deploying your code in new situations, without being your customers, is actually to your benefit, becasue they are likely to find bugs for you, which you are not obliged to fix, but which you could offer to fix for money. You then get to update your paying customers before they are bitten by that bug, which is likely to keep them cheerful.
And make them get a bond to back up their word
by
swb
·
· Score: 3, Interesting
Instead of relying on the courts, make them take out a bond payable to you upon a pre-determined proof of contract violation.
It's a hell of a lot more bulletproof than the courts, and oftentimes bond issuers will make them put up some hard assets as collateral (property, buildings, tools, or a big cash percentage) which is no big deal if they're honest, but fucks them right in the ass if they're not.
The bond issuer will be legally required to pay the bond based upon the contract surrounding the bond's payment terms, but they don't care that much since they've got the pink slip to the factory. Sure, they'd rather not liquidate the factory, but that's the business they're in and they're good at it.
Jury trials are a huge hassle, and even if you're right you don't always win, and even if you win you lose due to costs, delays and lame jury awards (contract to Republican fear mongering, they're not always generous).
Re:And make them get a bond to back up their word
by
drudd
·
· Score: 4, Insightful
Guess what... you just talked yourself out of the contract. No company is going to put up any of its own assets to put your mind at ease. They'll just go with the next highest bidder who doesn't want them to jump through so many hoops.
Doug
-- Venn ist das nurnstuck git und Slotermeyer? Ya! Beigerhund das oder die Flipperwaldt gersput!
Re:And make them get a bond to back up their word
by
swb
·
· Score: 2
Let's see, its software that runs a substantial portion of their business, so important that they find it desirable to have and modify the source code. Given the range of providers, if the original poster was just the low-ball bidder and all other providers providers the same products in the same manner (ie, working access to the source code), then maybe you're right -- demanding a bond on the source code might be too much.
But if you got the contract because no one else *would* share the source code, suddenly its a different ballgame and having them get bonded to access the source code suddenly is more reasonable. Given that it was "Ask Slashdot?", I'd guess the contract isn't worth more than $300k per year, and a bond of that size to any decent sized company would likely not require them to hand over the pink slip to the factory, it might actually be reasonable.
Just use the Microsoft solution...
by
Alsee
·
· Score: 2
Step 1 they have to sign a non-disclosure agreement before they get to see the contract they have to sign before they can look at the code.
-
-- - - You can't take something off the Internet! That's like trying to take pee out of a swimming pool.
Open Source without escrow?
by
Radical+Rad
·
· Score: 2
What would that be? It sounds like what you are looking for is closed source but with the source held in escrow to be released only if your company becomes defunct. That sort of thing is already being done. My company has such an arrangement right now.
I did read the article. A couple paragraphs before your selected quotation it says this:
How do you provide open source without escrow, yet protect what we are documenting up front as out intellectual property rights in the ownership of this code? (Emphasis mine)
My statement was in response to that use of the term "open source" to describe what clearly is not open source.
That's not "Open Source"
by
Phil+Hands
·
· Score: 3, Informative
Sorry to be pedantic, but what you describe is NOT Open Source.
Just because you get the source, is not sufficient to qualify as Open Source.
The Open Source Definition is effectively the same document as the Debian Free Software Guidelines, and as such both have conditions that require that the software be alowed to be redistributed, even if modified or aggregated:
1. Free Redistribution
The license shall not restrict any party from selling or giving away the software as a component of an aggregate software distribution containing programs from several different sources. The license shall not require a royalty or other fee for such sale.
...
3. Derived Works
The license must allow modifications and derived works, and must allow them to be distributed under the same terms as the license of the original software.
...
7 Distribution of License
The rights attached to the program must apply to all to whom the program is redistributed without the need for execution of an additional license by those parties.
Re:That's not "Open Source"
by
Sabalon
·
· Score: 2
my mistake - at one point I had thought that Open Source was describing that instead of free software, or at least encompassing that somewhere.
There's gotta be some term for it somewhere - sourceware?
Re:Sure
by
Anonymous Coward
·
· Score: 3, Insightful
We're not talking about The Open Source Definition (OSD) here, we're talking about giving a client access to the source code, and stopping them from distributing. Technical measures will fail (you could make it more difficult, but without legal backing you're screwed anyway), so you need legal. I'd remove the Open Source terminology from it entirely and get a lawyer to draft up a contract. Put in something that says they have to follow certain procedures when using the source code to lower the risk of it getting out, and that they have to pay damages if the source code is leaked.
If your company writes the software, it doesn't necessarily have to document it. And, if you write the software, who else knows it as well as you do? You could make a fortune on writing extensions and ironing out bugs that existed in the original project.
Ahhh, I love it.. someone finally admitting that Open Source is a disincentive to writing well documented, easy to use programs.
This has been a problem with small programming shops for decades, and the answer is always the same: put the source code in escrow, with contractual provisions that take effect if your company folds, which gives the customer access and full rights to the source code. Any reasonably competent lawyer can set this up for you, including secure storage of the source code. All you have to do when you do a delivery to a customer is to cut a source code tape and ship that to the lawyer.
-- We call it art because we have names for the things we understand.
And *your* should learn to read.
by
autopr0n
·
· Score: 2
He only said freedom to redistribute. All Open source software may be redistributed, that's the whole fucking point, dumbass.
Get a good legal footing and make sure everything is ironclad. It's the only way.
A company I worked for used this method. Source code was available on the clients servers. If the client wanted to modify the code we gave them guidelines that essentially said "Make a copy, don't kill anything thats live, and it's your fault if it screws up and eats your database".
Some clients never cared that they had the source. Others had large teams of programmers that contributed code back to use and helped fix bugs pre-emptively.
It's a good solution, but again get iron-clad legal binding agreements. We had one client that decided that they could start marketing a modified version of our system to other potential clients. We pointed out that even modified versions included some code that still belonged to us. Either 1) pay us a heavy license fee for its use (as stipulated in the contract) or 2) stop selling it.
They stopped trying to sell it.
Re:Give it to them for Free
by
autopr0n
·
· Score: 2
Well, for one thing, the model of selling a product doesn't work in the software development industry.
Is that why bill gates is only worth $65 billion?
-- autopr0n is like, down and stuff.
Personal experience
by
RobinH
·
· Score: 3, Insightful
This is a very common issue at the company I work for. Any company that does custom engineering work (we do computer hardware, electrical design, installation, and of course software) for more than a single customer MUST retain ownership of their code simply because you can't afford to rewrite all of your software every time you get a contract with a different company.
When we quote a project, we do it based on the amount of work it will take to accomplish it, but we don't sell them hours of engineering work. We sell them a working system. If we budget 500 hours and it takes 1000 hours to write some custom piece of software, the customer doesn't have to pay us twice as much for the project. We sell them a system, with the license to use the software, and we give them a copy of the code as a deliverable for them to modify and use for the specific system we sold them.
Most people think companies like ours try to retain ownership so that the customer has to pay us royalties, but the fact is, we rarely, if ever, charge for maintenance. We sell a warranty with the system, so we fix any bugs that arise. If we do a good job, they hire us back to make changes to the system, which we do get to charge for. However, our customer can just as easily go to a different company and hire them to make the change, because our software license permits that.
The real reason we have to retain ownership is so that we can freely copy portions of code from previous projects to use in future projects. Say, for instance, we wrote a code module that abstracts a certain piece of hardware. If we used that same piece of hardware on another project, we would want to use the same code module to make our life easier. Unfortunately, if our previous customer owned the software, we would have to pay THEM royalties to use that software!!! The fact is, retaining ownership of that code gives us a competitive advantage in future projects, because some of our development is already done, so we can try to under-bid our competition (who are doing the same thing we are, by the way).
In fact, writing software today is rarely a case of writing code from the ground up, and selling it to someone. Now our job is to take existing pieces and put them together to form a system. That's why companies in our industry are called "Systems Integrators".
-- "I have never let my schooling interfere with my education." - Mark Twain
This is Relatively Easy
by
Compulawyer
·
· Score: 2
at least in the concept. REGISTER your copyright in the code with the Copyright Office. License the code to the party with appropriate restrictions.
--
Laws affecting technology will always be bad until enough techies become lawyers.
This sounds like a job for..
by
defile
·
· Score: 2
If only there were people who specialized in understanding business law that you could hire to help you write such an agreement.
Please note that what I am looking for is NOT open source in the GPL/BSD sense.
Rather, perhaps I should call it "Disclosed Source." It would be the right to own a copy of, read, and learn from source code in EXACTLY the same way as you could with a book. It would not include the right to use, modify, or copy it, except as permitted by fair use et al, again just as with a book. (until the copyright expired, whereupon anything could be done, again, just like a book)
With that essential defintion, let's proceed:
1) But copyright is founded on a policy that INTENDS for people to clearly have access to works and be able to reuse them for their own works. Thus, copyright should ONLY be granted for works that are not closed, because we a) want to discourage closed works, b) only will reward disclosed works.
2) This is inapplicable to my disclosed source proposal. People would NOT have the right to modify the software as a normal function of copyright. They could contract for that right, as with the GPL, or they could do so in a way that wasn't infringement (fair use, post-term modification). But while they might compete with you, it would not be any worse than as with any other class of copyrighted works.
What I'm basically saying is that Microsoft does NOT make the rules. The public needs to take a more active role in ensuring that copyright works for their benefit; it must never be harmful to them, no matter what authors might want. That would be to turn the world on its head.
-- --
This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
source license NOT open source license
by
scharkalvin
·
· Score: 2
You are confusing a source license with open source. You need to grant them a license to have a copy of the source, but just because they can see the source does not make it an open source license. You didn't give them an open BINARY license did you? You may license them to have a copy of the source in the same way as the binary. IE: they can't make any copies of the computer readable source (except as required to do maintance), they can't make any human readable copies of the source (via photocopy means), you may limit the number of printouts of the source that they may keep on hand, etc. Microsoft and other software houses would grand a source license to clients that needed them where support or perhaps custom mods were an issue. The use of NDA's were involved, you should use them too.
Very common
by
cerberusti
·
· Score: 2, Informative
Actually this is very common... I can speak from both sides of the issue as my previous position was with a large company where I outsourced much of the work and, I currently own a small software company. This is generally just to protect the company should you go bankrupt. Just have your lawyer (if you do not have one, you need to find one, as having a good lawyer is essential to any company, large or small) draft a contract including exactly what they can and cannot do. Usually ours state that they can use the source internally however, they may not resell it and, they may not include it in a product they sell. Depending upon the circumstances (you were too vague in your submission to give you a clearer answer) you may want to make exceptions for certain uses. I do hope, however, that you are doing this before you signed a contract to provide the product, otherwise it may be too late.
-- I'm a signature virus. Please copy me to your signature so I can replicate.
Experience from the other side
by
CustomDesigned
·
· Score: 2, Interesting
My company has been on the other side of just such an arrangement. We purchased EDX/MAX (a unix virtual machine implementation of the EDX operating system used on IBM Series/1 minicomputers) with a source license many years ago.
I can't find the license at the moment, but it let us modify the source (but they would only support their versions), and even sell systems based on our modified source - provided we did not sell on any platforms that H&A supported. We had to pay H&A a one time fee for each system we sold based on our modified source.
The motivation for H&A was that our first modification was porting their system to our platform (Motorola SysV88). Thus, each system we sold was gravy for them. We also shared enhancements for a few years, then H&A went out of business (due to the market for Series/1 conversions drying up). Boy, were we glad we had a source license!
That source is still running. Our systems run the EDX VM as a subsystem under a Java VM, and the EDX "screens" display on a Java widget. The EDX code gets gradually rewritten, although I wish it would disappear faster . . .
The answer to the question turned out to be giving about $3000 to a good lawyer. They took care of the rest. On an $80k/year software license, the $3000 is money well spent.
That's what I mean. I didn't mean in the open source soapdodging linux hippie zealot way.... I meant it in the "It means I have access to the source".
That's why I mentioned Codewright... it's fully commercial, you pay per-seat, but the full source is included so you can modify it for your own needs if you want. You can't distribute it, you can't send out your mods.. but your company can customize the environment, which is the whole point, and everything open source is supposed to be about.
People do have the right to modify the source as a function of normal copyright, as long as they aren't distributing those changes.
Define closed or open? The executable code, in and of itself, is a work, it's just not in a form YOU want it in.
If I write a book, does that mean the rough drafts, and pre-released manuscripts shouold be yours as well? What about the digital copy I sent to the printer? Shoudl you *DEMAND* to have that as well as the book?
Well, can I reasonably do as much with a compiled binary in the format that it is ordinarily sold, as I can with a book in the format that it is ordinarily sold?
Congress was given a copyright power when it was never envisioned that a work could somehow be harder to use, modify, or copy without permission (which is expected when the work falls out of term) than a book, or painting, or song, etc.
If a new class of works isn't as innately user-friendly in this sense as the classes of works known in 1789 were, then I submit that either a) the new class should not be eligible to be copyrighted, or b) should require supplementary information to be released with it to make up for its inherent deficit.
Otherwise, the public domain is not sufficiently compensated; the copyright will be unearned.
And note that source is NOT the same as a rough draft or manuscript. It IS the work, in the only form which it is reasonably able to be modified. A book that magically could not be copied would be just as ineligible for legal protection IMO.
-- --
This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
"Open Source" and "Free Software" have very definite and widely-used meanings. Using them in unconventional ways is going to confuse and mislead people as to what you're really talking about. That's the best way I know of to determine whether a phrase is being used correctly.
Note that this means the word "hacker" cannot be used correctly these days (except to a known audience)--whether you use the classic meaning or the media's confused meaning, a lot of people are going to misunderstand.
your parse order is erroneous
by
Trepidity
·
· Score: 2
The contraction expansion takes place before the possessive resolution does. The possessive of "it" is thus defined to be "its" as a special case.
Re:This issue is hardly as black and white as that
by
ortholattice
·
· Score: 2
If I'm an architect and design a house for you, you get to live in the
house. But if an architecture magazine publishes an article on it, I
get the royalties, not you. And it's my reputation as an architect that
is improved.
While such arrangements probably exist, I've never heard of one in my
immediate experience. I certainly have no such contract with the
architect who designed my home - he was paid for his services and I own
whatever he produced in exchange, period. Why would I decrease the
market value of my home by having to encumber a potential buyer with
legal liability if the buyer sells a photograph of the house? Or have
to worry about pictures I take of it? That's nuts.
This is how UNIX(tm) was for YEARS.
by
rdmiller3
·
· Score: 2
Your customer wants to see the source code but
you don't want them to run off with it like it's
free, eh?
That's how UNIX(tm) has been licensed for years.
You used to buy a license for just the binary
run-time stuff, or else a license which
also gave you the source code. You needed the
source code if you were going to do driver
development, for example.
Just because you let your customer see the source
doesn't mean your project is "Open Source". Yours
most certainly is not.
As for your "maintenance contract", well, my
guess is that your customer doesn't want to get
stuck with no options if your company goes under.
And let's face it... if you're claiming to be
a software developer but you're this
unclear on what "Open Source" is, they've probably
got good reason to doubt your company's viability.
They specified and paid for the code, they underwrote your risks while writing the code. They own the code. You are trying to rob them.
When I pay a plumber to put a new bath in I don't expect him to get paid again by the person that I sell the house on to.
If you want the code back, pay the owner for it. DUH!
TWW
-- "Encyclopedia" is to "Wikipedia" what "Library" is to "Some people at a bus stop"
Welcome to the Wonderful world of Consulting.
by
Tadghe
·
· Score: 2
To put it bluntly... Welcome to the wonderful world of consulting.
This situation is normal, with almost any software project; the issue of source code (as well as related IP) ownership MUST be addressed, unless your company wants to spend lots of "quality" time with attorneys. Your problem is apparently; you have not consulted with an attorney and (at least it seems, my apologies if this is untrue) are a bit new to this.
The ownership and license of the software should be spelled out explicitly in the contract. If your not a one-man shop kind of operation (the article doesn't give any real clues), then ask some of your people who've worked in other consulting organizations if they have any of their old contracts. Failing that, again, consult with an attorney who has is familiar with this area. Just don't choose your uncle's-cousin-once-removed-and-is-an-attorney just because they are "cheap" You really want someone who has done this before.
In any case, congrats on landing a client, new gigs of any size are increasingly hard to get in this economy. Just don't spend forever getting a contract in front of your client, they have been know to change their minds:-)
A dyslexic typing without the benifit of a spell checker is like a highwire walker performing without the benifit of a net.
You get brownie points for being the only one to catch that one. Everyone else "piled on" my incorrect typing of "it's," which since I'm well aware of the differences was a mistake merely on the order of using the wrong form of brace accidentally.
Anything an employee creates is a work for hire. Nothing a contractor creates is ever a work for hire, though it's common to require copyright assignment in the contract to get the same result.
Re:Sorry.. but you are missing the point.
by
cpt+kangarooski
·
· Score: 2
I disagree.
The sole objective of copyright is to promote the progress of the arts. This is best done by making sure that there are many works in the public domain, which may be used as is, copied, altered, and redistributed.
The method by which we accomplish this is to set up the copyright system, but it is just a means to an end.
However, compiled binaries cannot be meaningfully modified. And they run the risk of being unable to be used, copied, or redistributed if various copy protection measures are implemented.
If the public is not receiving that benefit from those works, then why should they be giving anything in exchange for them? Copyrights are only given, after all, in expectation for full rights to the entire work in the end.
Source is essentially the work. It's what's needed to make changes to (and maybe even copy or use) software without unreasonable amounts of effort demanded from the public.
As for contract -- you're just an idiot. Contract only effects people who have privity. If you write a program, and I obtain a copy of it WITHOUT signing your contract, and it's not copyrighted, you're just royally screwed.
Your position is as absurd as saying that we can use contracts to replace tort law or something. You really just don't understand how things work.
-- --
This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
Seriously, why are you even bothering to "Ask Slashdot?".
This is a legal issue, you'll need legal contracts and agreements, all of that.
Talk to a fucking lawyer.
I ran my consulting business under the same premis for 15 years. The contract they signed with me included, among other features, their right to the source code with the restriction that they could not use it as the basis for competition against me. Terms included where a conflict could be ajudicated, the amount of damages, etc...
Running with Linux for over 20 years!
We have a similar situation where I work - We've handled it by putting the code in the hands of a third-party escrow service. If we disappear, they get the code. Otherwise, they don't get to look at it.
- James
When it comes to selling source code, that's the only method that works.
... How do you provide open source without escrow, yet protect what we are documenting up front as out intellectual property rights in the ownership of this code?"
First off, find out that what you are talking about is not open source. If it was open source, or a compatible license, than your client company would be free to redistribute.
Second, it's called a contract. And lawyers. Slashdot is neither. Just (have a lawyer) draft a contract specifying exactly what can be done and saying anything not listed is expressly forbidden unless written permission is granted.
Dacels Jewelers can't be trusted.
This seems obvious to me. Come up with a license agreement for the source that specifies what your customer is allowed to do with it. The restrictions you outline seem reasonable, you want to protect your interests, they want to protect theirs. Hell, get a lawyer to draw up the contract for you, and you will have legal recourse if the company breaches the contract and tries to sell a competing product.
Look into a Exclusive Use rights clause in your contract. There's nothing saying that you can't agree to let them use the software and have a copy of the source as a deliverable. However, you can limit their ability to resell/reuse the component.
Additionally, create an Intellectual Property clause in the contract spelling out specific ownership rights/responsibilities.
Insert IANAL comment here.
Quidquid latine dictum sit, altum sonatur.
They may at their discretion hire others to modify the code, but would still be required to pay their maintenance contract and be prohibited from reselling it or using it to run an additional business
So, you've got the possibility that you'll be responsible for supporting the product even though other people are modifying it? How are your people going to have expertise in the work being done by these others?
This sig has been temporarily disconnected or is no longer in service
A) This is not open source you're talking about at all. You don't understand the term, obviously, or are abusing it to somehow seem relevant to Slashdot.
B) This is purely a legal question. Ask a lawyer. It's all a matter of the contracts. The first company I worked for did exactly the same thing for one of their product lines, a COBOL-based transaction processing system. You got the code, but if you wanted support, you had to pay us. You couldn't resell the code without getting your ass sued off. It's just that simple. There is no technical solution to it. You just make it very clear that you can take them for all they're worth if they resell your code.
Get a lawyer. Leave the work to them.
If it's for-profit but free, you're not the customer -- you're the product (e.g., the Slashdot Beta's "audience").
You need to see an IP lawyer. He will tell you to write an agreement then he will revise it. He will include provisions in the agreement that spell out your protection under copywrite, trade secret and licensing issues.
You really do need to get a lawyer for this. I've written many agreements myself and am good at it, but would defer to a lawyer on this one.
"Eve of Destruction", it's not just for old hippies anymore...
They are paying you to code something for them. You are a contract firm. What you code for them is their property. Would you get to keep your code if you worked for a company? No, the code would belong to them. This company is paying you for the code, and so, when you are done, then the code belongs to them. They lose their monetary investment if you get to keep the code and resell it to their competitors.
If you offer them outstanding service and support throughout the time they use your product, they will come back over and over again to you. They will want you, and only you to maintain the code, as well as to provide upgrades. If you start jacking them up, have poor business relations with them, they will look for alternatives, and they will take your code, no matter how many clauses you place in your EULA.
Veni, vidi, vici.
While I'm sure you intended to be funny, showing a customer bad code is a bad idea. It risks making them wonder how reliable and safe your code is, for one thing. This will make them consider someone else.
C//
I negotiated with people similar to your firm MANY times and got source code that I changed on occasion but mainly just overviewed what I was being billed for.
I have FULL source to the entire PRIME operating system (Primos), and full source to many things I ran on that mini-computer mainframe.
I had full source to ADP's Manage 2000 system. (over 100,000 dollars per copy per machine)
All sorts of things.
I did some amazing hacks and rewrote some crital bits, but mainly I wanted the source because only an idiot would trust a rinky dink outfit like yours to follow up on an escrow arrangement if you went belly up.
deal with it.... your precious source means NOTHING to the customer but comfort. YOu can salt it with lots of identifying special lines and variable names and sue for millions if they ever give it to someone that cares about your damned source.
No one is going to exploit you... they will merely see if you are billing correctly for mods.
Technically speaking, there really isn't any way to prevent this. If they are to have maintenance access to your code, then there is no way to keep them from giving the code to someone else.
The only thing I can think of that might work would be to add extensions to the language you use (like extra keywords) and provide your own closed-source compiler, which is hobbled so it only works on the original system, perhaps with some kind of hardware dongle, or net connection that connects to your server to verify the compiling machine's serial number and some cryptographic key.
This wouldn't prevent it from being hacked, but it might make it difficult enough to make the prospect less likely.
bytesmythe
Hypocrisy is the resin that holds the plywood of society together.
-- Scott Meyer
Assuming you are in the United States, your work is still covered under US Copyright law. Just because you are giving them access to the source code, does not give them redistribution rights, or the right to make a derivative without expressed permission.
So, all you should need is an (C) Your Co.
All Rights Reserved.
If that doesn't work, a handy lawsuit works wonders.
Black and grey are both shades of white.
Shouldn't you have figured this out before even writing the first line of code? The fact that they want source code is a pretty good indication that they think they "own" the software you are developing for them. And that makes a lot of sense since I don't think that any company is going to finance the development of software that will end up potentially benefitting the competition. You better get yourself a lawyer and send her every scrap of documentation and agreements you have with your client to make sure you understand the situation you are in.
That would totally negate them having the code to begin with.
It sounds like they want the code so that they can make changes to their business software when and how they want it.
If you intentionally make it difficult or impossible to do what they're entitled to do (it sounds like they're wanting to basically buy a copy of the code, like a book or something), then you're in violation of the spirit, if not the terms, of the contract.
Plus, if you're not nice to the people who are paying you lots of money, you're less likely to get repeat business from them.
"A microprocessor... is a terrible thing to waste." --
GeneralEmergency
I swear, this sounds exactly like me. I hate group projects at school, and when I had to do one for software engineering, I made my teammates do all the documentation work while I wrote the code. ;)
bytesmythe
Hypocrisy is the resin that holds the plywood of society together.
-- Scott Meyer
There are two basic ways (as we see it) to do this. Keep ownership and grant a license that has a specific list of allowed uses or just the reverse where you give them ownership but retain specific license for yourselves.
You can usually make it work as you need it with either party having ownership, since ownership just means they have final say, can change the license, and get any non-specified (default) rights.
Keeping in mind this is only one small part of the whole contract and I don't promise this is safe or useful for you as it is... here is a paragraph right out of our standard contracts:
(b)Grant of License. Steem hereby grants to Client, upon the terms and conditions set forth in this Agreement, a non-transferable, non-fee bearing, single use, worldwide right and license, without the right to sublicense, for software developed by Steem for use with the Web Site. Any artwork, graphics, or designs created to Client specifications for use in the Web Site become property of the Client upon the Web Site Launch. However, Steem retains the right to display any created artwork, graphics, or designs as part of Steem's portfolio of design work. Steem retains sole rights and ownership of all interactive code. The provisions of this Section 7 will survive indefinitely regardless of the completion or termination of this Agreement.
RudeDude
Perl/Linux/PHP hacker
You just need to write an obfuscator then, something that takes the inhouse code and changes variable names and adds bogus modules and subroutines.
I know developers who do this part without really trying that hard...
Programmers are morally obligated to give the code to their users and allow their users to freely modify and redistribute the code.
When did this happen?
Is [insert popular novelist here] morally obligated to give away his/her novels, allowing the readers to freely modify and redistribute the text?
I respect the open source movement and I think free (as in speech and beer) software is a Good Thing(tm), but I think saying coders are morally obligated to give away their source code is a step too far.
Redundant I know, but if enough people say it you might believe it. Get a lawyer. The only way to resolve the issue if it comes up is through a lawsuit and when that happens you are going to want to have an airtight case.
Get a lawyer.
Here's a question for you:
You said "for their protection". Protection from what, precisely?
If they are concerned that you, as a company will cease to exist, and they will no longer be able to modify their code, then the previously mentioned escrow service should be perfectly fine with both of you. If this is another issue, the question of relevance comes to mind. If they want it to be sure that the software is "secure" from buffer overflows, etc, then you will need to hire a lawyer and write some sort of ironclad document to make sure they can't steal it, sell it, or claim any royalty fees on it. If they want it for any other purpose, I don't see them having a ligitimate claim to the software. I mean, sure, they're your employers, but unless there was something funny in the bid documents, they probably don't have any "right" to see the code.
hmmmm?
What? You had better share that insight with all of the commercial software vendors out there quickly before they go out of business! Make sure to include Microsoft, Oracle, IBM, etc...!
Programmers are morally obligated to give the code to their users and allow their users to freely modify and redistribute the code. Again... WHAT? I am not aware of any code of morals saying that developers have an obligation to give away their code. Can you explain to me, all GNU and FSF rhetoric aside, why my company should spend countless resources to create a product that we give the code away for and let people do as they wish with it? I personally don't get that logic.
Slightly offtopic (but not by much): I think that the ideal license is one that says something like: "By purchasing this software you get rights to the source code, to do with as you like *within* your organization. If you plan on offering your changed product outside of your organization, you must sign an approved Royalty agreement with the Publisher..."
Don't bite the hand that feeds and don't assume that you can make money by putting a product out as OSS and that someone will pay you to extend or support it.
More seriously, this really is a legal problem. I don't know if you were looking for a technical solution or not (I got the impression you might be), but the short answer is that it doesn't exist - once they have the ability to look at the source, it's a matter of their honesty and your ability to detect and prosecute infractions.
If you must try a technical solution, you could maybe attempt some kind of crypto-escrow: They get the code encrypted, and if they ever want to look, they have to buy the key - or if your company folds, you are contractually bound to give it to them gratis. But you'll probably have trouble getting your client to go for that, as it really doesn't offer them any advantage over you just giving them the source (except perhaps some liability protection).
Good luck,
- B
http://www.bradheintz.com/
- updated
I don't mean to sound flippant.. but i'm in a line of work where, when i work during the day, i assume that that work is done, and that tomorrow, i'm going to get paid for working tomorrow.. and not to keep getting paid and repaid for the work i did last week.
.i give it freely to the companies, and their use of it is what they will of it, except that they must reference the writer - me - when they use the data. They are not allowed to say "this analysis was done by us" I only ask that they say "this analysis was done by gsfprez".
Is the concept of "pay me for work" completely dead? Must everything be "pay me for work, and keep paying me for years later too?"
Why do you not just simply charge them for getting a job accomplished, and then, if they want you to come back, tell them it will cost them more money?
If you think that there is something to your work, and if the source code get distributed, then you may see that others will want to pay to have you come and work for them to help them integrate whatever it is that is so wonderful that you wrote up.
What you sound like you want is "pay us now, but we want to hold our code hostage so that any time someone uses it, you want to get paid."
If you were to ask 3 times as much for your work, and they got an unlimited use of your code, would that be sufficient?
IANACIAAA (I am not a coder, i am an analyst), so please, this is not a "you suck" post.. this is an honest question.... where does my idea fall flat, if it does, please tell me, i want to be educated.
So that you can get a sense of where i'm coming from.... what i do every day is i sell out my brain power (and those of my partners here) by the hour.
I get paid to give someone a analysis of this, or an analysis of that... and i tell them "that will take 6 months and cost you $100,000". My reputation is good, so i get more people to come back to me and keep hiring me to do more work for them.
I do not hold my output hostage..
What else they do with the data, i don't care, and its not my business....I have gotten plenty of work simply from others seeing my output, and they were impressed.
My customers always have new problems, and i'm here to help them when those problems come up. They also have partners, and so, they come to us for help because they saw what were were able to accomplish.
When they do, they ask me how much it will cost.... they pay us then....
rinse, lather, repeat.
guns kill people like spoons make Rosie O'Donnell fat.
First off there are other companies that "license" their source code, like ICS. You could always find one of these companies and ask them how they do it.
Second, this does simply sound like a licensing issue. You trust your customers not to hack the license keys for the binary form of your product, or to redistribute it. So perhaps it's all about trust....
"Not knowing when the dawn will come, I open every door." - Emily Dickinson
"How do you provide open source without escrow, yet protect what we are documenting up front as out intellectual property rights in the ownership of this code?"
/. know-it-alls.
By hiring yourself a good lawyer.. and not taking law advice from a bunch of pimple-faced
-gerbik
"Programmers are morally obligated to give the code to their users"
WRONG! It is at programmers discretion. A progammer wrote the program to fulfill the users requirements for software. It can be interpretted both ways, unless the user specifically wants the source-code, the programmer has no obligation to give it to them.
Generally in contracts I've seen the user retains the rights to that specific binary, but not the source-code. Meaning that the programmer/company can make dirivitives of it, but not hand out the exact same program.
Rather then say open-source every second, in the vastly competitive software development world it is not feasible to say open source all the time. I like open source as much as the next guy, but if they open sourced their program their software technologies could be stolen, and honestly who would know? If they gave the source-code away, even under the GPL, you could modify it and no-one would be the wiser. Yes some people could complain about infringing on the GPL, but if the progammers are good enough at changing things, nobody would know and now your out a good technology.
In a last thought, why is closed-source so bad? If your company spent 5 years and millions on researching an algorithm for X, I personally see no reason why can't make a bit of profit off it and keep it closed source as long as they don't play the patent/copyright/trademark game and take away everyone elses rights to anything similar.
It's a shame that some companies would sink to these levels, but we live in mainly unethical world where business rules everything (or atleast in North America).
Sure, I may be flamebait for this. Maybe. But if you used Palladium (when it comes out), then you could maybe protect it from modification. That doesn't mean they can't mod-chip the computer somehow or simply print it and scan it back in. But if they were just looking over the code to check for security problems, using Palladium or just giving them a hard copy could help. I mean, if the code is 50,000,000,000 pages long it's not likely they're going to go back and steal it... [end rambling]
I'm the Devil the Windows users warned you about.
I think that I can help, but I need more information.
Can you send me a copy of the code in question and I can get back to you on what to do.
Warmest Regards
Guy Montag
Eve Fairbanks says I drive a hybrid!LOL
Programmers are morally obligated to give the code to their users and allow their users to freely modify and redistribute the code.
Sez you. I'll decide what my morals say, thank you.
GPL: The Guido Public License
Preamble
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the the Scarpelli family's Guido Public License gives you more freedom with the benefit of protection for you, your family and your business. The Guido Public License applies to most of the Scarpelli Family Software Foundation's software and to any other program whose authors commit to using it. (Some other Scarpelli Family Software Foundation software is covered by the Guido Library General Public License instead.) You can apply it to your programs, too.
Accidents, fires and floods happen. The Guido Public License protects you.
We protect our rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy and distribute the software.
Failure to abide by the rules of any of the Guido Public Licenses will mean a visit from Guido Scarpelli himself.
You don't want that.
Trolling is a art,
The parent is modded as "Funny", but this is a real strategy, called "source shrouding". Doing a thorough job of it is nontrivial, because it requires a full language parser to morph everything correctly. But the result can be e.g. program source with no comments, no unneeded whitespace (including newlines), and all identifiers replaced with x00001, x00002, etc. It's not a guarantee against someone managing to modify it, but it sure raises the barrier.
That said, the other posters on this thread are quite correct in saying that the "right" approach is to craft a contract that specifies how your code may be used.
When all you have is a hammer, everything looks like a skull.
Well, for one thing, the model of selling a product doesn't work in the software development industry.
I just heard a thunderclap. I think it was the sound of Bill Gates' bank account entering the atmosphere of your argument. I estimate about five minutes until it re-enacts the scene from the end of The Forge of God when it meets up with Scott McNealy's.
"...always new atoms but always doing the same dance, remembering what the dance was yesterday." -Richard Feynman
I assume you are not asking how to do this, for that you need a lawyer, but asking if it is doable. The company I work for develops custom software and provides source licences.
In one case, client has the source, but the company owns the rights and if the client modifies it, all warranties are void.
In another case the client has the rights to use the code, but pays a license fee for each instance. Yes, you can have your cake and eat it too.
It's really quite simple: you have complicated legal requirements. Therefore, you require a well-paid lawyer who understands the legal implications of what you're requesting, to write up a detailed unambiguous contract.
When I moderate, I only use "-1, Overrated". That way, I never get meta-moderated!
I think your advocacy might go better if you didn't sound so astonished that your preferred scheme actually worked for someone. (Albeit someone in a business niche that has next to nothing to do with what this guy does.)
And isn't someone going to flame him for claiming that Lunix is buggy and hard to use unless you buy it with Red Hat support?
What I'm listening to now on Pandora...
You just need to write an obfuscator then, something that takes the inhouse code and changes variable names and adds bogus modules and subroutines.
And I suppose you bill the client for the time it takes to obfuscate and confuse the code? Or you eat the cost?
Trusted relationships are enforced by contracts all of the time. Comfort yourself with some analogies from other industries, then define the terms of the contract and call your lawyer.
That reduces your problem to catching them if they break ranks with the agreement. Rich comments and the occasional random readme in the source tree (e.g., Java package.html files, copyright headers/footers) help give your code a signature.
Something else just came to mind here. What about splitting the code into libraries versus their proprietary code (unique to their project) and only give the source to the latter? It doesn't sound applicable for your current project, but you may find yourself with an opportunity to reduce your risk later by doing this.
You are checking your backups, aren't you?
If I'm an architect and design a house for you, you get to live in the house. But if an architecture magazine publishes an article on it, I get the royalties, not you. And it's my reputation as an architect that is improved.
The actual issue here is, "How much is the client paying for?" Are they buying use of the end product? of course. Are they buying all rights to and use of the design or source? Probably not all rights and use. So, therefore, the challenge is to work out an equitable and profitable distribution of rights and use between the original client and the artist/programmer.
This post is asking, "What are the methods that are established for describing who gets which uses and rights on a piece of software that was part of a custom contract?"
Open source implies that they have all the rights you specifically say that they will not be granted. Your scheme is closer to Microsoft's Shared Source scheme, or what we often refer to as "source under glass" - Look, but don't touch. Source, yes; open, no.
I'm sure there will be those here who will take an activistic viewpoint and urge you to do something different. I will not. You have every right to release code under any terms and conditions you may legally obtain, and more power to you. But my opinion is that you ought not use the phrase "open source" unless it meets the OSI mark requirements (which your plan most certainly would not).
Pragmatically, if you provide them the source, there is no practical limit to their ability to modify, redistribute or sell the code.
Therefore, it falls back upon the legal system: you need a contract that you can both agree that protects the intellectual property rights
that you think are important to preserve.
Of course, none of this has even the tiniest bit
to do with open source. The restrictions on
modifications and redistribution that you seek
are explicitly disallowed by any definition of
open source licensing you are likely to run accross.
Frankly, I'm unsure why any business would pay
you to develop software that they integrate into
their business but for which they retain few
rights in the future, but you might be able to
hoodwink them into such a circumstance.
It probably would be easier to get them to agree to
a true open source license, where both parties
retain the same rights to modification and redistribution
There is much pleasure to be gained in useless knowledge.
Just because people other than the programmer are permitted to see the source doesn't make it open source... Id Software licenses the Quake 3 source for companies to make all sorts of games, but it sure isn't open source (yet).
> How do you provide open source without escrow,
> yet protect what we are documenting up front as
> out intellectual property rights in the ownership
> of this code?"
This has nothing to do with Open Source. You're just looking for an ordinary source license such as companies have been using for decades. Hire a lawyer.
Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
Oh...wait...you mean that wasn't sarcasm? You actually wrote that with a straight face? Now *that* is funny.
Let's see how your opinion of free software changes after Mommy and Daddy stop paying for school and you have to get a job. Your tune will change when you realize that people who give away software won't be hiring you, because....they have no money to pay salaries! Hell, where does Linus get his paychecks? Not from a company releasing its intellectual property for free. As for consulting...you want to add up all the dollars spent on software (binaries) compared to consulting services? It isn't remotely close. Nice try.
This whole "all source code should be free" crap is only popular among people who don't work for a living (and, somehow, Stallman). When you own your code, and make a living off of it, it's amazing how your views tend to change. It's kind of like how the hippies of the 60's became the 80's Me-generation - money and power (and closed source code!) is only bad when someone ELSE is controlling it.
But thanks for the troll, that was a good one!
-Looking for a job as a materials chemist or multivariat
-1 Flaimbait...
You have it backwards. You're not morally obligated to do anything but document it.
Agreed. Get a very good intellectual property lawyer, or better yet, a lawyer in a firm that deals with business issues and has IP specialists on staff. I was in this very same position with a software application my company had started writing, and a medium-sized business in the Midwest was interested in it. It would have saved them quite a lot of money over commercial applications, plus it would have been fully customized for their business. And on top of it, we could go on to sell the software to other companies for more money. Good for both parties.
The other company was worried about us being able to finish the project to their specifications. We'd develop a contract with them, send it to them, and their lawyers would change it to basically ensure that we would at some time be in breach of contract. If that happened they would get the source code. We were already willing to share the code with them as part of the deal so long as they didn't resell it or market it themselves. No need to get hostile about it. We learned quite rapidly that only lawyers can fight lawyers (without massive time committments on our part), and by spending the extra money on a good set of lawyers, including an IP specialist, we saved ourselves lots of future headaches and problems.
In the end we ended up not doing business with the company, and we lost the sale and opportunity. The other business spent ten times what we would have charged to implement a generic software package for their needs, and to cutomize that package to work with their business. Do I feel bad about it? Yeah -- it sucks to lose business like that, and it was a good opportunity. But I would have felt much worse if I hadn't involved expert lawyers along the way to protect us and explain what the other side was trying to do (the good parts along with the bad things they were doing).
While I agree that there is no moral obligation to release information, OTOH you must accept that there is no inherent right to prevent already-released information from being further used, modified, copied, and redistributed without your involvement or approval.
Any rights that the public at its whim graciously chooses to confer upon authors are intended PRECISELY to achieve that end result of totally removing the author from the finished work.
As for your ideal license, it's not bad, insofar as it extends powers to the licensee that he wouldn't normally have as a mere purchaser of the copyrighted work, BUT should include a clause that voids out the license without any loss of rights by the licensee when the copyright expires. (i.e. in 2098 or whenever when the copyright runs out, they don't get stuck with having to continue under this now rather pointless license OR having to cease their use of the work in order to get out from under it)
-- This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
Conventional escrow doesn't work when customer needs it - when your company fails. A bankruptcy judge will review your company's assets, and may find that the source code is the only marketable asset, and must be preserved for your debtors. Judges have voided escrow contracts in order to maintain the remaining value of the company.
Thus, your customer is wise to ask for the source up front. And if your company is bankrupt, it's not going to matter much to you - except that you'll know you didn't screw the customer.
You need a lawyer. It's a pretty simple contract, once you've explained the parameters.
If you want to use Free-Software-friendly attorneys, I can direct you to several, but pretty much any attorney will do.
Bruce
Bruce Perens.
And their company isn't the first to happen upon this situation.
You always ask your friends about similar situations they may have encountered before you go into some situation. Fools would go ahead and get a lawyer without first discussing it with people who might have had experience with the situation.
--
Internet Explorer (n): Another bug -- that is, a feature that can't be turned off -- in Windows.
An honest client simply needs to know the rules. If they are unsure of your intent, their lawyer will ask you to clarify.
Even if you got a lawyer to write it, a crook isn't going to care...
In other words, if you had a VB developer in your shop who didn't notice that code, you need to hire a new VB developer. ;-)
They can, if need be, compile the code.
If work needs to be done, you can de-obfuscate the modules they need, and provide them.
This will encourage your client to get you to do modifications, and they will have the source.
This is a purely practical solution, and has nothing to do with licencing, or other abstract solutions.
This is the only post so far to actually answer the original Ask Slashdot question. Instead of the fifty redundant posts saying "Get a lawyer", and the other ten saying "That's not open source", RudeDude actually gave a relevant response. Good grief, what was he thinking? That's not the way to karma whore.
Thats my job-security. Nonsensical variable names, meaningless functions etc... It would be a nightmare for even a very experienced programmer to decipher some of my source codes, especially for larger programs... So spaghettify the source code then give it to them. In 5 years when they figure it out it probably wont matter much by then, as it would be quicker just to re-write it from scratch.
Cynically Speaking, in the end it really doesn't matter.
Even if you have the most airtight legal agreement, if the company you are dealing with is a wretched hive of villainous scum, then they will violate the contract/license at will. Your company will sue, and it will take x years and XXX thousands of dollars to litigate. If your company could not survive if every TD&H has access to your code, you may need to rethink your business model. With information wanting to be free and all, you know.Truth: If it's not one thing, it's another
Now, for something completely different.
This client is coming off to me as untrustworthy. That is, their reason to refuse escrow as an option seems bogus to me. It's seems like they want the code so that they can fold, spindle, and multilate it. The upfront money is all you'll ever see, as they'll have their own cheaper people modify and service the code if it ever needs changing.
Unless the client is willing to agree to an extreme penalty (on the scale of millions, something that'd potentially bankrupt the client) in the contract for violations, you may just want to abandon the project and let somebody else take the sucker punch.
As the wonderful people that responded have pointed out, I believe an apology is in order.
Thanks, have a nice day.
Dacels Jewelers can't be trusted.
The point of that expression is... To have your beautiful cake to admire and to be able to eat it at the same time.
Captain Obvious saves the day again!
A) This is not open source you're talking about at all.
What the poster suggested is Open Source.
It is not free software because the source code comes with copyright restrictions.
-- Will program for bandwidth
Bruce,
You rock.
I would have just said "open your darn code, quit trying to steal from the commons of ideas", but your diplomacy shames me.
microsoftword.mp3 - it doesn't care that they're not words...
Go into competition with you?
That said, Microsoft is doing the same thing with the shared source initiative.
Furthermore, you're selling them a non-transferrable license. Source or not, this isn't too uncommon a thing with the right contract.
You will, of course, have a clause that says that you authorize the release of source under non-disclosure agreements to third parties for the express purpose of modifying the program for the customer.
(Disclaimer: my company does this same thing, but I don't know what kind of contract they use. They also sell to non-profits and governmental organizations..
of "Open Source" in a dictionary, making the exercise pointless, he is likely to find many other words in there.
.gasp, beautiful.
.or even have our code corrected by an outside party if that's what it takes to make beautiful code.
For instance, after modifying the code his firm is indeed likely to renumerate it, i.e., give it a different version number.
For doing this his firm will expect to be *remunerated.* It's from the Latin remuneratus, derived from munis, from which we also derive the English words "munificent" and even "money."
( Munis is a gift, to remunerate is to *re*gift, i.e., effect an exchange)
This note brought to you by the ever hated Slashdot Lexical Patrol ( also known as SLaP), who believes that language is form of code and believes code should be well formed, it's terminology and functions properly called and invoked and even. .
Our patron saint is William Strunk, Jr., along with his acolyte E.B. White and our Demigods include such figures as Gibbon, Thoreau, Conrad ( who managed in a "foriegn" language no less), Yeats, Voltaire and Kipling ( The OS booted up like thunder!).
Just as Knuth is ( and should be) venerated, so should geeks venerate and study the "code" of these honored figures.
We all write faulty code at times. It's no shame to have to debug and reversion. .
In fact, I rather imagine that some of the more ironically inclined are about to take a hearty whack at this missive itself.
KFG
What if Linus' 8/25/1991 announcement included:
"I have no problem with people using the operating system, but need to make it clear that I own the code and that they have a license to use it in their business. They may at their discretion hire others to modify the code, but would still be required to pay their maintenance contract and be prohibited from reselling it or using it to run an additional business."
Either information wants to be free, or it doesn't. You can't have it both ways.
Everyone will start to cheer when you put on your sailin' shoes.
You will retain copy rights to the program, and they will get the source code. Everyone wins!
Nathan's blog
It certainly sounds like Bill, doesn't it? Of course, it might also be Steve Jobs asking about the APSL. Doh!
What you really need to do is find a lawyer that knows something about technology and IP. There are some fairly tricky contracts that allow customers access to source code while not negating the IP rights of the author(s). The first thing that you need to do, however, is place copyright notices on every file of source code. At a minimum, it's better than nothing, especially if you are locked into a contract already. Getting a customer to rewrite a contract that has already been signed is a bad idea.
"They may at their discretion hire others to modify the code"
Ok, so they get some third party to modify the code.
Now you have a human being with memories of your code out there thinking thoughts and writing more code on different projects.
There is no way that this person can guarantee that their experience of *your* code isn't influencing their design of new code.
They may not even intend to, but thats how thought works with creative stuff; inspiration.
So what are you going to do if you come across something that you think they did which was inspired by your code?
Is that ok or not?
There are arguments either way, but my line would be that any restriction on intellectual property is doomed to introduce the notion of thought crimes.
In the free world the media isn't government run; the government is media run.
get one.
Donate background CPU time to fight cancer.
You cannot collect punitive damages for breach of contract.
:-)
You can, however, put something in the contract like "Should [Company] terminate this agreement by distributing source code and/or binaries of the software, [Company] agrees to pay a one-time only $10,000,000 distribution license."
The company where I work occaisionally allows the source to burned to a CD to by held by the purchaser (NOT a 3rd party) for escrow purposes only. It's worked fine for us. I work on a very small product line for a very small company with some very large clients; they primarily want the source because they worry about this product disappearing. Unfortunately, I can't provide you with a copy of such an agreement -- I don't have one.
On the other hand, you sound like you you want to do is sell source code that your customer can actively use it, but still maintain maintenance fees. I'd look at SLAs for commercial components as an example -- some will sell source. One example (for JClass Java components) is here.
Personally, I'd recommend going the escrow route, and perform modifications for the customer for an additional fee as required -- it would be extremely difficult from a technical point of view to support software that has been modified by 3rd parties who may not fully understand the side-effects of their changes. It sounds like your customer primarily wants security; escrow can provide that.
I can spell. I just can't type.
No, but a smartly written contract has a section for the penalties agreed upon for breaches. That is, it has langauge stating that if they do one of the prohibited actions they agree to pay an outragous sum of money. In that case, the court will require payment of the agreed-upon sum instead of any actual damages.
No, but /. is the place for him to get ideas as to what to tell the lawyer to put into the license.
A lawyer is like a complier. You write code in English, he compilies it into airtight Legalese. However, if you give him a bug in the unput, his contract can still crash.
an confidential inhouse one, and an obfuscated one to give to the company, full of misleading variables names, fake variables, incorrect subroutines, etc. Of course, they both compile correctly.
....OW..OW.OWOWOWOWOWOWOWOW! It's a joke! Stop hitting me!
so we convert it to perl then?
OW.. OW
Do not look at laser with remaining good eye.
You just need to write an obfuscator then, something that takes the inhouse code and changes variable names and adds bogus modules and subroutines.
I know developers who do this part without really trying that hard...
Heck, I know a whole bunch of CS students who are experts at this stuff. It comes in handy when an 'assignment due date' is coming up and have the challenge of taking a working assignment and obfuscating it enough so that TAs won't know the difference between Joey's and Mark's assignments:)
First - Hire an IP lawyer (preferably an individual or very small partnership- not a large firm) to write a contract that gives them a limited license to use your source code internally and makes it clear that you hold exclusive copyright to the code. Also - you do not deliver the code until the acceptance provisions of the contract are met (which means you get paid). You can certainly allow the client to view the code during development for review but don't pre-deliver source to them. Your lawyer will recommend provisions for additional penalties for copyright violation and your ability to get an injunction that are fairly boilerplate.
Second - actually file the copyright for your source code. This gives you stronger rights to sue in case of a copyright violation.
Good luck -
Ben Scherrey
I don't really like the part where the custoemer HAS to pay the maintenance fees. Or what? You'll shut their business down? What's the customer getting for the maintenance fee? Support? Bugfixes?
-- $G
While I generally agree with the principle of pay once for code, I understand that there are cases in which this isn't always in the best interest of the customer. If I can build a solution for a customer that consists of re-using code from previous projects, I can offer that solution to the customer at a much lower price. If, on the other hand, the customer wants to own the source code, I must recode everything from scratch. The customer literally pays me to reinvent the wheel.
Given that most companies simply want to use and modify software, rather than sell it, I think that it is a good idea to re-use source code. This provides them with a break on their IT costs. However, releasing the source to a third party is essentially releasing it to the whole world - if even two customers have bought access to the source code, and later you find said source code on the net, you have no legal recourse, as it will be almost impossible to prove which of the businesses released it.
The society for a thought-free internet welcomes you.
What You Will Provide Them
What You Require of Them.
What They Can Do With What You Give Them
What They Can't Do With What You Give Them
What You Can Do With the Knowledge Gained From Doing This.
...And so forth. Then sit down with the customer and work out these terms. Then once you have an agreement about what will be the terms of the contract then go to the lawyer who could probably have one of his paralegals whip up an acceptable contract. On the other hand if you go to the attorney first you will wind up with a contract that is 90% boilerplate and hard to discern what the key terms are in order to work it out.
Write sloppy undocumented code that only your guys should understand :)
I have used several books from NOLO Press to draft legal documents and contracts. All of which revolve around my Software business. Their books are very well written and understandable by us geeks with out a lot of legal knowledge.
One book stands out in my mind that you may want to check out - Web & Software Development: A Legal Guide. If you do end up talking with a lawery, this book may help you to fully understand what you want and to be able to make sure that everything is included in the contract.
Life is like an elevator, sometimes you get the elevator and sometimes you get the shaft
Seriously tho... I was encouraged when our lawyers suggested this paragraph and approved our final boilerplate contract. I had these same concerns (as foo_48120) that we would never be able to build a "legal" code library when all these (uneducated) customers insisted we developers have no rights to code.
Another caveat... almost every single one of our customers that got around to reading the contract expressed concern about this paragraph. Granted it never really stopped anyone who was actually interested in Steem, but we did have to use the "reversed" version a few times.
RudeDude
Perl/Linux/PHP hacker
Having said that, it is pretty low down dirty and slimy to have a company PAY YOU to write a program, PAY YOU to maintain a program, PAY YOU to give them a copy of the program, then you turn around and claim that they are bound by a license. If they commissioned the work to be done, you shouldn't be trying to shove a license up their butts.
It's just my opinion, but I've had to deal with these kind of consulting companies. If the customer is reading this story, some advice: Hire yourself a different consultant.
And if the consultant is reading this post: You are over stepping your ethical rights. They paid for it, they should control it.
-- Ken Kinder ken@_nospam_kenkinder.com http://kenkinder.com/
I don't see how nerds with consulting companies that want to sign closed-source contracts is somehow off-topic for slashdot...
Granted. It seemed, however, like he was trying to use "Open Source" as a buzzword to seem more relevant (in the "hip" sense of the word) with the Slashdot crowd, when he was proposing the exact opposite of an Open Source scheme.
If it's for-profit but free, you're not the customer -- you're the product (e.g., the Slashdot Beta's "audience").
You mean when you only want to eat a piece of the cake and not the whole thing? He just wants to give his customers a few extra rights without giving up ALL of his. It's just like all of those documents you see that say you can distribute them but not modify them. Except in his case it's the other way around.
The only thing I know is that I don't know anything; and I'm not even sure about that.
The way copyright was meant to work was that creators got a short period in which they had monopoly rights on their creation in order to make a profit on it, because you need a profit for most people to do anything useful, but after that time was up the book, poem, or drawing would go into the public domain.
However, this system has been corrupted by stretching the time out every 20 years so that Mickey Mouse era works never fall into the public domain, and also had no foresight for works such as computer binaires where the human readable part, the source code, that generates it can be divorced from what is distributed.
"Free Software" is a step forward in repairing the system, however it does not provide compensation to the author that only he can claim. Yeah, I can support my program and charge money for that... but you can read my code, eventually learn it as well as I know it, then undercut me in the support service. If all programming code has to be "Open Source", then the cost of getting a program that does what you want is either going to be free because it already exists, or incredibly expensive because the code that is going to be written for you is going to be code that everybody else in the same situation can use. Having closed-source code allows the programmer to sell you a copy, but allows him to charge everybody else who wants a copy as well so that he can multiply the price times the number of people willing to pay it. If he only gets to paid for the first copy, the programmer's going to have to get all of his money out of the first buyer.
I would suggest not using the ellipse so often ...
I believe you mean ellipsis. According to my dictionary, ellipse is a geometric figure.
If you're referring to the proliferation of "*" in the post, these are not ellipses. A "*" used as an ellipsis would indicate omission - as in "f*** you!". In the case of this post, the "*" is used for emphasis.
That said, I too find all the "*" annoying. And if anyone can tell me what name is for "*", I'd appreciate it.
I disagree.
Different rates should apply to people working on software to help a company and working on software *for* a company.
In some lines of work, there is a steep learning curve to develop the needed software. Sometimes one may only get a few clients to develop this work for. So then they are presented with the option of re-developing similar software for each of the clients or building from a basic code base for all of the clients and then customzing as the site needs.
The second option is cheaper for the client and better for the software. It allows each client to benifit from the work that the consultant has done. And allows introduction of tried and true code instead of something recently developed.
It also saves the consultant from going crazy because they had just coded a similar routine 5 months earlier 4 blocks away from where they are curently working.
I have seen where some industries embrace the idea of having mindshare with the competition because the money is not made in the back end of how the work is achieved but the art in doing the work. They would be willing to sacrafice that small advantage of maybe having slightly better software than the other shops for having software that is going through many more iterations and having a much larger input into how it is used.
So... having a consultant own the code is not a slimeball thing to do. It makes good sense in some businesses. The important thing is having that spelled out in the contract. Then, everybody knows what they are getting in to.
-Tim
-I just work here... how am I supposed to know?
I'm getting married next year, and my fiancée and I, like most couples, are hiring a photographer.
We hired the photographer to take OUR images, when TV news crews do that, they need to have you sign a release to use the footage. Your likeness belongs to you, and no one else.
For $5000 you'd think we own the photos right? WRONG! The negatives are held by the photographer. Each photo has a "Do not duplicate" stamp on the back....nice huh?
I think i'm going to start charging my clients for all the computers and network gear I install, but i'm going to have them sign an agreement saying I own the gear, and they have to pay me to make any alterations to the network or systems! Can you imagine that?
-ted
If you're referring to the character, it's of course an asterisk. If you're referring to its function in the previous post, it's to provide emphasis, but isn't standard typography at all. The pratice originated in online discussions that were restricted to plaintext; in that context, it functions tolerably well as a replacement for boldface or italicized type to provide emphasis to certain words or parts of words (much as _underscores_ serve to simulate underlining a word). This of course makes it relatively useless in a forum that actually does allow both boldface and italicized type for emphasis, but the practice has persisted.
10 PRINT CHR$(205.5+RND(1)); : GOTO 10
Wrong. The company is paying you for whatever the contract says they are paying you for. No more, no less.
That may not be true where the contract is signed. Some localities do not allow such contractual exclusions. As always, consult an experienced contract attorney before you decide to roll your own contract.
-ted
...believes code should be well formed, it's terminology and functions properly called and invoked...
I would like to call your attention to the fact that the character sequence "it's" is a macro that is expanded by the preprocessor to the sequence "it is". Thus the sentence fragment above, once preprocessed, reads "...believes code should be well formed, it is terminology and functions properly called and invoked..." This bit of code, as it were, is clearly not well formed.
10 PRINT CHR$(205.5+RND(1)); : GOTO 10
allowing the readers to freely modify and redistribute the text?
I have tried this and generally it does not work. Noone wants the "altered" book. I really hate it when my 5-year old takes a crayon to my good books!
You have a good point there, but in most localities, how much you get paid, and what your client is buying, are spelled out in the contract. Even the customary total ownership that goes with traditional employment is not a matter of custom, but of the words in the documents you are required to sign upon employment.
As you say, a good lawyer is the place to turn for advice on this.
Make me aerodynamic in the evening air
*Programmers are morally obligated to give the code to their users and allow their users to freely modify and redistribute the code.*
When did this happen?
Is [insert popular novelist here] morally obligated to give away his/her novels, allowing the readers to freely modify and redistribute the
Take out the "freely redistribute part," and I can see a difference here. The difference is this: a book is not as dependent upon platform as software is. Necessary changes to the platform (for instance, if the vendor for the OS goes out of business and support is needed, or the OS reaches supported endoflife) might break the code and require some fooling around with the source. Don't have that problem with a book, as long as the book is distributed using traditional media. If a book is distributed using non-traditional proprietary electronic media, on the other hand, then it has all the problems that software has.
-- Ken Kinder ken@_nospam_kenkinder.com http://kenkinder.com/
In this case, I would just advice the customer to move along. I've had to deal, as a programmer, with consultants who are anal about licensing you code that you paid to produce -- and it made my job a living hell.
-- Ken Kinder ken@_nospam_kenkinder.com http://kenkinder.com/
the very source you cite, which is also my default source, actually does define Open Source. Go figure.
I use the ellipsis quite apppropriately in my header, but perhaps less so in the body. A hyphen may be more appropriate in these instances, although it implies a bit more emphasis than I intend, aiming for mere dramatic pause as an orator might. I can see where that might prove annoying in a world that seems to have abandoned the comma.
But then I'm also one of those weird people who thinks that Python's use of whitespace is the proper way to go about things.
I'll try to restrain myself in future.
KFG
In the US, willful copyright infringers are (always?) liable for treble damages, or you can elect $100,000 statutory damages if you registered the copyright. It's also a federal crime.
the correct term for the collection of asterisks replacing letters is: ellipsis.
i s
http://dictionary.reference.com/search?q=ellips
KFG
Comment removed based on user account deletion
if you're set for life and never have to worry about where the next job is coming from, and never intend to quit working. For the rest of us, there's nothing wrong with getting creative with the licensing of our work in order to get residual income. If the market will bear it (i.e., if somebody will pay you for it!), then absolutely do it.
I work for an advertising agency, and when we produce a logo for a client, the client has the option of either licensing the logo from us or buying it outright. Sounds crazy, doesn't it? It would seem like every company would want to own their logo, but no, there are a lot of companies that are comfortable with licensing only.
In effect, the customer believes they are getting a great deal because it doesn't cost them anything to license the logo while they employ us as an agency; they can put off the cost of purchasing the logo outright when (if ever) they swtich agencies.
Setting up our pricing in this way has several benefits: 1) it allows us to set a premium price on the logo that the client is not yet committed to, but is fully aware of and has accepted, 2) the premium price establishes our regular cost as a good value, and 3) it serves as a means to retain the client.
Obviously, if we aren't doing great work for our clients then we don't deserve to retain their business; but, on the other side of the coin, we also have to assume that our client is hearing pitches from the competition (mostly informal) on a fairly regular basis, so the more "entanglements" the client has with us, the less likely they are to move on a whim.
I don't know if it's realistic to approach code licensing in the same way, but it is a possibility.
Yeah, I can support my program and charge money for that... but you can read my code, eventually learn it as well as I know it, then undercut me in the support service.
So? I can read novels written by a living author until I'm more well-versed in them than he is, then teach other people about them and how to interpret them. Literature teachers worldwide do this.
Writing a work doesn't entitle you to a monopoly on support regarding that work. Look at all the 3d party manuals and training available for Windows, a closed-source program.
Having closed-source code allows the programmer to sell you a copy, but allows him to charge everybody else who wants a copy as well so that he can multiply the price times the number of people willing to pay it.
NO. Copyright does this _MUCH_ better.
Firstly if you had a closed source uncopyrighted program, then any idiot could just make a copy of the binary they bought and resell it. Most people aren't interested in the source. And rare is the copy protection scheme that isn't broken.
On the other hand, if you had an open source copyrighted program, NO ONE can make copies of the source or the binary. The most that they can do is learn how you did things (just as we learn how an author writes by studying his books) and compete with you. Me, I like it when two people compete -- it means that they'll both have to strive to make a better product and charge me less money for it. Most people seem to share this view.
However, the competitor could NOT legally copy your work or use yours directly in a material way in making his own.
Furthermore, you get all the same advantages with regards to his code. And if either ever suspected the other was infringing, lawsuits would surely follow that would be aimed at driving the infringer out of the marketplace for his violation.
I'm not seeing a downside. All you've done is tell me why copyrights are good. You have failed to support an assertion of closed source software being good.
-- This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
Well whoever the author of the plays was, let's just arbitrarily call him Shakespeare for the purposes of this discussion.
Anyway, would he be happy if someone else took Hamlet, recast it with lions and made an animated cartoon out of it without giving him a penny? No.
But if the work is not copyrighted, we don't really give a flying fuck what he thinks. He's unimportant. Copyright is designed for the benefit of the public; not the author.
Besides -- he can't have it both ways. Shakespeare's Hamlet is directly based upon an earlier play of Hamlet. The story is quite old and eventually is loosely based on real historical events hundreds of years earlier.
Shakespeare never had an original thought in his life. Why should he get to borrow from other people and no one get to borrow from him? In fact, since it is only the public that we care about, why should we care who borrows what, so long as in the end, we get the maximum possible number of works for free, to do with as we please?
If someone wants a copyright, then they should have to tell me, a member of the public, why I should give it to them. What's in it for me?
-- This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
My company GPL's everything we write.
We only charge access to the cvs server (basically a subscription).
This is for companies who find they want to manage the code themselves, or hire thier own programmers.
IN the end though, you still need programmers. Whether it be us, or someone else, they will have to contribute those changes back into the community.
So, many companies stick to component subscriptions, and then use the API's against software they write explicitly, which is private.
Very similiair to what Nvidia does right now with XFree86.
The company gets too keep thier software process unique, and fundamental to thier business edge. (i.e. nobody can buy the process they use...)
While at the same time, the components they use to power that software get updates from said company to our cvs server for others to use.
Very nice arrgangement. I haven't found any company yet that has had an issue with the GPL cvs server arrangement we use.
We are a component company.
-hack
Got Geometrodynamics? Awe, too hard to figure out? Too bad.
Actually, source shrouding was most commonly used to sell POSIX-compliant Unix programs back in the 80s. There were many flavors of Unix, all with different object file formats, but (with a liberal dose of conditional compilation) you could write programs that would compile and run on all of them. Rather than maintaining a library of binaries for every version of every flavor of Unix, you could just ship shrouded source with a makefile.
When all you have is a hammer, everything looks like a skull.
Get a very good intellectual property lawyer, or better yet, a lawyer in a firm that deals with business issues and has IP specialists on staff.
This is VERY true! Hire a lousy lawyer at $60 per hour and he'll make the contract for you in twenty hours. Hire a good lawyer ay $400 per hour, and he'll say "We did this before, here's a standard contract for this sort of thing" and he'll bill you for an hour.
Moneyed corporations, non-working 'poor' and criminal prisoners are turning productive citizens into tax-slaves.
There are actually already laws that protect your interests in this situation.
You see, when you write code, you are automatically grated what is called a "copyright" to said code. This means that no one but you can make copies the code. There are of course exceptions for certain purposes such as commentary, parody, personal use, backups etc, but in general, as long as you own the "copyright", only you are going to be able to distribute and/or sell the code.
So go ahead and give your customer a copy of the code if they want, up the price while you are at it, (software with code is more valuable that without) but make sure that they understand you are retaining your "copyright" to the code.
The real money in software is in the services industry. ... Just look at Redhat: they are actually making a profit through selling improvements to something that is buggy and hard to use otherwise.
Just look at Microsoft. They're making a profit selling software.
My school uses a product called Banner, made by a company named SCT. We get the full source code for the product. We can make changes if we want (our responsibility to maintain).
Obviously we can't give the source code/product out to anyone else. And we pay an annual maint fee. (Not sure what would happen if we stopped paying it - if we'd just code freeze where we were (no more upgrades) or have to stop using it)
The great thing is that tons of colleges use this product, so there is a large nationwide community of users. The company has several mailing lists for users on various aspects of the product. Code mods/fixes (amongst registered users) are quite normal, and sometimes some stuff even goes back into the baseline product.
The company is also active on these lists. Despite anything I may dislike about the product, I have to admit that I do like the company and the relationship we have with them and the other users.
To me this is a perfect example of how open source (not free source mind you) works wonderfully and lots of people benefit.
I'm sure there are some who believe that all software should be free source, but as for open source, it would be great if more companies would work like this.
If your not careful, you may find that the client can claim that since they comisioned the work, it is what is known as a "work for hire", which would (as I understand it, IANAL) mean that they own the copyright, not you.
One way to avoid this, without the need to hire expensive lawyers, is to ensure that neither of you own exclusive copyright --- how do you manage that? By ensuring that you use some code that is GPLed by other people, so that the final work is bound to be GPLed as well.
Then, as long as you get the clients permission to have a copy of the code at your site, even if they try to claim copyright on the work you wrote for them, you can claim your GPL granted rights on the code they distributed to you, so at least you don't end up with nothing.
The only question you need to ask yourself then is: "Is the client wanting to get into the software industry?". If the answer to that is "No" then chances are they will not be tempted to redistribute the GPLed code that they have, becuase they're busy doing whatever it is that they actually make money at. If that is the case, then after this deal, you still have the only copy of the code that is practically available to the world, so you still get to make money out of it.
Even if one of your subesequent clients does redistribute the GPLed code, you are still the experts in that code, so unless you're doing a spectacularly poor job of supporting it, you'll still get the calls, so could find that your business is actually increased by this.
Also, people deploying your code in new situations, without being your customers, is actually to your benefit, becasue they are likely to find bugs for you, which you are not obliged to fix, but which you could offer to fix for money. You then get to update your paying customers before they are bitten by that bug, which is likely to keep them cheerful.
Debian: GNU/Linux done the Linux way
Instead of relying on the courts, make them take out a bond payable to you upon a pre-determined proof of contract violation.
It's a hell of a lot more bulletproof than the courts, and oftentimes bond issuers will make them put up some hard assets as collateral (property, buildings, tools, or a big cash percentage) which is no big deal if they're honest, but fucks them right in the ass if they're not.
The bond issuer will be legally required to pay the bond based upon the contract surrounding the bond's payment terms, but they don't care that much since they've got the pink slip to the factory. Sure, they'd rather not liquidate the factory, but that's the business they're in and they're good at it.
Jury trials are a huge hassle, and even if you're right you don't always win, and even if you win you lose due to costs, delays and lame jury awards (contract to Republican fear mongering, they're not always generous).
Step 1 they have to sign a non-disclosure agreement before they get to see the contract they have to sign before they can look at the code.
-
- - You can't take something off the Internet! That's like trying to take pee out of a swimming pool.
What would that be? It sounds like what you are looking for is closed source but with the source held in escrow to be released only if your company becomes defunct. That sort of thing is already being done. My company has such an arrangement right now.
How do you provide open source without escrow, yet protect what we are documenting up front as out intellectual property rights in the ownership of this code? (Emphasis mine)
My statement was in response to that use of the term "open source" to describe what clearly is not open source.
Just because you get the source, is not sufficient to qualify as Open Source.
The Open Source Definition is effectively the same document as the Debian Free Software Guidelines, and as such both have conditions that require that the software be alowed to be redistributed, even if modified or aggregated:
Debian: GNU/Linux done the Linux way
We're not talking about The Open Source Definition (OSD) here, we're talking about giving a client access to the source code, and stopping them from distributing. Technical measures will fail (you could make it more difficult, but without legal backing you're screwed anyway), so you need legal. I'd remove the Open Source terminology from it entirely and get a lawyer to draft up a contract. Put in something that says they have to follow certain procedures when using the source code to lower the risk of it getting out, and that they have to pay damages if the source code is leaked.
If your company writes the software, it doesn't necessarily have to document it. And, if you write the software, who else knows it as well as you do? You could make a fortune on writing extensions and ironing out bugs that existed in the original project.
Ahhh, I love it.. someone finally admitting that Open Source is a disincentive to writing well documented, easy to use programs.
This has been a problem with small programming shops for decades, and the answer is always the same: put the source code in escrow, with contractual provisions that take effect if your company folds, which gives the customer access and full rights to the source code. Any reasonably competent lawyer can set this up for you, including secure storage of the source code. All you have to do when you do a delivery to a customer is to cut a source code tape and ship that to the lawyer.
We call it art because we have names for the things we understand.
He only said freedom to redistribute. All Open source software may be redistributed, that's the whole fucking point, dumbass.
autopr0n is like, down and stuff.
Get a good legal footing and make sure everything is ironclad. It's the only way.
A company I worked for used this method. Source code was available on the clients servers. If the client wanted to modify the code we gave them guidelines that essentially said "Make a copy, don't kill anything thats live, and it's your fault if it screws up and eats your database".
Some clients never cared that they had the source. Others had large teams of programmers that contributed code back to use and helped fix bugs pre-emptively.
It's a good solution, but again get iron-clad legal binding agreements. We had one client that decided that they could start marketing a modified version of our system to other potential clients. We pointed out that even modified versions included some code that still belonged to us. Either 1) pay us a heavy license fee for its use (as stipulated in the contract) or 2) stop selling it.
They stopped trying to sell it.
Well, for one thing, the model of selling a product doesn't work in the software development industry.
Is that why bill gates is only worth $65 billion?
autopr0n is like, down and stuff.
This is a very common issue at the company I work for. Any company that does custom engineering work (we do computer hardware, electrical design, installation, and of course software) for more than a single customer MUST retain ownership of their code simply because you can't afford to rewrite all of your software every time you get a contract with a different company.
When we quote a project, we do it based on the amount of work it will take to accomplish it, but we don't sell them hours of engineering work. We sell them a working system. If we budget 500 hours and it takes 1000 hours to write some custom piece of software, the customer doesn't have to pay us twice as much for the project. We sell them a system, with the license to use the software, and we give them a copy of the code as a deliverable for them to modify and use for the specific system we sold them.
Most people think companies like ours try to retain ownership so that the customer has to pay us royalties, but the fact is, we rarely, if ever, charge for maintenance. We sell a warranty with the system, so we fix any bugs that arise. If we do a good job, they hire us back to make changes to the system, which we do get to charge for. However, our customer can just as easily go to a different company and hire them to make the change, because our software license permits that.
The real reason we have to retain ownership is so that we can freely copy portions of code from previous projects to use in future projects. Say, for instance, we wrote a code module that abstracts a certain piece of hardware. If we used that same piece of hardware on another project, we would want to use the same code module to make our life easier. Unfortunately, if our previous customer owned the software, we would have to pay THEM royalties to use that software!!! The fact is, retaining ownership of that code gives us a competitive advantage in future projects, because some of our development is already done, so we can try to under-bid our competition (who are doing the same thing we are, by the way).
In fact, writing software today is rarely a case of writing code from the ground up, and selling it to someone. Now our job is to take existing pieces and put them together to form a system. That's why companies in our industry are called "Systems Integrators".
"I have never let my schooling interfere with my education." - Mark Twain
at least in the concept. REGISTER your copyright in the code with the Copyright Office. License the code to the party with appropriate restrictions.
Laws affecting technology will always be bad until enough techies become lawyers.
If only there were people who specialized in understanding business law that you could hire to help you write such an agreement.
Please note that what I am looking for is NOT open source in the GPL/BSD sense.
Rather, perhaps I should call it "Disclosed Source." It would be the right to own a copy of, read, and learn from source code in EXACTLY the same way as you could with a book. It would not include the right to use, modify, or copy it, except as permitted by fair use et al, again just as with a book. (until the copyright expired, whereupon anything could be done, again, just like a book)
With that essential defintion, let's proceed:
1) But copyright is founded on a policy that INTENDS for people to clearly have access to works and be able to reuse them for their own works. Thus, copyright should ONLY be granted for works that are not closed, because we a) want to discourage closed works, b) only will reward disclosed works.
2) This is inapplicable to my disclosed source proposal. People would NOT have the right to modify the software as a normal function of copyright. They could contract for that right, as with the GPL, or they could do so in a way that wasn't infringement (fair use, post-term modification). But while they might compete with you, it would not be any worse than as with any other class of copyrighted works.
What I'm basically saying is that Microsoft does NOT make the rules. The public needs to take a more active role in ensuring that copyright works for their benefit; it must never be harmful to them, no matter what authors might want. That would be to turn the world on its head.
-- This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
You are confusing a source license with open source. You need to grant them a license to have a copy of the source, but just because they can see the source does not make it an open source license. You didn't give them an open BINARY license did you? You may license them to have a copy of the source in the same way as the binary. IE: they can't make any copies of the computer readable source (except as required to do maintance), they can't make any human readable copies of the source (via photocopy means), you may limit the number of printouts of the source that they may keep on hand, etc. Microsoft and other software houses would grand a source license to clients that needed them where support or perhaps custom mods were an issue. The use of NDA's were involved, you should use them too.
Actually this is very common... I can speak from both sides of the issue as my previous position was with a large company where I outsourced much of the work and, I currently own a small software company. This is generally just to protect the company should you go bankrupt. Just have your lawyer (if you do not have one, you need to find one, as having a good lawyer is essential to any company, large or small) draft a contract including exactly what they can and cannot do. Usually ours state that they can use the source internally however, they may not resell it and, they may not include it in a product they sell. Depending upon the circumstances (you were too vague in your submission to give you a clearer answer) you may want to make exceptions for certain uses. I do hope, however, that you are doing this before you signed a contract to provide the product, otherwise it may be too late.
I'm a signature virus. Please copy me to your signature so I can replicate.
I can't find the license at the moment, but it let us modify the source (but they would only support their versions), and even sell systems based on our modified source - provided we did not sell on any platforms that H&A supported. We had to pay H&A a one time fee for each system we sold based on our modified source.
The motivation for H&A was that our first modification was porting their system to our platform (Motorola SysV88). Thus, each system we sold was gravy for them. We also shared enhancements for a few years, then H&A went out of business (due to the market for Series/1 conversions drying up). Boy, were we glad we had a source license!
That source is still running. Our systems run the EDX VM as a subsystem under a Java VM, and the EDX "screens" display on a Java widget. The EDX code gets gradually rewritten, although I wish it would disappear faster . . .
The answer to the question turned out to be giving about $3000 to a good lawyer. They took care of the rest. On an $80k/year software license, the $3000 is money well spent.
That's what I mean. I didn't mean in the open source soapdodging linux hippie zealot way....
I meant it in the "It means I have access to the source".
That's why I mentioned Codewright... it's fully commercial, you pay per-seat, but the full source is included so you can modify it for your own needs if you want. You can't distribute it, you can't send out your mods.. but your company can customize the environment, which is the whole point, and everything open source is supposed to be about.
People do have the right to modify the source as a function of normal copyright, as long as they aren't distributing those changes.
Define closed or open? The executable code, in and of itself, is a work, it's just not in a form YOU want it in.
If I write a book, does that mean the rough drafts, and pre-released manuscripts shouold be yours as well? What about the digital copy I sent to the printer? Shoudl you *DEMAND* to have that as well as the book?
I don't see where you are going with this.
Note that this means the word "hacker" cannot be used correctly these days (except to a known audience)--whether you use the classic meaning or the media's confused meaning, a lot of people are going to misunderstand.
The contraction expansion takes place before the possessive resolution does. The possessive of "it" is thus defined to be "its" as a special case.
10 PRINT CHR$(205.5+RND(1)); : GOTO 10
While such arrangements probably exist, I've never heard of one in my immediate experience. I certainly have no such contract with the architect who designed my home - he was paid for his services and I own whatever he produced in exchange, period. Why would I decrease the market value of my home by having to encumber a potential buyer with legal liability if the buyer sells a photograph of the house? Or have to worry about pictures I take of it? That's nuts.
That's how UNIX(tm) has been licensed for years.
You used to buy a license for just the binary run-time stuff, or else a license which also gave you the source code. You needed the source code if you were going to do driver development, for example.
Just because you let your customer see the source doesn't mean your project is "Open Source". Yours most certainly is not.
As for your "maintenance contract", well, my guess is that your customer doesn't want to get stuck with no options if your company goes under. And let's face it... if you're claiming to be a software developer but you're this unclear on what "Open Source" is, they've probably got good reason to doubt your company's viability.
-Rick
When I pay a plumber to put a new bath in I don't expect him to get paid again by the person that I sell the house on to.
If you want the code back, pay the owner for it. DUH!
TWW
"Encyclopedia" is to "Wikipedia" what "Library" is to "Some people at a bus stop"
To put it bluntly... Welcome to the wonderful world of consulting.
:-)
This situation is normal, with almost any software project; the issue of source code (as well as related IP) ownership MUST be addressed, unless your company wants to spend lots of "quality" time with attorneys. Your problem is apparently; you have not consulted with an attorney and (at least it seems, my apologies if this is untrue) are a bit new to this.
The ownership and license of the software should be spelled out explicitly in the contract. If your not a one-man shop kind of operation (the article doesn't give any real clues), then ask some of your people who've worked in other consulting organizations if they have any of their old contracts. Failing that, again, consult with an attorney who has is familiar with this area. Just don't choose your uncle's-cousin-once-removed-and-is-an-attorney just because they are "cheap" You really want someone who has done this before.
In any case, congrats on landing a client, new gigs of any size are increasingly hard to get in this economy. Just don't spend forever getting a contract in front of your client, they have been know to change their minds
Bugs Bunny was right.
I noticed that.
Who knows what they are thinking? Personally, I think my message was none of those. :-)
Forget the whales - save the babies.
A dyslexic typing without the benifit of a spell checker is like a highwire walker performing without the benifit of a net.
You get brownie points for being the only one to catch that one. Everyone else "piled on" my incorrect typing of "it's," which since I'm well aware of the differences was a mistake merely on the order of using the wrong form of brace accidentally.
KFG
Anything an employee creates is a work for hire. Nothing a contractor creates is ever a work for hire, though it's common to require copyright assignment in the contract to get the same result.
I disagree.
The sole objective of copyright is to promote the progress of the arts. This is best done by making sure that there are many works in the public domain, which may be used as is, copied, altered, and redistributed.
The method by which we accomplish this is to set up the copyright system, but it is just a means to an end.
However, compiled binaries cannot be meaningfully modified. And they run the risk of being unable to be used, copied, or redistributed if various copy protection measures are implemented.
If the public is not receiving that benefit from those works, then why should they be giving anything in exchange for them? Copyrights are only given, after all, in expectation for full rights to the entire work in the end.
Source is essentially the work. It's what's needed to make changes to (and maybe even copy or use) software without unreasonable amounts of effort demanded from the public.
As for contract -- you're just an idiot. Contract only effects people who have privity. If you write a program, and I obtain a copy of it WITHOUT signing your contract, and it's not copyrighted, you're just royally screwed.
Your position is as absurd as saying that we can use contracts to replace tort law or something. You really just don't understand how things work.
-- This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.