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."
533 comments
Well, duh
by
Anonymous Coward
·
· Score: 0, Funny
You just need to use the FPL (First Post License) which states that only the first person to see the code gets to claim it.
No, no... What he needs is a modified form of an NDA... The customer can look into the code (obviously), and the people they hire to maintain it can also look at the code (duh), but otherwise fall under the same NDA as the client, with the restriction that they don't have the right to further transfer the NDA to others, unless you want to create the following situation:
"List of personel cleared for mission Gainsburrough as dictated by general C. H. Melchett: you and me Darlig, obviously... field marshall Hague, field marshall Hague's wife, al field marshall Hague's wife's friends, their families, their servants, their families servants' tennis partners and some chum I bumped into in the mess they called Bernard."
-- Install windows on my workstation? You crazy? Got any idea how much I paid for the damn thing?
Sure
by
Anonymous Coward
·
· Score: 1, Funny
Just do what you do when you want to eat and have the cake.
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:Sure
by
Anonymous Coward
·
· Score: 0
Right, but after you ate a piece, all that is left are the other pieces of cake, not the whole cake. Many of the advantages of closed source on one hand and open source on the other hand are severly reduced if you compromise. By releasing closed source for limited purposes, you still give away ideas and implementation details which are not in itself protectable by law. By closing source, even with the common concept of "notify the author" or other deviations from standard licenses, you add enough complexity to the required "rights management" to make reimplementation more attractive than reuse in the case of small projects.
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.
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
Anonymous Coward
·
· Score: 1, Funny
i have a growth on my left side, under my ribcage. it's discoloured, about a centimeter in diameter, lumps out maybe a third of a cm, and itches every now and then. i'm thinking about taking a knife to it and seeing if i can get rid of it. do you have any suggestions?
Sure they do. Then they can bill the client for the time;)
-- --
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.
Re:Talk to a lawyer
by
Anonymous Coward
·
· Score: 1, Insightful
If he asks Slashdot, perhaps someone might think of a question that he could ask a lawyer that he might not have thought of himself. If he saves an hour by asking the right questions, then he's done himself a favour.
You can basically license the code however you want, provided it doesn't go against other licenses or previous legal agreements.
Re:Talk to a lawyer
by
Anonymous Coward
·
· Score: 1, Funny
HELLO.
INAMD, IAMS (student).
But.
Firstly, is it lumpy and protuding out of your body, in the shape of a mole? Is it made mostly of skin? What color is the discoloration? Is there any sort of acne like activity involved or is it mostly dormant?
If it's mostly dormant and feels like a mole (dark coloration of wrinkled skin), concider the following:
Buy a bottle of Burbon or Brandy whichever you feel like. Rum would do too. Make sure it's something good. Setup a camcoder (in case something happens and you need guidence for future growth removals).
Take a very sharp kife (boxcutters) - - best if using medical equipment.
Clean the knife in baking soda throughly, wear latex gloves if you really wanna get into it.
Light a candle, and run the knife over the middle of its flame. Run it for about a min, make sure no candle soot gets on the knife. The knife at this point should be hot. Wait till it cools down, you can test it's coolness by pressing it against the candle and seeing if it slices in.
When it's cool enough. Put your left hand on your head (monkey like). Bite the end of a pillow. And gently, but firmly cut the growth off.
Blood would not come out for a few moments. Quickly dab the wound with the alchole provided. You will feel some pain then. Take a round band aid and firmy apply it on the wound. Hold your hand in position for a min.
Then throw your head back and drink the rest of the brandy....
PUT THE MOVIE ON THE NET ?? profit!!
Re:Talk to a lawyer
by
Anonymous Coward
·
· Score: 1, Funny
Make sure you do not have a similar lump on your right hand side. If so, this might be a natural growth known as the nipple. There is no need for removing it.
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.
Re:Talk to a lawyer
by
Anonymous Coward
·
· Score: 0
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
Anonymous Coward
·
· Score: 0
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 dont know the difference between what you talking to a lawyer costs, and what loosing bucketloads of money because you got your licensing agreement off the slashdot forums costs.
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
Anonymous Coward
·
· Score: 0
good use of the word "fucking."
Other than the fact that it was completely fucking unnecessary.
The only confusing thing is trying to tell which takes which.
Re:Talk to a lawyer
by
Anonymous Coward
·
· Score: 0
No, you misunderstand.
A fucking lawyer is a lawyer who deals with disputes that arise regarding fucking.
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.)
You clearly don't know the difference between what you talking to a lawyer costs, and what talking to the slashdot-crowd costs:)
Here's my estimate:
Talk to a laywer. Price: Several thousand dollars to hammer out a good contract.
Ask Slashdot. Price: Every damn red penny you make from the software when this company either sells your code out from under you or have their lawyers establish that they own your work and will receive all proceeds.
Your answer is: Whatever conditions you want to make sure are met, put them into a contract. Get a lawyer to make sure that the contract says everything you want it to.
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?
-- John
Re:Talk to a lawyer
by
Anonymous Coward
·
· Score: 1, Funny
Well obviously if he posted his question to Slashdot rather than consulting a lawyer, he's looking for technical, not legal (i.e., contract-based) solutions.
Therefore, I recommend:
Provide them with almost all the source code. Somewhere, hidden in the software package, there should be a trojan horse that will sit there and wait for further instructions. When they fuck with you, activate the trojan horse, which causes all their backups to silently fail for two weeks, then erases all their hard drives and prints "Hahahhahhahahahha 3Y3 0WNZ0RZ J00 f@g0rz!!!!loOlolololoolololollol!!!!!" 1,000,000 times on each printer.
Re:Talk to a lawyer
by
tigga
·
· Score: 0, Redundant
I would suggest putting your code under the GPL or LGPL
How do you think they (developers) could sell product to other customers? Anybody could start use it, right?
Some people might suggest a BSD license, but those people are pedophiles
Well, well, well - nice arguments you have - anything better?
Thank you for actually making some sense out of this. The "go talk to a lawyer" crowd seems to have forgotten that by talking to a community such as this might provide you with insight and questions to pose to your lawyer, so that you might actually be able to assist in your case. In addition, I concur with the idea that was expressed previously that there might be some members who have had very similar experiences.
Becoming more knowledgeable about a subject prior to visiting a lawyer is simple common sense. Where better to start than this group. However, I might disagree with the idea of the $10 lawyer. I have found that in certain instances, you do get what you pay for.
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
Re:Talk to a lawyer
by
Anonymous Coward
·
· Score: 0
Brains?
Re:Talk to a lawyer
by
Anonymous Coward
·
· Score: 0
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.
Get a lawyer and have him write the license. You know what rights you want to allow, so give it to a lawyer to translate into legalese./. is not the place to get help writing an air-tight license. A lawyer is.
Hey, you think babblefish could just do the ledalese writing for you? Or are they still lacking in the ability to translate from/. speak?
--
//TODO: signature
Re:Easy
by
Anonymous Coward
·
· Score: 0
A lawyer is a place?
Re:Easy
by
Anonymous Coward
·
· Score: 0
>/. is not the place to get help writing an air-tight license
but you'd never know it judging from the annoying amount of bitching and moaning and uninformed, knee-jerk opinions about intellectual property, dmca, gpl, etc. that is thrown about on/.
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.
get a good lawyer
by
Anonymous Coward
·
· Score: 0
a good lawyer should be able to put all of your requirements into legal-speak... why ask slashdot, when you should already know this answer?
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.
Read the question, specifically this part "How do you provide open source without escrow"... they want the client to not only have eventual access to the code, but to have immediate access to the code.
I believe that escrow is the only way the programmers will ever be comfortable that their code will not be divulged.
Write the software. Place the source in escrow with the restriction that a different phase of the licensing has now been entered once the source has been removed from escrow.
This alerts the developers that the source has or is going to be accessed and they are no longer going to be doing development/maintenance work on this project. It also gives both parties incentive to work things out as the developer would rather not have the source exposed, therefore the developer should be motivated to please the customer.
You're going to need to spell out the terms of what you and they can and can not do in a very well-written contract. That is the only way you're going to be able to have any sort of protection from them doing anything nasty with your code.
If you've already signed a contract, then whatever is in the contract is what's happening, regardless of what you want to have happen.
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).
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.
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.
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.
Hey.
by
Anonymous Coward
·
· Score: 1, Funny
Is that you Bill Gates? HAven't you been asking this a lot lately?
IANAL, but I think all you need is a lawyer to prepare a good non-disclosure agreement for you. If they release the source, you can sue them for damages.
-- Burn the land and boil the sea, you can't take the sky from me
Who knows what they are thinking? Personally, I think my message was none of those.:-)
-- Forget the whales - save the babies.
Since the client can view & modify the code
by
NaCh0
·
· Score: 1
The way to enforce the escrow is through your lawyer.
If you can't trust the clients at all, perhaps you need better clients.
Re:Since the client can view & modify the code
by
Anonymous Coward
·
· Score: 0
If you *can* trust your clients, who can't you trust?
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
firewood
·
· Score: 1
First off, find out that what you are talking about is not open source.
It's not "Open Source(tm)", but it is a form of open source according to many non-cultish usages to that phrase.
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
Anonymous Coward
·
· Score: 0
I'm confused. Did you read both the post to which you replied and the link with which you replied? They seem to be in agreement that what foo_48120 is talking about is not Open Source.
How does granting a single party the right to use, view, and modify, but not copy or distribute source code even come close to "a method and philosophy for software licensing and distribution designed to encourage use and improvement of software written by volunteers by ensuring that anyone can copy the source code and modify it freely"?
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?
Re:First, grab a dictionary.
by
Anonymous Coward
·
· Score: 0
Quoting ESR as an authority => You Lose.
Re:First, grab a dictionary.
by
Xerithane
·
· Score: 1
Well, that definition also claims that Open Source means about the same thing as Free Software. I can see Prophet Stallman about to explode...
It's a dictionary and a definition, it's accepted and pretty much comes from opensource.org, so Stallman can go to hell. He didn't invent open source, just the GPL.
and write everything in one nice big line:-):-)
Of cource the copy that you keep should be well Commented and nicely formated. Give them something that works but is too ugly to be rused be them.
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//
Re:Leave out the Comments
by
Talennor
·
· Score: 1
Seems to me that the idea was something different. He wants the company to feel good about it, and yet still not able to sell the code to other people. I'd much rather leave out some key libraries, so that they'd still love me until the time came for them to compile the program. And sure, I'd be able to compile it for them (or sell them an update). They can't really do anything with incomplete code anyway, except maybe more fully understand the program, which is probably a good thing for them to do anyway.
--
//TODO: signature
Re:Leave out the Comments
by
Anonymous Coward
·
· Score: 0
Assuming you were not joking with that suggestion: it is not likely to be effective. The customer engineers would just run the 'one nice big line' through GNU indent(1).
Re:Leave out the Comments
by
Anonymous Coward
·
· Score: 0
Also, do not under estimate the effect on your
reputation and hence future billing that this
approach has. If it looks like you intentionally
made your code difficult to read and use then your
client will have to assume that either you are an
amazingly bad programmer or that you did it with
intent. In either case, word travels. And what
you sell as a consultant is your reputation, losing
it will cost you income.
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.
I would make two version of the tree
by
typical+geek
·
· Score: 1, Interesting
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.
You just need to write an obfuscator then, something that takes the inhouse code and changes variable names and adds bogus modules and subroutines.
Pretty smart!
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.
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:I would make two version of the tree
by
Anonymous Coward
·
· Score: 0
Pretty smart!
Because writing crappy, hard to read and maintain code is a great way to build up a positive image of your company and get referred to other contracts.
Re:I would make two version of the tree
by
Pionar
·
· Score: 1
yeah, just give it to me:)
Re:I would make two version of the tree
by
SirCrashALot
·
· Score: 1
Turnstyle software tried a simlilar approach with their Andromeda MP3 streaming PHP page.
http://www.turnstyle.com/andromeda/step1b.asp
Although it invalidates the license agreement, their "protection" can be easily broken. Obfuscating the code is just an additional hassle that a developer would need to get through and usually doesn't take all too much time. Why give them anything if you are going to screw with it and make it unreadable. If someone is going to violate an NDA, violating the liscence to modify the source wouldn't be past them.
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:I would make two version of the tree
by
NutMan
·
· Score: 1
Also, they didn't say how the source should be provided. Print it all out & give them a 12" stack of paper. If you are really in a bad mood you can shuffle the pages.
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:)
Re:I would make two version of the tree
by
Anonymous Coward
·
· Score: 0
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'm sure that you wouldn't actually need an
obfuscator.
Re:I would make two version of the tree
by
Anonymous Coward
·
· Score: 0
A lot of the time, there are perfectly innocent reasons to want access to the code. The most common one is in the event of the original supplier going belly up (or being hit by a car).
Odds are the client doesn't really want to make any changes as such. They're happy with the original coder, but they recognise the risks involved with going with a small external IT shop.
Quite frequently, these deals are cut in order to benefit the client; they get the software they want for less than what it would otherwise cost (because they get limited rights). If they want more rights, then they can pay more and give a limited license back to the original developers.
Re:I would make two version of the tree
by
Anonymous Coward
·
· Score: 0
It's still a joke, even though people actually try to do it. In this case it would defeat the purpose of releasing the source at all, namely maintenance.
Re:I would make two version of the tree
by
Anonymous Coward
·
· Score: 0
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.
Re:I would make two version of the tree
by
Anonymous Coward
·
· Score: 0
This sounds like a good idea... until you make an on-site visit and are asked to debug something.
Re:I would make two version of the tree
by
1u3hr
·
· Score: 1
an [sic] confidential inhouse one, and an obfuscated one to give to the company.... Pretty smart!
Pretty dumb. When they look at it, which they will immediately of course, they'll see you're trying to screw with them, and start looking for another vendor.
Give it to them for Free
by
Noose+For+A+Neck
·
· Score: 1, Insightful
You would be much better off making your project Free software. Why?
Well, for one thing, the model of selling a product doesn't work in the software development industry. Programmers are morally obligated to give the code to their users and allow their users to freely modify and redistribute the code.
The real money in software is in the services industry. 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. Just look at Redhat: they are actually making a profit through selling improvements to something that is buggy and hard to use otherwise.
Believe me, businesses pay big bucks for someone else to deal with their problems. Just look at how much your average consultant makes.
--
Software piracy is victimless theft.
Re:Give it to them for Free
by
Anonymous Coward
·
· Score: 0
"Programmers are morally obligated to give the code to their users and allow their users to freely modify and redistribute the code."
What a pile of steaming shit. I write code for MY finantial benefit. I write code to pay MY rent, MY bills, not yours.
Re:Give it to them for Free
by
mansemat
·
· Score: 1
Pssst... there was more at the end of the article that you may have missed...
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.
-- --
Re:Give it to them for Free
by
Anonymous Coward
·
· Score: 0
Excuse me, I am "morally obligated" to give code away? I fail to see just what morals obligate me to open source a project which is solely my own and is Not based upon open source software.
I "CHOOSE" to support Open Source because I Want to, and because I believe it can lead to better quality products. Morals have nothing to do with it.
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.
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.
Re:Give it to them for Free
by
Anonymous Coward
·
· Score: 0
Nothing like a good Troll to really get the juices flowin'! I love how "Insightful" it is. How's this for some "insight":
The real money is in selling your ass on the street. People always want ass, and if you give it to them and they like it, they'll keep coming back for more. Just look at Nevada: they let you sell your ass (with a license), and they are able to get by with no state income tax.
Re:Give it to them for Free
by
egg+troll
·
· Score: 1
I write code for MY finantial benefit.
Have you thought of writing a spell-checker, while you're at it?
--
C - A language that combines the speed of assembly with the ease of use of assembly.
Re:Give it to them for Free
by
mjstrom
·
· Score: 1
Programmers are morally obligated to give the code to their users and allow their users to freely modify and redistribute the code.
Funny, I didn't see that in "How to be a Programmer, An Introduction". Here I was thinking that the job of a programmer is to write code. I knew I was doing something wrong, silly me.
Does "Noose For A Neck" = "Richard Stallman" ?
(Yes, I know, leave aside the issue of open vs closed source but I had to reply to this)
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).
Re:Give it to them for Free
by
Anonymous Coward
·
· Score: 0
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.
Free beer that is not given away? Oh the irony.
Re:Give it to them for Free
by
Yunzil
·
· Score: 2
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.
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
Re:Give it to them for Free
by
Anonymous Coward
·
· Score: 0
Right on. I personally am all about the OSS, but there's nothing morally wrong with making a little money by coding. Everybody's gotta eat.
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?
Re:Give it to them for Free
by
Anonymous Coward
·
· Score: 0
"Programmers are morally obligated to give the code to their users and allow their users to freely modify and redistribute the code.
" blah blah blah
Re:Give it to them for Free
by
JordoCrouse
·
· Score: 1
Well, for one thing, the model of selling a product doesn't work in the software development industry. Programmers are morally obligated to give the code to their users and allow their users to freely modify and redistribute the code.
Mod +1 Funny! Oh,wait....
You are morally obligated to do exactly jack, diddly, and squat with your code. If the company has the reputation and resources to handle services and do it correctly, more power to them, but for the average small time shop, selling the code may mean the difference between sucess and failure. What good is it it going to be for a client if you give away your code, and then go belly up two months later?
-- Do you have Linux and a DotPal? Click here now!
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.
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.
Re:Give it to them for Free
by
Anonymous Coward
·
· Score: 0
contrary to/. dogma, there's also nothing wrong with making a FUCKLOAD of money with your software either.
Re:Give it to them for Free
by
Anonymous Coward
·
· Score: 1, Insightful
the model of selling a product doesn't work in the software development industry.
Your statement is too general and doesn't (necessarily) apply here. The business model of selling a software application only fails in the face of large market demand and low barriers to entry. Why? Because if the barriers to entry are low enough (i.e. not too much specialized, high-level technical knowledge is required and the implementation can conceivably be done by some small team of programmers) then some competent geeks will come along and write an application that is nearly as good as a commercial implementation and open-source it for everyone's use.
But in a small niche application (which this sounds like to me; it's not like the guy is offering his client the source to yet another web browser) then there simply isn't enough economic incentive for a small team of programmers to ever provide an open-source solution. For example, no one is ever going to write a comprehensive real estate property management and accounting system and then GPL it (an issue near and dear to my heart, since I'm evaluating a bunch of commercial packages right now).
Programmers are morally obligated to give the code to their users
Um, no. Are you trying to tell me there's something morally wrong with me writing a contract for my clients that says they purchase my work in the compiled, binary representation? Suppose they don't want to pay me the extra salary for designing clean, abstract data structures and making the code readable and well-documented?
I wrote a simple application for a one-shot data migration task recently, and the only concern was that it JUST WORK, once, and then it was thrown away. Why should I have to clean up that design and make it reusable? Why should my client have to pay me to do this?
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.
That's why it is so bad. Also because that particular work is in itself valuable and should be released into the public while it is still useful. I mean, do you want Shakespeare's Hamlet, or a similar play written by some guy?
Closed source materials never reach the public at all. Even when the copyright expires, no one will ever have them. That stinks.
As for finding out when someone is using your code, unless what you're doing is very trivial, it's probably not that hard, and there are legal methods to find out _exactly_ what's going on if you have sufficiently strong suspicions.
-- --
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.
Re:Give it to them for Free
by
Anonymous Coward
·
· Score: 0
1) Programmers are morally obligated to give the code to their users and allow their users to freely modify and redistribute the code.
Is this why cheating is such a problem in universities today? Do students feel morally obligated to cheat?
2) The real money in software is in the services industry
Partially true, but do you think ID and Blizzard make their money off of services? The model of selling a product DOES work in the software development industry.
I have nothing against open source, I have produced both closed and open code in the past. Each have their benifits, but I think to make broad sweeping statements in either direction is just silly.
Re:Give it to them for Free
by
Anonymous Coward
·
· Score: 0
actually, you are *morally* obligated to precicely nothing. you can do whatever the hell you want to do with your product.
Re:Give it to them for Free
by
ToadSprocket
·
· Score: 1
This is a truly great statement. I am morally obligated to give away my code? Please my Lord, Oh thou who defines my morals, which church might I attend this week?
--
If this article confuses you, don't worry. It was posted yesterday in a much clearer fashion.
Re:Give it to them for Free
by
Anonymous Coward
·
· Score: 0
LOL!
Re:Give it to them for Free
by
fiftyfly
·
· Score: 1
Personally I think that national treasuries should be morally obligate to give their plates, and what not, to their users and allow their users to freely modify and redistribute the product. I'd call it OpenWallet;p
-- "Sanity is not statistical", George Orwell, "1984"
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.
You could make a fortune on writing extensions and ironing out bugs that existed in the original project.
Your're advocating distributing software with bugs in it and charging people to fix those bugs?
Sounds like the Despair, Inc. definition of consulting: "If you can't be part of the solution, there's money to be made in prolonging the problem." No wonder people don't like consultants.
Re:Give it to them for Free
by
ShwAsasin
·
· Score: 1
"I mean, do you want Shakespeare's Hamlet, or a similar play written by some guy"
But consider this, if someone took Hamlet and modified the ending, would Shakespeare be happy about that other person going from town to town being paid to act his version of it and Shakespeare not get any of that money in return?
Shakespeare's work is several hundred years old, so it would be public domain so you cannot easily compare the two. I think the copyright holder should consider putting the work in the hands of the public domain when it expires, but that would be another scenario in which a perfect world would be slightly closer to reality.
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/
Re:Give it to them for Free
by
Anonymous Coward
·
· Score: 0
Is [insert popular novelist here] morally obligated to give away his/her novels, allowing the readers to freely modify and redistribute the text?
You're comparing two entirely different subjects.
Novels are not particularly any more useful if readers are able to modify and redistribute them, but programs can be much more useful if you are able to study and improve them. That is one fo the arguments for free software -- that it is much more useful because modification enables porting and improvement.
No-one is "morally obligated" to make their software free, but if they do they are making more of a contribution to society than they would by trying to license closed-source. The poster should ask to be paid to create the system, then distribute it freely and offer their services to port, improve, or support what they've written.
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:Give it to them for Free
by
Anonymous Coward
·
· Score: 0
BTW. There is still a large debate as to wether or not shakespeare really created his own plays. It's known that he published them, but there have been claims that others wrote them first and shakespear was the first to publish... Hrm.... interesting no?
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?
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: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
smithmc
·
· Score: 1
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.
...
And if the consultant is reading this post: You are over stepping your ethical rights. They paid for it, they should control it.
I don't see where there's an ethical issue here at all. This is between the contractor and the customer, to negotiate as they see fit. Maybe the customer wants ownership of the code, and is willing to pay for it. Or maybe they don't care about that, and can negotiate a lower price in exchange - the contractor makes less money off the current sale, but can make more money off the software later on. Why make it an "ethical issue"? Having choices is a good thing, innit?
-- Downmodding is the refuge of the weak. Don't downmod, make a better argument!
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/
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.
Re:Give it to them for Free
by
firewood
·
· Score: 1
Programmers are morally obligated to give the code to their users and allow their users to freely modify and redistribute the code.
Yes, but no one is morally oblgated to write code in the first place; and a huge percentage of the code that the world runs on is so boring that no one would write it without bribery, that bribery often including legal restrictions on other perceived obligations.
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.
Re:Give it to them for Free
by
MidnightBrewer
·
· Score: 1
When you charge somebody for doing your job, that's just common sense. Many programmers spent thousands of dollars on a college education - shouldn't they be renumerated for their investment and sacrafice of several years of their life?
Programmers have the hardest time marketing their product, namely, software. One of the few things we can thank Bill Gates for convincing IBM to pay licensing fees per copy for his original DOS operating system, thus paving the way for everyone else since then.
I have a friend who believes that all programmers should give him their software for free. I asked him how he expected them to eat and pay their bills. It's such a blindingly obvious question. The mind boggles.
-- "Give a man fire, and he'll be warm for a day; set a man on fire, and he'll be warm for the rest of his life
Re:Give it to them for Free
by
smithmc
·
· Score: 1
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.
No, only in one of those cases - the unsafe car. It's not reasonable to assume that a layman will be an expert on automotive engineering, so if the manufacturer claims the car is safe, the customer is relying on the manufacturer not to lie. If they are lying (i.e. the car is not safe), then it's fraud and certainly would be unethical. As for the loan shark and the sweatshop - well, you said it yourself; no one's forcing anyone to do anything.
Even though two parties enter into a contract of their own "free will," the terms of the contract can still be unethical.
Only if force or fraud is involved, which I don't see in this case (the software job). (And what's with the quotes? Don't you believe in "free will"?)
-- Downmodding is the refuge of the weak. Don't downmod, make a better argument!
Re:Give it to them for Free
by
illogic
·
· Score: 1
You could make a fortune on writing extensions and ironing out bugs that existed in the original project.
Kinda like Microsoft?
This whole post is a crock. It is impossible to say that your idea of an open source model will work for every person in every situation.
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.
Re:Give it to them for Free
by
rboatright
·
· Score: 1
Please tell me this is sarcasm.
Open source has some point when on-going services are needed, and when the demand for the software is large, but I have spent the last 20 years marketing software to a -very- narrow vertical market where my total customer base -ever- will be around 150 installs. So, let's just give away 20 years of work, and hope that they pay service contracts? Are you NUTS? The software I make would not exist unless the customer pays to have it created. It's as simple as that.
Re:Give it to them for Free
by
Anonymous Coward
·
· Score: 0
Programmers are morally obligated to give the code to their users and allow their users to freely modify and redistribute the code.
Programmares are also morally obligated to ignore idiotic statments.
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? --- Good question. "Morally obligated?" In what reality?
The only thing I feel *should* be morally and legally obligated is the intent of copyright law. If the intent was to promote society by rewarding the inventors/creators, but ultimately to benefit society, copyrights and patents should be limited to 3-7 years. Creators get the benefits, then society uses those benefits to move forward. Too often copyrights and patents are being used as perpetual income machines for corporations other than the creator anyway -- to the detriment of society.
I thought in order for something to be copyrighted, it had to be published? Didn't it used to be 5 years from date of copyright before a copy had to be archived with the copyright office? What ever happened to those requirements? They get rescinded? Seems like the copyrighted source of Win95 should have been out under those old rules and Win98 would be coming out right around now, but, as usual, I digress.
Morally -- I think the source of a program should be moved into the public domain should a company be unwilling or unable to support customers who bought a specific product based on the source. I hate it when I buy a product, the company goes belly up, then I'm stranded with what was a useful program, that slow grows incompatible. I approached one company and asked to buy some old source from them (they got out of the business, last release was >5 years ago). They refuse to support and refuse to let customers support themselves.
Imagine if an auto-maker with proprietary chips in their car engines decided after 3 years to not support the car anymore -- those who had diag tools could keep them, but once they broke down there were no more replacements. People put up with this type of treatment all the time in the software industry.
I can't believe what people put up with in the software industry that wouldn't fly farther than a turtle could leap in any other industry.
Can you imagine: a shrink wrapped screwdriver: by opening this shrink wrap you are agreeing to our license -- you don't really own the screw driver but are allowed to use it on one appliance or project. Use of the screw-driver on more than one appliance will void your license and the screwdriver must be immediately returned. Before the screwdriver will work, you must attach the screwdriver protection device to the object being worked on. Once attached, any movement of the device will activate a homing beacon to track the location of the violator. Of course this is being done to protect us against pirates who use screwdrivers on multiple items all in the same day, even!
Maybe we can have a screwdriver server license that can be sold with 10 screw licenses that allow the screwdriver to be used with 10 screws. Yeah...this could really be a new money making venture...
And people wonder why prices continue to rise while quality of life continues to decline and the gaps between the rich and working-class (those who must work for a living) grow larger and larger.
Maybe a first step would be a government by the people and for the people -- not by corps and for corps.... Maybe one of the pivotal points of legal mismanagement was assigning the right of 'personhood' to corporations back in the early 20th century.
The American ideal is lost and grown into a sham. Is it fixable or is another revolution going to be required to recreate America? (Prolly won't see it in my lifetime, but as oppression grows, discontent may as well. What will happen if it becomes the case that terrorists aren't just foreigners? Life would really suck then...:-(
lpq
Re:Give it to them for Free
by
Anonymous Coward
·
· Score: 0
Copyright, IIRC, is instant. This post, for example, is copyright to me, as I type it. In reality, however, that means squat.
It's kind of like the telegraph/telephone/whatever the hell it was incident. If someone coughs up the cash to go fill the LoC with my Slashdot drivel before I do, I'll be pretty hard pressed to prove that they didn't actually write said drivel before I did.
...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...!
But Microsoft does not sell products. Microsoft sells licenses to products. The fact is that you cannot sell products in any business whose cost-structure is based primarily on R&D costs, since the market does not understand R&D costs. The market knows unit costs and tries to make products cost close to an ideal unit cost. Now for all R&D dominated businesses, this ideal unit cost is zero. This failure of the market, combined with a standard requirement for mass-market products, i.e. that your unit production time is less than 2 years, is a disaster for software. This time is intended to only cover the time it takes to find customers.
This is why most software businesses have to either sell licenses (which is a bad substitute) or build hardware whose unit costs are not zero, then bundle the software with the hardware. It's also the reason for the problems so many small software companies are having. The market is just not designed to be used in situations where you have to spend considerable amount of time for developing a product before you can sell anything. It assumes you can sell your product from day one, and that most costs are associated with making copies of the same simple design.
-- --
Esa Pulkkinen
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.
Re:Contractual Clauses
by
Anonymous Coward
·
· Score: 0
Insert IANAL comment here.
I (love) ANAL.
Re:Contractual Clauses
by
Anonymous Coward
·
· Score: 0
You know I hate to be the stick in the mud, but...
Damn has slashdot changed! A while back, slashdot was essentially a site that was a part of the free software community. Now, we have people giving advice to others about how to hoard software and keep code away from others. We have a site that posts questions ASKING for advice on how to take people's ability to share away from them, and a culture that almost believes that software is only useful insofar as you can make a buck off of it.
All of the so-called communist hippy free software "dogma" that a lot of people complain about on this site was the enabler of this site, this discussion, and most of the internet technology that makes it possible for us to communicate together here in this forum, but still people denigrate it with all of the typical ad-hominem nonsense, figuring that if a comment about RMS not washing his beard can be made to stick, it somehow invalidates 20 years of work by GNU.
There's a reason why the free software "dogma" (as people love to incorrectly label it) exists, and a lot of it culminates in avoiding situations that lead to discussions like this. "How best can we prevent our neighbor from sharing software? How best can we keep a stranglehold over the software?" It's actually kind of depressing.
Clearly you need professional help
by
Anonymous Coward
·
· Score: 0
1) You need a good attorney to draft a user license agreement 2) You need a psychiatrist for posting this here, the bastion of open software, and asking a bunch of geeks legal questions
What the hell
by
Anonymous Coward
·
· Score: 0
Go get a fucking lawyer. You do *NOT* want slashbabies informing your licensing decisions.
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").
Re:Why ask on Slashdot?
by
Anonymous Coward
·
· Score: 0
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.
Only "Open Theft" software is to be discussed here? Opps, I mean GNU/OpenTheft Software...
Re:Why ask on Slashdot?
by
Anonymous Coward
·
· Score: 0
A) Many people who read this site have experience with non-OpenSource software and might be willing to share experiences.
B) See A).
Re/ getting a lawyer... of course. But in my experience, entering a lawyer's office armed with the experiences of peers in a similar matter can make for a much more productive conversation. Your lawyer will probably appreciate you doing some groundwork and educating yourself. Slashdot is a great site full of people who see the pros and cons of both closed and open source approaches.
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...
Have you thought about using an escrow agency to safeguard the code and to release it to the customer only in case of your company's demise or inability to fulfill support duties in a reasonable way? This kind of arrangement protects both sides, and my customers are usually satisfied with it.
Re:Code Escrow?
by
Anonymous Coward
·
· Score: 0
What happens in the event of the escrow agency's demise?
They get it from the escrow agency's escrow agency, of course.
--
All Your Memory Are Belong To Java
Re:I have a great idea
by
Anonymous Coward
·
· Score: 0
Parent poster must imagine that the rest of slashdot must be like himself.
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...
Re:Another question for an IP lawyer, not Slashdot
by
Anonymous Coward
·
· Score: 0
"I am not a lawyer, this is not legal advice"
are you kidding me? your insightful two lines about getting a lawyer is not "legal advice". Even though you have drafted agreements? ooooohhhh...
(sorry if you take offense, but please, for the love of god, do not try to make your comments seem more meaningful by adding moronic disclaimers that you saw someone else using when giving advice that actually may have constituted legal advice).
Mk
Standard Ask Slashdot Answer
by
billnapier
·
· Score: 1
Hire a lawyer.
Really. Hire someone who knows what they are doing to put your wishes into "legalese" and have the company that you are working for sign the contract.
No. The standard Ask Slashdot answer is "Use Google."
Are you new around here?
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
Anonymous Coward
·
· Score: 0
This would be true if this was a true work-for-hire, but from the original post this does not appear to be the case. The customer is apparently not paying for all of the development costs, only part.
Re:Sometimes I fail to understand people
by
Anonymous Coward
·
· Score: 0
Agreed. If I were your employer in this case, I would stipulate that any IP that you develop in the course of completing the contract is owned by the company paying your bills.
You even admit that you are expecting them to underwrite your development efforts so that you can resell the code. I wouldn't sign a contract of this sort.
We've been bitten by just such an issue when we didn't stipulate in the contract arrangement that the code developed for us was our IP. Some idiot contractor has sued us for developing a derivative work based on his original development. Even though the new system is not even close to derivative work, we still have to suffer through this BS and spend money dealing with this moron.
If I were the company that accepted your bid, I'd cancel it and reopen the bid process.
Re:Sometimes I fail to understand people
by
mansemat
·
· Score: 1
Perhaps they are being paid to provide a Solution, not just to code something for them.
Also, that's a pretty bad analogy.Would you get to keep your code if you worked for a company? No, the code would belong to them.
When you work for a company you've usually already signed away your IP rights for your work. You are an employee of the people paying you. He is working as a vendor. Whole differnent ballpark. He can do whatever he wants to do as long as the customer accepts it.
-- --
Re:Sometimes I fail to understand people
by
drxenos
·
· Score: 1
This is not true. It all depends on the contract. We deal with subcontractor who do this all the time. They build software subsystems for us, which they also use in other projects for other companies. Its done all the time. There is no all or nothing here. Not every piece of software you write for a company is necessarily a "work for hire."
--
Anonymous Cowards suck.
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!)
Re:Sometimes I fail to understand people
by
Anonymous Coward
·
· Score: 0
Not that anyone will see this AC comment...
You are correct in the case of typical contract programming arrangement, but that is hardly the only type of agreement that can exist between a software vendor and their client.
I work for $LARGE_CORPORATION who recently bought $LARGE_SOFTWARE_PACKAGE. We got the source, and we're free to modify it to suit our needs, but we can't resell it. Nor can we expect them to support the programs that we've modified. I imagine this type of license is quite common for large software packages.
Re:Sometimes I fail to understand people
by
Anonymous Coward
·
· Score: 0
"They are paying you to code something for them. You are a contract firm. What you code for them is their property."
Nope. Unless the contract says that the code is created as a "work for hire," the code is the property of the person/company who/that created it.
Re:Sometimes I fail to understand people
by
RogerWilco
·
· Score: 1
In my company the contract is such that if we take the job for a fixed price, and the risks are ours, then the copyright of the product is ours too, and the client can only use the product. If the client pays us for every hour it takes to develop the product, then we are effectively temporairily his employee, and the client owns anything we have produced, but also has the risks if the project goes over budget or scedule.
Adiaan.
-- RogerWilco the Adventurous Janitor
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
Anonymous Coward
·
· Score: 0
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.
Maybe. Some people/businesses just don't work that way -- they will look for any advantage. Some will jack you around just for the practice.
In this case, the software is critical to both companies, so the stakes are pretty high. Use
a lawyer!
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:Outstanding service and support
by
SmoothOperator
·
· Score: 1
True, I have never had a bad experience with any of my clients, but maybe because I've only been in the development business for 4 years. However, I think that the initial fee that you charged should be substantial enough to cover the inital risk. If the client takes off, you move on, because: 1. you have the funds now to hire a good lawyer; and 2. if you're resourceful enough, there are other clients waiting.
--
Veni, vidi, vici.
Morons
by
Anonymous Coward
·
· Score: 0
You don't piss into the wind, nor do you let the client keep the source and expect them not to use it against you or create a competing product with it someday. They've got you by the balls: if they did violate your "Agreement", you don't have the resources to go after them in court. Legal agreements are only enforceable after spending tens of thousands in legal fees and three judges agreeing with you.
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!
That would totally eliminate the point of providing the source code would it not? Based on the phrase "to protect themselves" it would need to be in a non-proprietary format. Either they need to verify it performs the tasks you claim (and not say, spew out private information somewhere), or they need to feel that they will be able to maintain the product should your firm cease to be able to.
-- Health is simply dying at the slowest rate possible.
The department title for this story says "open source does not necessarily mean free". Obviously the poster did not mean "free", as his intentions are proprietary as hell, but let's try at least to stick to the Open Source definition and not call it open source either.
What you are trying to do, mister, is to give away the source but with crippled access to it. While you're at it, why don't you license it using Microsoft's Shared Source license?
Re:Misleading dept. title
by
Anonymous Coward
·
· Score: 0
I work with code under these terms all the time.
I've produced applications with these terms, and modified applications with these terms. (On the other hand I have never negotiated such terms, I don't negotiate the contracts.)
From the customers perspective it certainly is Open Source.
They have the ability to modify it as they see fit, and they have the ability to read and understand it as required.
They don't have the right to resell it, or to give it away.
Most companies are reluctant to sell or give away that which cost them to produce. Some companies and some internal projects are big enough to warrant it. (automotive companies have in the past sold software they developed to their competition.). But, svae for these exceptions, most code produced for most companies doesn't leave the company or department. And nobody thinks it is a problem.
This type of 'open source' is typically all a company wants.
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.
That's why in the software world, we own the software and the source code, and we give them a license to use it(generally nonexclusive). That way they can't resell it not matter how hard they try.
Abosolutely. Writers show their "source" all the time, yet they're still protected.
But, like writers, you need to make sure you're not writing for hire for a work that will be owned by the company paying for it. Your contract has to explicitly state that you own the copyright and you're merely selling/licensing copies to the company. After that they can see all the source they want without legaly being able to copy it (except standard fair use, of course).
Redistribution rights are commonly held to be reproduction rights, or--as it was before the digital computers--reprinting rights, not first sale doctrine...
That's a very odd wording of it then. 17 USC 106 lists copying and distribution seperately. And uses distribution, not redistrobution.
The 'Re-' sounds to me as though it is once again distributing a work already distributed. And First Sale tells us that authors only get to distribute a copy of a work the first time, not thereafter.
-- --
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.
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.
Softman Prod. v. Adobe Sys., 171 F. Supp. 2d 1075 (C.D. Cal. 2001). Note the language on 1083-84, 1088, 1091. As the court notes, it doesn't reach the issue... but the message is clear.
Bobbs-Merrill Co. v. Strauss, 210 U.S. 339 (1908).
The latter is noteworthy for creating the First Sale doctrine directly out of the copyright clause; it was not codified by Congress until the next year.
How is Villanova, incidentally? I'm across the river at Rutgers Law. (and not studying my ass off enough, as posting on/. would seem to indicate;)
-- --
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.
yeah me neither... its getting about that time though, finals and shit. thanks for the cites.
Dan
Shared Source
by
Anonymous Coward
·
· Score: 1, Insightful
Go read the license agreement for Microsoft's Shared Source. I'm guessing they've got the legalities of something like this worked out fairly well.:)
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.
Not true. This seems to be fairly common practice, at least in some industries. For anything going near a lot of the govs computers, or gov contractors, the source code is given, even though they dont "own" it.
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.
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 bull shit 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.
It is called an Escrow Account
by
emptybody
·
· Score: 1, Redundant
What we have done is to make verified tapes of the code base and a report listing required packages OS hardware etc. needed to actually build the code.
We included on the tapes only our source code.
Any third party apps (compilers, editors, libraries, widgets) would neeed to be aquired seperately on their dime.
The escrowed code is then only accessible in the event that we are unable to live up to our contract or if our company dissolved. These details are very specific and explicit in the contract.
They cannot look at the code for any other reason. We are protected from them and they are protected if we disappear or try to shaft 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.
XML or SOAP?
by
Anonymous Coward
·
· Score: 0
Have you thought about web services? That might help. You keep the code on your servers and they just use it. If they stop paying you, you cut them off and their business goes away too.
I would say the reason they want the source is as a security, in case your company disappears or for some other reasons is unable to give support for the product in the future.
The best way to work this out is to find some way in the contract to deposit the source (in a bank vault or whatever), which they can then get their hands on if the unthinkable should happen.
Of course, like everybody else here IANAL, so you should get one to figure out the details. I'm sure they would be happy to oblige with this.
Re:I have a great idea
by
Anonymous Coward
·
· Score: 1, Funny
Parent poster's hanging around here hoping that's the case, so he can score.
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.
that ain't open source
by
Anonymous Coward
·
· Score: 0
That ain't open source. It's not free as in beer; it's not free as in speech. Having said that, you write a contract, and you more or less trust the customer to keep to the contract. You are in the same position as the sellers of CDs and movies. You want to sell an easily-copied, easily modified product, and you want to enjoin your customer from doing these easy things without your permission. There is no technical way to assure what you want. In the end you have to trust your customer.
You can try, and I recommend that you put in things like a heartbeat, that pings you daily and lets you know when the software is running (tell your customer what it is and what it's doing). You might even include an md5 hash signature of the code in the heartbeat. But all this is easily faked if they want to fake it. You can put in guilt screens that flash if the license isn't up to date. But in the end you have to trust your customer. Welcome to commerce in the 21st century!
Mmax Hheadphones
Some suggestions...
by
Anonymous Coward
·
· Score: 0
Perhaps have a warranty stipulation that the code is only warrantied in an unmodified state.
Kinda like the labels that say "Warranty Void if Seal is Broken".
Keeping a copy of each version of the source code archived at your site would make it easy to verify any changes.
The trick would be to keep them from legally reusing it. I'd talk to a lawyer (sorry, but their scummy knowledge is in how to protect you from other scummy lawyers that could say you gave away your source so it could be changed).
I'd look perhaps to agreements Microsoft makes you sign if you want to touch their source code if you can't afford a lawyer of your own (as an example). They have, as we all know a legal dream team (sucking down millions of dollars, I'm sure if not close to billions) conjuring up new ways daily to prevent you from being able to do anything with their source should you become part of their club and gain access to it.
Also, make sure they sign something limiting what their employees can take home. While the company enters into a legal agreement with you and has no intention of stealing your code, what is there to stop a rogue employee?
Perhaps you can make your source code an "e-book". While it's not exactly secure, it may be an interesting way to allow the company to access it (by checking it out, as in from a library) and tracking who gets access to it. Though not entirely secure, it is sufficiently a pain in the butt to discourage the majority of those who may want to steal your source. Plus, by breaking (if such a thing happens) the "security" of the e-book, I'm sure you can sick the U.S. on the with the DMCA.
That'll be two fronts to legally challenge anyone who steals your source.
Just a suggestion.
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?
DIY Law
by
Anonymous Coward
·
· Score: 0
If there's serious $ involved you probably do want a lawyer, but in the interest of providing a little constructive input, you might want to check out a book called "Sofware Development (A Legal Guide)", Fishman, Nolo Press...
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.
You are the one who should grab a dictionary. Open source, and GPL, are not one in the same. I guess you could say, all GPL code is open source, but not all oss is GPL. There many other licensing possibilities which allow certain sets of people to see the code. Allowing the client to have access to code is, on some level, open source. MS doesn't send you the code when you buy their OS do they? Nor do many other software firms.
I would say that open source software is fantastic, but the GPL enthusiasts can really piss people off. It is a fantastic license, but not the end all, be all of OSS.
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).
...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
uberbrownout
·
· Score: 1
There's no need to reinvent the wheel. If you take computer programming, the first thing they'll tell you to do is check if something you're trying to code has already been done, and if it has, use the old code. People don't want to pay you to rewrite and debug new code when you've already got something working. If the customer wanted to own the software, they could hire people to write it themselves, but instead they hire a contractor, who will retain the rights to sell it to others.
I guess a good analogy would be, you can buy a new car for 25 grand, or you can use a new car for 5 grand. While you can't resell the car, since you don't own it, you can use it as if it were yours. I'd take that deal.
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
Anonymous Coward
·
· Score: 0
Software is a product. R&D goes into a product and that costs money! As a business, I not only need to recoup the R&D costs, but I also need to make a profit.
As an analyst, you are not providing a resellable product, you are providing a one-shot service per issue and as such you can only bill the customer for the time you spent analysing their problem and any expenses you incurred while analysing their problem. Same goes for a lawyer.
I don't hear you complaining about how a singer or a song writer get paid royalties or how an author keeps getting paid for a book they wrote? It comes down to the fact that when you CREATE something that has value you can expect to get paid over and over again for it. Unless ofcourse, you give it away for free.
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
waxmop
·
· Score: 1
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?
if i was the guy that wrote the ask slashdot, then what you've outlined above would really be the only way i'd agree to giving them access to the source code. otherwise, once he hands over the code, he's going to sweat that the client firm is going to try to cheat him somehow. and the client firm will probably try to cheat him by cosmetically altering the code and then releasing a competing product. giving away source code and charging per-seat licenses are two great tastes that don't taste great together.
Even the most elementary understanding of the software market or economics in general. should enable you to understand why it cannot work like that.
yeah, i agree, but how else can you get the source code to be released and have the author adequately compensated?
Re:Ask them to pay you want you want?
by
Anonymous Coward
·
· Score: 0
Why doesn't Time Warner just ask the first movie-goer to pay $1bn for the ticket and let
everyone else see it for free? Why do they
keep on charging money for it years later?
After all, why can't they be satisfied with
a day's pay for a day's work?
Re:Ask them to pay you want you want?
by
firewood
·
· Score: 1
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?
In almost any real businesses, yes. The cost of R&D and tooling depends of almost any product (cars, graphics chips, loaves of bread, etc.) is dependant on the probability of future sales, not current payments. If you were a baker, the number of loaves you spend time kneading in the early morning is far greater than your prepaid sales, and more likely depends on your forcast of how many people will walk into your shop during the day. Furthermore you must charge more than your time and money was worth on good days in order to cover the risk of poor sales on bad days.
People who don't take risks are not business... more like serfs.
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.
Re:Ask them to pay you want you want?
by
Anonymous Coward
·
· Score: 0
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.
I get it: the customer pays you to fix defects in the software you made, in perpetuity. Is that business or extortion? If you are unable to deliver a bug-free product, perhaps you ought to be the ones to take responsibility.
Re:Ask them to pay you want you want?
by
Anonymous Coward
·
· Score: 0
I agree with gfsprez. Don't forget the basics of negotiating a contract in general. Your price qoute should contain 3 parts or sections: 1. The Price. 2. The Conditions. 3. The Terms. If you have to 'give in' on price, then negotiate more favorable terms and conditions. Vice-versa, etc. Seems like the primciple could apply here.
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 about partial code???
by
Anonymous Coward
·
· Score: 1, Interesting
How about " They can only have the consanants. With hold the vowels. If worst comes to worst they can write a script to try every possible combination of consanants until it compiles and runs properly."
Ahh, Ask Slashdot
by
Anonymous Coward
·
· Score: 0
Where the question always gives a new definition to "Open Source" and the answer is always "Hire a Laywer"
"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
JOB OFFER
by
Anonymous Coward
·
· Score: 0
My company is looking to hire a dumb-ass egomaniac who is unwilling to use 3rd-party software. We need to take a very long time in getting our software to market and you sound like the guy to do it. Please send me your resume as soon as possible.
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.
You should get a Lawyer blah blah blah like everyone else says. BUT:
I'm for code reuse and what not, and the competiton with you clause seems fine as well. BUT, I wouldn't hire you at those terms unless you were much cheaper then the competion. I mean much closer to the cost level of off the shelf software packages...as you are giving them the source and an what is an off the shelf license. Many companys are fine with this, but many companies will not do this anymore. They want all the rights to the code as if you were they're employee, from my experince, except allmost all will give you the competion against you is against the rules and give you the right to use the code again.
Lastly and possibly most importantly you may want to include that charges for maintaining code not changed by you be diffrenty, ie cost significantly more, if it is commented poorly.
I would personally not work with you under your agreement and i do businees as an outide systems developer and get code devloped by outsuide developers.
Get a Lawyer talk to their Lawyers llike everyoneelse says. Beware of bad programers.
Re:My theory
by
Anonymous Coward
·
· Score: 0
Wow, 2 delusional egomaniacs in the same thread? We've been truly blessed today...
1.) they buy the compiled code (cheapest) 2.) they buy the source code + compiled code (more expensive)
I've also worked out with a few clients that they can have the compiled code, the source code (my clients rarely bother with doing anything to the source code) and we have a little agreement that they can resell the source for us. This has worked out pretty well.
It is important that you decide whether you are producing a product that your customer buys, or are providing a service that your customer uses, i.e. are you selling them a widget or contracting to build them a house?
In the former case, you retain the rights to the "trade secrets" and proprietary aspects of your product. In the latter case (assuming you are billing them time and materials), you are building something for them and the results of your work is their product.
You can put any language you want in a contract. Just be aware that they have access to lawyers, too, and you can both lose time, opportunity, and money by being unrealistic.
If they have no expertise and capabilities in software and are likely never going to be a competitor of yours, you are probably being overly defensive. On the other hand, if they are paying you for your TIME, then they can argue that you are building THEIR code.
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,
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.
Get a browser
by
Anonymous Coward
·
· Score: 0
And a clue. From http://www.opensource.org/docs/definition.php
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.
Rationale: By constraining the license to require free redistribution, we eliminate the temptation to throw away many long-term gains in order to make a few short-term sales dollars. If we didn't do this, there would be lots of pressure for cooperators to defect.
2. Source Code The program must include source code, and must allow distribution in source code as well as compiled form. Where some form of a product is not distributed with source code, there must be a well-publicized means of obtaining the source code for no more than a reasonable reproduction cost-preferably, downloading via the Internet without charge. The source code must be the preferred form in which a programmer would modify the program. Deliberately obfuscated source code is not allowed. Intermediate forms such as the output of a preprocessor or translator are not allowed.
Rationale: We require access to un-obfuscated source code because you can't evolve programs without modifying them. Since our purpose is to make evolution easy, we require that modification be made easy.... and so on.
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:Talk to a lawyer or refer to MS
by
abdudani
·
· Score: 1
See what Microsoft has on its academic licensing program where by it shares code with some of its partners...
Although not sure if you can 'copy' the licence:)
Re:My theory
by
Anonymous Coward
·
· Score: 1, Funny
How can you call them delusional? These children will be the programmers of tomorrow as they leverage their mad html skillz into the web portals that we will use to view our social security benefits.
Why do all the "Ask Slashdot" questions tend to be about things like legal advice or someone's homework, which we tend to know nothing about or are totally disinterested in (respectively)?
I would rather see some geek questions that we'd have a shot at answering conclusively.
-- HBI's Law: Frequency of calling others Nazis is directly correlated with the likelihood of the accuser being Communist.
You could try...
by
Anonymous Coward
·
· Score: 1, Insightful
Keeping it in some sort of off-site (for both) lockbox (a bank?). Something that allows you to both get to it, but at the same time, logs any access to it so you can make sure people don't just go get it.
This is assuming that they want the code in case of a disaster where the code is otherwise lost. If they just want it so they don't have to pay you for upgrades (and have their in-house people do half-assed upgrades to it) they will not want this option, so you'll know right off the bat that they are trying to purchase a one-time license to use the code any time they want.
Add a few zero's to the price tag if they want a one time purchase of a license to the code because you might as well get paid up front since you'll never, otherwise, see any money from updates / tech. support.
MOD PARENT UP!!!!!!
by
Anonymous Coward
·
· Score: 0
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?
Re:Well, who pays for that?
by
Anonymous Coward
·
· Score: 0
That's what we did...
Customer wanted the source, so we gave them the source... to the applications...
We didn't give them the source to the underlying libraries...
The applications were written in higher level languages, but the libraries were written in C or C++.
The majority of source code was in the higher level langauages in the applications, but it didn't do you any good without the libraries...
The binary shared libraries we gave them we told them it was part of the higher level language runtime...
I have to agree though, if a third-party makes a change to the source code, the company has to pay for any technical support.
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?"
MOD PARENT UP! IT'S FUNNY!
by
Anonymous Coward
·
· Score: 0
This is a good answer to most ask slashdot questions.
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".
Re:That's not open source
by
Anonymous Coward
·
· Score: 0
Open source implies that they have all the rights you specifically say that they will not be granted
I'm sorry to inform you that the definition of "Open Source" is a little more than that. An OSI approved Open Source license can put any restrictions on you as it likes. For reference I suggest you read the latest abomination OSI managed to accept, the Sybase Open Watcom License.
If you just carry a CD with this code, you according to that license have accepted the license. Should you not accept the license, you are required to destroy any copies. In this case physically destroy property - the CD.
Don't bullshit about Open Source until you know the definition of the crap. If you mean Free Software, say so!
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 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.
To protect everyone involved, you should to add a digital watermark to the source code so that noone can modify the source code without you knowing it, and you can track the code to the source. For example, a series of comments like:
The above would be completely unnoticable to the VB coder working on the project.:-)
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.;-)
Re:Learn from the RIAA/MPAA
by
MobyDisk
·
· Score: 1
Apparently, the humor was far too subtle.
Simple copyright
by
Anonymous Coward
·
· Score: 0
Simple copyright protects your code - your company is not an employee or anything, so unless you agree to a contract that gives over total ownership of the code, you remain in possession of that code.
The other party may use it, but that is all. It's not their property - they're not allowed to sell or redistribute it (not completely sure about this last part).
Of course, this is not something that is very well known. I personally work for a small company designing websites, and so the client of course gets access all the 'source-code' (the html is trivial, talking about the server-side scripting here), and we've had one or two cases where we had to tell such a client that then sharing this with a sister-company was not allowed - if they wanted to use it as well (clearly distinct website, company a different legal entity, running on a different server), they'd have to approach us and we'd 'license' it to them. Since then we've added some clauses to the standard contract to make this more obvious, but really, there is no need to - Basic copyright laws specify that (unless you work as an employee for a company) your work remains your property and only you are allowed to distribute it.
One caveat here - I don't know the exact laws in the U.S. on this subject - I think their similar, but you might want to check up on it.
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
ThePlumber2
·
· Score: 0
Way to go Bruce, good advince. This is a tough subject for sure....
I would say it all depends on the customer and the escr... There has to be a better way to legally bind a company to an agrmt that would seem to be as common as this.
Thanks,
Steve
--
Thanks,
Steve
Re:Escrow contracts are voided by bankruptcy
by
ThePlumber2
·
· Score: 0
Thanks Steve! No problem Steve,
Steve,
Thanks,
--
Thanks,
Steve
Re:Escrow contracts are voided by bankruptcy
by
sita
·
· Score: 1
IANAL (obviously), but just as a customer loses goods payed for, but not delivered, in the case of the vendor goes bankrupt, escrows are lost (since they are not delivered to the other party, they are still in the possession of the bankrupted party).
NOW, if you twist it a bit. You make an escrow-like agreement where the source is deposited (in a sealed manner) with the customer and an agreement is signed that the customer may not break the seal unless the vendor fails to fulfill etc (goes bankrupt), then it should be protected from a bankruptcy, no?
Re:Escrow contracts are voided by bankruptcy
by
iMMersE
·
· Score: 1
Best laugh I've had in a good while, thanks Steve!
-- codegolf.com - smaller *is* better.
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...
Re:Because some of us work in software companies..
by
spun
·
· Score: 1
Oh please. I'm not a troll, I wasn't trying to start a fight with this post, despite the snide comments about lawyers who give away free advice being as rare as unicorns.
Did I say that Slashdot was entirely composed of open source fanatics? No. The poster was using the words 'open source' in an unconventional way, though. He could well have said, "How do you provide access to the source without escrow..." but in fact said "How do you provide open source without escrow..." That sounded like an attempt to shoehorn the words "open source" into a context where they didn't really fit.
I clicked on the story because I wanted to see what people had to say. I'm not the only one to tell this guy to go see a lawyer. I stand by my original comments, I feel that this fellow knows perfectly well that he should see a lawyer and draw up a contract. I think he just wanted to see if there were any free technical fixes that could have saved him some money.
I have this image in my head of a bunch of coke-snorting MBAs sitting around trying to work Slashdot and the open source movement for every free penny they can take. It's not a pretty image. I'll admit, I have a slight bias against MBAs. They have, as a group, contributed far less, and gotten paid far more than any other group of professionals in history.
-- -
None can love freedom heartily, but good men; the rest love not freedom, but license. -- John Milton
Get a lawyer, and a dictionary.
by
Anonymous Coward
·
· Score: 0
reNumeration means to reNUMBER. reMuneration means payment. While we're on the topic, I hate authentiFIcation - it's authentication! Now I feel better.
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...
No punitive damages
by
Anonymous Coward
·
· Score: 1, Insightful
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.
You cannot collect punitive damages for breach of contract.
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.":-)
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.
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.
Probably not. A court would probably consider such penalty clauses unenforceable. What you're talking about is a liquidated damages clause; those that are a reasonable estimate of damages are enforceable, but if the clause asks for an "outrageous" sum of money, there's no way it would fly.
Re:No punitive damages
by
Anonymous Coward
·
· Score: 0
yes, but more than just breach of contract occurs when a client starts redistributing your source without permission. a good lawyer could detail a laundry list of offenses that were created there.
Re:No punitive damages
by
danoatvulaw
·
· Score: 1
you are completely correct... there cannot be clauses in contracts that would penalize the potential defendant. That is a basic of contract law.
You might be able to get away with an estimate of your lost profits, or your expectancy from the agreement.
Dan Roberts Villanova School of Law
Its called a contract my boy.
by
Anonymous Coward
·
· Score: 0
You need to hire a lawyer.
Non Text Format
by
Anonymous Coward
·
· Score: 0
Simple. Give them the source, but in a non-text format. ie. Convert all your text to bitmaps and give that to them. If they really want to change it they will have to OCR all of it.
Mute issue
by
Anonymous Coward
·
· Score: 0
If you read over the latest MS EULA you will find out that you don't own it to begin with. Moreover, all your base are belong on MS.
But come on, what you are asking really has nothing to do with Open Source. It is a standard business relationship, thats it, nothing more.
In reality I think you were lucky not to have the company in question demand ownership of the code in some form.
Ah well looks like/. is turning into the Geek Legal Aid Commission, can't afford a contracts lawyer then come to/. well known for its legal expertise.
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.
I hope they don't let you
by
egarland
·
· Score: 0, Troll
This is a good place for the GPL. That way you can still sell it to other companies (if you customize or install it for them) and the original company doesn't have to pay over and over for the same thing just patched a little and re-compiled. If they need that software to do business they should hire you to write it without letting you extort money from them later. If you bid too little to do the job in hopes you could rip them off later that's your fault.
Would you buy a car if the dealership forced you to come back to them for repairs no matter how much they charged? It's a raw deal open to exploitation. Hopefully they don't want to do this all over in a few years when you get greedy and they are forced to eather pay up or yet again pay someone to develop a solution to the same problem from scratch.
This is a great example of why free licenses are good for software customers and proprietary licenses are bad.
-- set softtabstop=4 shiftwidth=4 expandtab nocp worlddomination
It would appear to me that's the exact situation they're trying to avoid. By having your app hosted elsewhere, your success is tied to theirs. If you host an XML Web Service and you go out of business, your clients are up shit creek with only a XML schema for a paddle. And you aren't paddling very far with that.
Where to find a Contract
by
RebelTycoon
·
· Score: 1
Look at component developers, especially the larger ones like DevExpres. From using their stuff and purchasing the source code, I know that they have restrictions on what I can do with the Source Code provided. Modify their contract to suite yours, then you don't need a damn lawyer.
Also, be prepared to loose one programmer to the company, especially if they are happy with the product. If you are billing per hour, they will offer a job for less then they are paying. Be prepared, the programmer most seen as the asset will be the target, so keep them hidden and manage, or expose them and use as a spy.
I prefer to use contracts that I have to agree to as the bases of contracts I pass onto the customer, especially as I am web hosting reseller, the contract that binds me, binds my clients (with some additions).
make the code hard to follow
by
Anonymous Coward
·
· Score: 0
First of all its really fishy that a customer would want to ask you for a specific job then say that they will modify it to their needs.. thats dumb, the reason they hire you is to handle all the coding requirements, they tell you what they want, you code. but if thats the way they are,there are coding techniques you could use to throw even experienced programmers off, but still be good coding practice, if you document enough (internal documentation) then it won't be hard for you to maintain but will be a pain in the ass and probably twice as expensive for that company to maintain.
definatly make it clear to them that if they resell or reuse your code without your consent you will sue them for all they are worth and will win because you have contracts (put it in legal terms though)
Shared Source
by
Anonymous Coward
·
· Score: 0
Get a copy of Microsofts Shared source agreement, cross out Microsoft anywhere it appears in the license and replace with your companies name.:>
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
large companies yes. I (almost) refuse to work at big companies. Small companies where I am the only programmer or one of just a few this is not the case.
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.
hey, if I liked my boss it might be different. I have yet to experience the 'happy fun communal open source share everything for free' spirit discussed here on/. My experience in the business world has been much more cutthroat.
They try to fuck ya when possible, so you need some leverage to fuck them back. My ace card is that they pirate mad software, so the next time they fuck me, its a quick call to the SPA. Then nobody can figure out what I have been doing the last few years cause I have a very unique programming style. I do get the job done though.
So what I am doing might be wrong on a very theoretical level (I admit it, and I call it as I see it), but from my position, what is wrong with what I am doing on a practical level?
You didn't plan this ahead of time?
by
szquirrel
·
· Score: 1
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.
This is your business model, and yet you haven't figured out how you should license the source?
There's a "Step 3) PROFIT!!!" joke in here somewhere.
-- Never approach a vast undertaking with a half-vast plan.
Obfuscated source
by
Anonymous Coward
·
· Score: 0
If you separate their business logic from logic that has general use you could obfuscate the general use code, and give them access to their buisness logic. (this is in addition to the legal stuff previously mentioned on this thread).
Note: Gimpel Software (the PC-Lint folks) distribute the source code for their unix based lint in obfuscated C code which I believe is obfuscated by a former product of theirs CShroud.
Mod Parent Down! *AA Members. 'IANACIAAA' I know it's not the RIAA or MPAA, but it ends with two A's! If that's not reason to mod him down, I don't know what is!
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.
That is, their reason to refuse escrow as an option seems bogus to me
It's negotiating and bargaining. Both sides start by demanding more than they expect to get and then make concessions until they reach an agreement or realize that they won't reach one.
-- Karma. Moderation. Is my.sig good now?
RMS can help!!!
by
Anonymous Coward
·
· Score: 0
It basically comes down to contract law. You need to decide what you want, and discuss it with the client. If you are both agreeable you need to higher a lawyer to get with their lawyers and write it all up in legalease taking 30 or 40 more pages than the necessary 3. After that it's a matter of you being willing to enforce your contract via lawsuits....OR...
Just ask RMS....being a broad visioned individual with an open mind I'm sure he can help you find an amicable solution to selling code.;-)
BTW, guys this is a bit of flamebait. Let's see how many flames this gets even with a flamebait warning included in the text.
code should be free but legal advice should cost $
by
drugdealer
·
· Score: 1
The subject line seems to be the prevailing Slashdot attitude.
And if this actually happened, what then? More lawyers and fewer programmers?
Re:The point of that expression is
by
DarkZero
·
· Score: 2
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!
I beg to differ. . .
by
aoteoroa
·
· Score: 2, Informative
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.
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:I beg to differ. . .
by
Anonymous Coward
·
· Score: 0
What the poster suggested is Open Source.
It is not free software because the source code comes with copyright restrictions.
No, you're wrong. It's shared source. Not open source. Not Free software. Open source isn't always "Free software", but the source is available in some form to the public. This source is available to certain parties under certain terms. It's not open source.
Re:I beg to differ. . .
by
Anonymous Coward
·
· Score: 0
You don't have to distribute GPL-ed source to anyone who asks for it either. You only have to give it to those who have access to the program itself (but, you cannot prohibit someone to distribute it once they get it)
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.
Re:I'm going to burn some karma just to say
by
Anonymous Coward
·
· Score: 0
Just how the fuck does BSD limit your freedom asshat?
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
Re:Talk to a mobster
by
Anonymous Coward
·
· Score: 0
1. Make a couple of edits to the EULA for XP. 2. Print it out. 3. Have *Vinnie* hand deliver it.
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.
Re:An honest question, not a troll:
by
mijok
·
· Score: 1
They're trying to get a win-win situation, you know. The customer gets the software and the source cheaper but with restricted rights which ensures that the company doesn't need to cover all costs (and make a profit) from that customer solely.
Though the GPL won't fulfill the initial request, it may be an appropriate compromise. It will allow the other company to resell their product, but it will also allow the original company to incorporate the modifications for themselves. Though contrary to maintaining the right to resell, it may provide an unconsidered benefit.
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.
Doesn't this happen with perl, etc, all the time?
by
Anderlan
·
· Score: 1
It happened a lot before perl and others, but
perl forces you to release code. You can rewrite
perl in something else, but I see a lot of people
not bothering.
"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.
Another take--Profit Sharing
by
DangerTenor
·
· Score: 1
I've actually done this on one contract I'm working on. I've given the customer access to the source code, but we have a contract in place that basically says that they may modify or resell it, but I receive profits based upon sales of the product or its derivatives.
While this is hard to protect technically, it is easy to protect legally. If I find that they are selling the software and not cutting me in, I can take serious legal action.
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:Although he's not likely to find the definition
by
Xerithane
·
· Score: 1
Thank you, but a dictionary is merely a collection of words. He could find it assuming he looked in the right dictionary.
On a side note, I would suggest not using the ellipse so often. It detracts from your statements and makes reading awkward.
Sounds like the value you place on source code is completely distorted. The real value exists in the relationship the company that hired you to build the software. I would bet that the code is nothing that several other competitors could produce.
Most software companies fail to see that their clients aren't interested in entering the software business. Over the past 5 years I've made it a point to ensure that my customers get every bit of code that was used to build their product. In doing so, I've strengthened the one thing that is important: the relationship. I've never had a customer try to sale the code that I provided for them.
Just consider this fact: There are several software development sweat shops in developing nations that are capable of producing high quality code at 1/10th the cost. The only reason your client works with you is the relationship you've developed with them. I'd do what ever it takes to make that relationship stronger.
I don't understand the situation you are in. By using the past tense, you indicate you already bid on a contract, but you didn't know what you were bidding on. The opposite of what you appear to want is a work for hire. The other company asks you to produce a program, a sculpture, or a musical composition for which they will pay you money. Once they have paid, they own the work, and it is their's to do with as they please. This can include the copyright and reproduction rights. If they advertised that they wanted a company to produce a work for hire and you bid on it, it is a little late to ask how not to give them what they said they wanted and you agreed to give them.
On the other hand, if you want to retain the copyright and any reproduction and resale rights, then you should put it in the contract.
I am still mystified on how you bid on a contract without knowing these basics.
You beat me to the punch, but I think you're pretty much dead on.
I guess in their (the coders) case, the big issue would be... was a "work for hire" clause included in the RFB, or is the buyer trying to change the rules after the fact.
In the case of a musical composition, I agree with you to the extent that if someone commissions a specific work, then clearly it could be construed a "work for hire". I disagree when the clause "work for hire" is applied to anything the artist recorded while under contract to a particular record company, with said record company retaining copyright in perpetuity...copyright isn't supposed to be perpetual.
And now, if you will be so very kind as to allow me to mix metaphors....
This is only my two cents -- your mileage may vary.
it sounds like you do a lot of specialized work for a variety of firms, and they all have different issues that they want your opinion on. distributing your work causes a network effect that increases demand for your service because of the nature of the market.
however, if the market looked different, and if there was only one question to be answered, ever, and then the firms would never want your expertise again, there would be no good economic reason to distribute your answer freely. the most lucrative plan would be to do all the work and find out the answer, and then charge each firm to see your work. that's the model that firms like gartner dataquest use, because of the high fixed-cost of research.
in microeconomics terms, software development is a high fixed-cost, and low-to-nonexistent marginal cost industry. similar industries include pharmaceuticals and the recording industry. the producer spends a lot of capital getting a product ready for the market, and then recompensates itself by virtue of the gap between the low marginal cost and the high market price.
once this guy finishes developing the software, he wants to be able to sell it to other firms, at a market price significantly above the marginal cost. here's the problem: if he gives the source code to the client firm, then he has to worry if the client is going to leak the source code to a third-party or even compete with him when he tries to sell the finished good on the larger market.
here's my two ideas:
the open-source solution: charge the client firm a price equal to the fixed cost + the total expected payout from selling to the larger market. this will be a HUGE price, but then the source can be released in a genuinely open-source manner, and the creator still gets reimbursed, and the client firm gets to do whatever it wants.
the capitalist solution: allow them to view and edit the source code, but not distribute it outside the company. this has been suggested above. i don't like this though: it requires this guy to hire plenty of lawyers and be a code cop, and that's a hassle nobody wants.
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.
You can make an analogy to what I did with one client that needed me to figure a way to perfect his security interest in software:
The secured party (bank/your client) takes it from distributor (you), they register it with copyright/patent office (giving them the rights), but then they enter into an agreement with distributor (you) saying that they will exclusively license it to that distributor(you) while the distributor (you) is making payments (or finishing their part of the deal), and then they assign the patent/copyright back to the distributor(yep, you) once loan is paid off or the project is finished or you fulill whatever your role as a pseudo debtor is, in this case finishing the project. Of course, if you don't live up to your end you get screwed out of your software since they will be the ones registering it, and you'd have to be careful how you draft the licensing agreement to make sure you are the exclusive licensee.
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.
SINAL
by
Anonymous Coward
·
· Score: 0
Hi. I'm CmdrTaco. If you've been hurt in an accident, you need a personal injury lawyer. At slashdot.org, we'll work hard to make sure you get the full and fair compensation you deserve under the law.
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
Hmm... Slashdot now subscription based?
by
Anonymous Coward
·
· Score: 0
'Cause they couldn't POSSIBLY take my dignity...
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.
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:Not always
by
Anonymous Coward
·
· Score: 0
This is a fairly simple issue.... you guys are making it much more complicated than it really is.
Programmers all the time deliver the source code to their clients, yet retain all copyrights.
This is simple and straightforward copyright law. Software code is a creative work. When you create it you have also, by the act of fixing it into tangible form, established the copyright on it. Registration is not necessary... nor is the word "Copyright" or the (C) symbol. (However, there are some benefits to doing so).
If you create a work under direction of someone paying you to create it, it is generally going to be a "work for hire" and the copyright will belong to the employer. So first off, you need to denote in your contract that this is NOT A WORK FOR HIRE.
To make double sure, simply state in the contract that you retain all copyrights in the work. Period. Even if it is a Work for Hire, that clause will prevent you form automatically losing some rights.
Copyright is what protects you here.
Then, you proceed to the contract issue.
State what rights the client has. A nonexclusive license to use and modify for his own use under condition of paying whatever sums on whatever schedule.
To make this part double sure, then state what rights the client explicitly does NOT have - i.e. no right to release, publish, sublicense, disclose, create any derivitive work provided to others, etc.
Remember, if YOU draft the language of a contract, unless agreed otherwise all ambiguities will be construed strictly against you and in favor of the other guy (since you are writing the contract, you are in the superior position to eliminate any ambiguities, so you can't be allowed to take advantage of them.)
If I misunderstood the original post, and he wants some type of copy-protection to programatically place restrictions on their ability to do improper things, while at the same time delivering the source code, he is gonna be out of luck.
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?
-ted
Re:Like wedding photographers....
by
Anonymous Coward
·
· Score: 0
"For $5000 you'd think we own the photos right?"
Yep. And I'm sure your city is full of talented photographers who would have been happy to serve you. Many, for a tenth of what you paid! At least you used a photographer who uses film! Most wedding photographers are digital these days.
I honestly can't believe you spent $5000 on your entire wedding.
...because that's not capitalism.
by
haydukelives
·
· Score: 1
"pay me for work" has been tried, it's called socialism.
In capitalist economies, you get paid for producing something of value and selling it to someone with a need and the means to pay for it. If you have something that is worth $10 to me, I'll give you $10 for it; I don't care how much work it took you to make/code/steal it.
Conversely, you could go to work every day and work work work, but if you don't produce something valuable you'll never get paid. At least not for long. Unless you work for the government... but don't get me started.
Re:Although he's not likely to find the definition
by
Anonymous Coward
·
· Score: 0
That said, I too find all the "*" annoying. And if anyone can tell me what name is for "*", I'd appreciate it.
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.
how to make friends and influence people
by
endoboy
·
· Score: 1
if you tried to pull the obfuscation trick on a deal where we had negotiated source rights, I would feel entirely within my rights to:
a) withold any remaining payments due b) take my business elsewhere c) tell everybody I knew that you were a disreputable business person, and that they should take their business elsewhere
Re:Although he's not likely to find the definition
by
Anonymous Coward
·
· Score: 0
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.
That should be "its" not "it's".
Hope that helped to make your language ever more beautiful.
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.
...you're really RMS, aren't you? C'mon, you can tell us.
-- Downmodding is the refuge of the weak. Don't downmod, make a better argument!
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:Although he's not likely to find the definition
by
Xerithane
·
· Score: 1
Quote:
See MLA 2.7.3 - 2.7.5 for how to properly omit parts of quoted material with an ellipse ( . . ..).
There was not a proliferation of "*", however there was ". .." several times (4 if memory serves, I'm not going to look back) so my statement stands.
Make them show you the money
by
Anonymous Coward
·
· Score: 1, Informative
So, your options are using a Lawyer, using the Microsoft Source code sharing license, the GPL or..you also could try selling the source code for a big quantity of money. Make them pay you for the development of the software, for the months of paying to your employees and for the price of the software. (And a plus of a %20 just for benefits)
You'll forget any complications and also you'll get a lot of money.
Re:I bought source MANY times for vast amounts of
by
Anonymous Coward
·
· Score: 1, Informative
Oh no.. no one ever "borrows" ideas and turns around and makes a mint off them. Excuse me while I ask for a helio to pull me out of the mountain of bullshit that statement caused. I'm not sure what Fantasy Island you live on there in the Land of Makebelieve but someone needs to send a search and rescue team to drag you back in leg irons.
This is who you should REALLY ask!
by
AtomicX
·
· Score: 1
Click here to talk to the people that can really help you out here.
They produce code so obscure and complicated that not even they can figure it out (something which is very evident in much of their software)
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.
. . . the very source you cite, which is also my default source, actually does define Open Source. Go figure. That is pretty damn funny.
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.
Header yes, and spoken aloud your post would definitely yield the desired result. Definitely right about 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. Well, then you and Guido can go to hell;-)
Re:Ironically. . .
by
Anonymous Coward
·
· Score: 0
No, a hyphen won't do in place of the ellipsis. I think you meant to use an 'em dash'. ASCII doesn't have an em dash, of course, but you can fake it with the unsatisfactory '--' surrogate.
Same Situation
by
Anonymous Coward
·
· Score: 0
I've encounter this situation at several companies I've worked with/for. They had the same reasons... not fully recovering the costs of development, therefore, wanting to retain the rights to the code to be reused, repackaged, resold. In practice this has rarely happened as it has always seemed (to me) that the true value of a software solution is not in the code but in the approach and modeling of the problem-space. The code can always be re-written (there are, of course legal ramifications here as well). As some have pointed out, the follow up services are often quite lucrative once the client gets a taste of what you can provide for them (this is not to suggest, as some have, that this implies you should give the source away).
In smaller projects where the cost of legal expertise is not justified the general concept I've employed is a "non-exclusive, perpetual license to code execution" No modification are allowed without permission. Obviously, as was pointed out, one does not want to be responsible for someone else's coding errors Permission is always granted but warranties are voided.Roll that up with a non-compete, non-commercialization clause and hope for the best... or hire a lawyer (well, everyone else said it).
Introduce artificial "typo's" so that simply OCR-ing and compiling wouldn't work, but they can get an idea how the program is working. Print it out. Copyright the thing and put in a NDA form plus put it in the contract (like others have suggested).
-- In Soviet Russia, articles before post read *you*!
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.
Re:Although he's not likely to find the definition
by
Anonymous Coward
·
· Score: 0
...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).
Actually, the original article says specifically it is NOT open source here:
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.
Saying you are opening your source to a specific company in no way makes it Open Source, nor implies that you think it is. A lot of people replying to this don't seem to understand that and I can only assume it's because they didn't actually read the @#$%ing artcile.
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.
Re:Read the article!
by
Anonymous Coward
·
· Score: 0
FYI: OSI applied for a trademark on "Open Source" and was rejected.
"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.
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.
these arrangements do exist and can work
by
klorentzj
·
· Score: 1
I used to work for a medical database software company (4 years ago) that provided it's source code to it's customers, and encouraged them to work with it and customize/modify it themselves.
I don't know the details of their license agreement, but I know that all of the source code was viewable and could be modified on each customer's system. In fact, this is how we sometimes did customization for them (edit the source of a few routines on their installation) It kind of made a headache for the release team, though (:
The beauty of this arrangement was that sometimes they would get customers to send in improvements, which we would then roll into the next release. We would still have to review the changes, but you get some testing/debugging work done for free!
So, my point is that this type of arrangement can work out, and it can be mutually beneficial for both the software company and the customer.
Last I checked the company appears to still be doing very well.
My company recently went through a sales tax audit here in Texas. While that may not seem relevant to the original question, the problem of code ownership arose in regards to charging sales tax.
Bottom line, "ownership" in something you create remains with you unless you explicitly sign it over to another party. To retain no ownership you have to explicitly note that fact in a contract.
Conversely, you retain whatever ownership rights not mentioned in a contract. So: Write a contract that only grants certain rights to your customer and omit everything else.
My company operates on a different approach: Work For Hire, basically. We had the fun of proving to the auditors that we didn't own the code we wrote (and therefore didn't charge any sales tax).
Hope this info helps.
-- // Beyond Here Lie Dragons
Get a lawyer
by
Anonymous Coward
·
· Score: 0
Get a lawyer
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.
Re:use the law
by
Anonymous Coward
·
· Score: 0
You see, when you write code, you are automatically grated what is called a "copyright" to said code.
Except when it is a work for hire - ie, when a client hires you to write some software for them. In that case, the client owns the copyright.
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.
Stuck writing all the code
by
solprovider
·
· Score: 1
I had the opposite problem at my last few jobs.
My coworkers made me do all the design and most of the programming, while promising to test, write the documentation, and keep the client distracted so I could get the project finished. They felt that I should write all the code just because I knew more algorithms, designed better applications, and could code more in an hour than they could in days.
This is not a good thing. It meant that if there ever were any problems with the applications, I would be the only one who could maintain it. Most other "developers" could barely understand the code, even though it was fully commented, and usually written to be understandable (long variable names and extra lines if it helped.)
Luckily (at least everybody tells me it is luck) none of my applications ever seem to need maintenance. Occasionally they get expanded, but the hooks for the expansions are always visible to the new programmers. But I keep getting told that this is just luck and someday code of mine will require changes that I did not anticipate. I really wish this would happen soon so I could make some money from the maintenance. ===
On the other hand, I disagree with hiding your source. - I learned that my programming skills were good when others asked if they could use my functions. How do you know your code is good if no one else has seen it? - And my skills improve when others criticize. Even if we do not change the algorithm for this project, it may help me on the next one. (Never recode unless there are provable performance benefits.) The worst programmer you know may know one trick that you don't; and that trick may improve a program or save you hours of programming someday.
I hate waiting until I can share the source for my current project so I can listen to the oohs, aahs, and boos.
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
Anonymous Coward
·
· Score: 0
oh yeah, that'll fly like a fuckin' potato chip.
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.
IN SOVIET RUSSIA
by
Anonymous Coward
·
· Score: 0
Your code gives you access!
Troll tuesday in the hizzouse!
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?
Try not distributing makefiles, Installsheild...
by
Anonymous Coward
·
· Score: 0
If you're making your program for Windows, try not distributing Makefiles and scripts that will construct an installer. In most cases, the customer may only need to recompile specific.dlls, and thus only having raw source without context may be plenty.
Jive source availablity model
by
ivar
·
· Score: 1
Jive Software sells JSP based forum software. They provide 95% of the source, more than enough to make almost any tweaks you want, but keep a few components (the ones that are responsible for license verification) proprietary. If you're planning on reselling your product/code anyway, building such a system might be a worthwhile investment. Note that you should specify your terms in your licensing agreement and copy protection is really just a minor deterrant.
Guessing the truth the first time doesn't matter
by
yerricde
·
· Score: 1
Voting is a lousy way to arrive at the truth.
Yes, but voting is a half decent way of deciding what leads to follow first.
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.
Well, I for one hate to reinvent the wheel. In my previous incarnation I was a programmer who among other things did extensive customization to accounting software to meet the needs of my customers.
I used a product called Accountmate which is written in Visual FoxPro and offers a "source code license" should you want to modify the product. Check this link for their current license agreement:
http://www.accountmate.com/solutions/files/liscens e_agree.pdf
I haven't read it (not having dealt with coding for several years) but I think this might provide you a valuable point of reference to create your own terms.
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.
Re:I bought source MANY times for vast amounts of
by
Anonymous Coward
·
· Score: 0
You're also a fucking liar, but hey -- let's not split hairs here.
This kind of things is done all the time. It's no secret.
Basically terms regarding non-competition and whatnot (they can use your code however they want, but shoudl they sell it or give it away, they would be competing with you)
Really. Talk to a lawyer. No amount of slashdot advice will help you write a contract better than a lawyer.
If you want an example, look at the license agreement that comes with the CodeWright editor from Starbase, they provide full source for the editor as part of the package.
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.
-- autopr0n is like, down and stuff.
Re:And *your* should learn to read.
by
Anonymous Coward
·
· Score: 0
And *you* should learn to fucking type a simple subject, dumbass.
Wouldn't be nice if people who didn't know what they were talking about would keep their mouth shut?
ellipsis == '...'
Asterisk == '*'
-- autopr0n is like, down and stuff.
Non-Royality Bearing License
by
Anonymous Coward
·
· Score: 0
In your agreement give them a non-transferable world-wide non-royality bearing license to the code for internal use only.
You retain ownership and all the rights to the code. They get the code and can use and/or modify it for free for internal use.
The smart consultant would structure the deal so that it is easier for them to hire you for future modifications than hiring someone else or doing it internally.
One is that it makes the inner workings more obscure, and lessens the likelyhood of someone "stealing" pieces of your code for use in their own works.
Secondly, it makes support more difficult; is the version of the software someone is using YOUR version, or modified? Did they build it right? Is it making your stuff seem crappy when it's not?
When it comes to corporate contracts, source makes sense. When it comes to mass market things like Office, it does not (from Microsoft's point of view)
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.
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.
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.
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 . . .
Why not escrow
by
DorianGre
·
· Score: 0, Redundant
Escrow is easy, safe, and legal for all involved. I use it for many of my clients, updating their escrow account with a new CD every 6 months. Best of all, thy pay for it.
Typical verbiage from IP/work-for-hire contract
by
jrst
·
· Score: 1
From what you've said, it sounds like your customer is footing the bill for the development. That is typically called "work for hire", and they who hires owns the work.
However, it is not unusual to find agreements where the funder [them] retains a "prepetual, world-wide, right to use license" for the product/IP (which does not include the right to resell, redistribute, create derivative works, etc.); the hiree [you] retains all other rights to the IP.
There are many, many, many boilerplate agreements of that sort floating around. A master service agreement from virtually any large development or consulting outfit will likely contain verbiage you could lift verbatim.
That said, talk to an attorney; they shouldn't charge you much for crafting this type of verbiage, since it's very common.
Re:Although he's not likely to find the definition
by
Anonymous Coward
·
· Score: 0
you've got room to talk when you don't know the difference between it's and its!
it's terminology?
by
Anonymous Coward
·
· Score: 0
Am I the only one to notice the faulty use of an apostrophe? I can't imagine the buggy code the rest of you must write. "It's" is a contraction; the possessive "its" contains no apostrophe, per Strunk & White.
Also note that proper typographical form for an ellipsis is periods interspersed with spaces. Ellipses ending a sentence contain 4 periods, not 3. Look it up. . . .
Re:Although he's not likely to find the definition
by
Anonymous Coward
·
· Score: 0
An apostrophe "s" also indicates a possesive. The word "it" is a pronoun with unspecified sex - in this case refering back to the word "code."
... code's terminology and functions properly called and invoked...
Notice that this means that code posseses certain properties of terminology and functions. Think about it...
Protecting Your Code While Allowing Source Access?
by
Anonymous Coward
·
· Score: 0
I'm going to take an opposite approach here. If I buy your services and software, they are mine to use as I see fit just the same as if I bought a book, groceries, or another tool. In a sense I am paying for the knowledge and other items to improve my business (intellectual property) that you provide. While I may not be able to recover and rebind the text of the book, or your code for sale without permission from the publisher or author, I am certainly free to use my new found knowledge to engineer my own solutions to future problems just as I can use the wrench I bought at Sears to run a garage and fix things for fun or profit.
If you don't want me to share the code I bought from you with anyone else, or use it to compete against you with, then let's make a contract that says so as part of the original deal. (Insert lawyer here...) However, since I am betting the future of my business on your your "black box" and what it does, I feel I should have a right to look under the hood and see what I bought as well as understand how the black box does what it does. Otherwise, how do I really know I am getting what I pay for?
As in any business matter, please take time to make sure each player has a mutual understanding of what each other player in the deal expects for an outcome before you get in too far. That way, there are no nasty surprises later.
Regards, B.W.B.
Re:Although he's not likely to find the definition
by
Anonymous Coward
·
· Score: 1, Informative
An apostrophe "s" also indicates a possesive. The word "it" is a pronoun with unspecified sex - in this case refering back to the word "code."
Consult the standard. The reserved word "it" is formed into the possessive form by appending an "s", forming "its". The macro "it's" preprocesses to "it is". There are more rules here than for C++, to be sure.:)
Grammar Police to the rescue
by
Anonymous Coward
·
· Score: 0
language is form of code and believes code should be well formed, it's terminology and functions properly called and invoked
Grammar violation: it's Grammar Police recommendation: its
Mandatory fine: 5 slaps with a wet noodle
Re:Although he's not likely to find the definition
by
Anonymous Coward
·
· Score: 0
STFW, dickhead. it's or its "it's" only ever means "it is" or "it has". The proper posessive, assuming you didn't learn English in Elbonia, is "its".
You fucking Americans just don't learn anything in school these days, do you?
Squashed circles
by
Anonymous Coward
·
· Score: 0
I agree. We don't need any ellipses of the form ax^2 + by^2 = 0 on slashdot. Thank you.
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.
Simple solution
by
Anonymous Coward
·
· Score: 0
The only thing you need to do is specify that they are not allowed to sub-license the code. Basically, that means they can use it for whatever they want for themselves, but can not "sublicense", ie, sell or give away the code to anybody else. The customer then gets to make any code changes they'd like for themselves, but it doesn't affect your business.
Sounds very familiar
by
Anonymous Coward
·
· Score: 0
This is exactly the way IBM sold/leased mainframe OS's (like VM) for decades. Write a good contract that spells out exactly which rights and responsibilities each party has, and you should be in no more trouble than anyone else selling/licensing software.
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.
Re:Although he's not likely to find the definition
by
Anonymous Coward
·
· Score: 0
Haha, good one. No, we fucking Americans still learn the stuff. Apparently many of us have forgotten in the meantime. Please accept our humble apologies. Or something.
And possessive isn't spelled "posessive," get off your fucking high horse. Learn to spell before you go correcting others.
If the code is valuable, fine... do what others have said and hire a lawyer to help protect IT.
If you are valuable... that is it is your ability to produce items that is the TRUE value, then I'm afraid I'll have to bring up the good ole Free Software viewpoint.
Last time I checked, people hire me, not my code. If you want to protect your code, use the GPL. If you fancy lawyers... get a job at M$.
Not to be nitpicky, but...
by
eugene+ts+wong
·
· Score: 1
...I don't think that you are referring to the hypen. Perhaps you mean the dash: "--"; 2 lines without quotes? The hyphen is 1 line. Unless the rules have changed since '95, it should be as I stated. But then again, my memory is vague.
Perhaps a semicolon will give you just the right amount of pause that you are looking for?
I'm not trying to be a spelling Nazi. It's just that it's refreshing to see people discuss proper punctuation in a non-scholastic context.
I use Borland Delphi and Borland C++Builder and both come with source code. Not everything is included (compiler), but it is enough to build the essential libraries from the source code. Check their license. I'm not sure but I think that's the same with MS Visual C++.
use DRM (was Re:Palladium)
by
Anonymous Coward
·
· Score: 0
Even more: with a _working_ DRM System you can control, who looks at your code, and you can revoke that "license to view" any time.
If DRM works as announced. And if anybody can use it to _create protection_ for something worth to protect. By now, only those mp3/aac/divx... sellers seem to be able to do so, sometime in the future. btw: it would be nice, if I could revoke my email address from the spammers hotlists, my email address is definitly a DRM object;=)
many greetings Matthias
Not to mention..
by
Anonymous Coward
·
· Score: 0
'as it were' has been deprecated in the latest versions. Please use 'as it is' to maintain compatability with future releases.
i think http://www.gnu.org can advise
by
jago25_98
·
· Score: 1
I'm sure there are quiet a few resources available (often free)
where people will advise you on
Open Source buisness plans.
I thought it was gnu.org who advised people like RedHat and Trolltech on making a buisness from Open Source.
I must be thinking of someone else since i couldn't see company advisory info on site after a very brief look,
if you can remember who does this please post for this guy, thanks.
Why not just encypt the code for the seriel key?
by
Anonymous Coward
·
· Score: 0
lots of programs provide source code but the seriel license files are encrypted, they still have source to develop it but they cant create their own key.
make the program dependent on company names ie company A cant use company B's system cause it would print company b every where. ask for company name where u enter the seriel
then in this encrypted file have some sort of connect to the net and pass some info to you. if it registers multiple companies names then u know they are copying it:) and time to sue
almost a microsoft tactic
Hey, look what I found in google!
by
Anonymous Coward
·
· Score: 0
word origin money
I'm feeling lucky
http://moneyethics.com/Articles/origins.html
And wait, I also had a look in a good Latin dictionary:
munis: munis , e, adj. [cf. munus] , ready to be of service or to oblige, obliging
munus: C. A present, gift (syn.: donum, praemium)
Why do you correct people with wrong corrections? It's much better to check before you correct others (even if you believe you have a great memory for details).
Re:Hey, look what I found in google!
by
kfg
·
· Score: 1
Oddly enough, I did look it up first. In the context of performing *a service*, which was the issue at hand, for remuneration I was correct, although I could have formed my sentence better to make that clear. ( To be obliging is to gift one's services. Same verb, different declention)
As for the history of the meaning of money the page you refer to is indeed the consensus, at least as far as it goes. There are those that feel that other factors played a roll however, including the fact that words with similar sounds were already in use to denote exchange thus reinforcing the usage. Thus moneta is the true root of the word money, but munus influenced it to become so. This often happens with sound alikes, particularly in polyglot languages like English. Ass and Arse come to mind.
KFG
Re:Hey, look what I found in google!
by
Anonymous Coward
·
· Score: 0
Why not simply admit the mistake? I mean - nobody reads this (it's old and buried).
Oddly enough, I did look it up first. In the context of performing *a service*, which was the issue at hand, for remuneration I was correct, although I could have formed my sentence better to make that clear. ( To be obliging is to gift one's services. Same verb, different declention)
I'm sorry, but if munis is an adjective, and munus is a noun, and you're talking about a verb, then something isn't right.
You used the word "munis", and said it was *a* gift. This is simply not true. There's nothing more to it. "munis" is not a gift. Trying to say it wasn't a mistake because you meant "to gift", when "munis" is an adjective, is simply nonsense.
You can take the easy way, and say "oh, right, I wrote munis, but my finger slipped - u and i are close on the keyboard, and I meant munus". Or you can argue some more and make a fool of yourself. It's your choice, and I don't really mind.
As for "money" - no argument here, as nothing can be proved about the "true" origin of a word. Someone might have sneezed as (s)he was writing that word, and it came out differently.
And it's "declension", not "declention". And something "plays a role", and not "plays a roll". But that's small stuff compared to Latin (my favourite language).
Re:Although he's not likely to find the definition
by
Grimxn
·
· Score: 1
"foriegn" l
[fx: glass house being hit by stones]
Could be an American spelling, of course
[fx: checks dictionary]
No. It's not.
[fx: SLaP!]
Slashdot promotes racism
by
Anonymous Coward
·
· Score: 0
Come and put your racist jokes on Slashdot
- we won't delete them
- we'll moderate them up to 5.
Re:Slashdot promotes racism
by
julesh
·
· Score: 1
Huh?
Is it just me that doesn't see that making a joke about the mafia is racist?
I mean, give it a rest...
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.
Re:Although he's not likely to find the definition
by
PhilHibbs
·
· Score: 1
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".
I believe that "it's" in this context actually derives from "it has", indicating the posessive. The expanded form is archaic and does not make literal sense any more, but the apostrophe remains.
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.
-Rick
Technical Analysis of IP Contract Structure
by
Flemlord
·
· Score: 1
I'm not a lawyer but I own/run a software company. We have a few Fortune-500 clients and went through brutal contract negotiations with all of them. I've learned to love reading and negotiating contracts; there is an internal structure to them similar to software. There are legal equivalents for most programming concepts: variables, functions, OOP, etc. But I digress.;-)
Get a lawyer.
You shouldn't be negotiating with your intellectual property (or anything else really) without having proper counsel. When you hire a lawyer, make sure to ask them specific questions about source code deals they've done in the past. Most of the contract and ip lawyers out there haven't done source code negotiations--they don't teach something this specific in law school, they need experience. If they can't bore you to tears with war stories about the weaknesses of Chapter 11 escrow triggers, keep looking.
But a lawyer can't negotiate the major deal points.
You have to negotiate the business side of the contract. With these it's all about leverage. For the major ip deal points, there are two ends of the spectrum (ie things that are good for you at one end and things that are good for the client at the other). Depending on who had the leverage, we used to move up and down this list in each negotiation. ------------ BEST FOR YOU (LICENSOR)
1. JUST SAY NO: No source code rights whatsoever.
2. ESCROW: Source code held in escrow by third party and released only when certain conditions are met. Common conditions (in order of licensor preference) are:
a. Licensor ceases operations (Chapter 6?);
b. All above, plus if licensor goes bankrupt (Chapter 11);
c. All above, plus if licensor violates the Service Level Agreement section of the contract (% uptime, accuracy of software, etc. items will be custom for your particular software/service/industry);
d. All above, plus if licensor breaches Reps and Warranties section of contract;
e. All above, plus any material contract breach.
3. CONDITIONAL RIGHTS: Once they have the source code, whether after triggering one of the escrow conditions or immediately upon contract signing (if you couldn't get the escrow), there are several ways you can restrict their use.
a. Only Licensor's employees can only use source code and derivatives ie they cannot resell to third parties;
b. Licensor must continue paying you your licensing fees on use of the source code and all derivatives even if you breach the contract;
c. Same as a. but if you breach the contract they only have to pay you a percentage of the fee;
d. Licensor can have the source code but any modifications must be done by you at your normal consulting rates;
e. Licensor owns the source code and all derivatives;
f. No limitation of liability for breaching (a) or the confidentiality clauses in regards to your code (no sane company would agree to no limit but the number should be extremely high--an order of magnitude beyond what you're actually charging them for the software).
4. BEND OVER: Free and clear rights to source code with no restrictions.
BEST FOR CLIENT (LICENSEE) ---------------
Hmm. I hadn't meant to write an essay on this. Anyway, I hope this helps. You said escrow wasn't an option but fight for it anyway--I never signed a contract with ip rights that didn't have escrow protection.
you don't. The best thing you can do is spell out the distribution conditions in the code and hope that the majority of developers will be ethical and civilized enough to respect your terms.
If the price you charge for is not too large (otherwise you are gouging your customers) then I believe you can safely distribute it over the Internet. I trust the small percentage of those who will use your code illegally could not have afforded it anyway.
The right price combined with trust does more than the tightest protections ever conceived.
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"
Re:Although he's not likely to find the definition
by
Anonymous Coward
·
· Score: 0
The "it is" expansion is nice, it gives the sentence a conclusion to ramble toward.
This is a common situation
by
Kringle
·
· Score: 1
I've been part of deals like this several times. It is extremely common for small dev shops to provide source to large customers who want to retain the right to continue to use and modify the code and who have no particular confidence in the longevity of your business.
The issue isn't really "open source," it's the terms of the software license for your product. Your contract should make it clear that your company owns the code, but that in consideration of the money in the development contract, you're granting a limited license for use and modification of the code to your customer.
An alternate strategy that may work for other contract situations where your customer wants the reassurance of owning code and where you have strong concerns about revealing source code is a software escrow agreement. For a relatively small fee (usually the customer's responsibility), your source code is held by a bonded intermediary suce as Datasafe, Inc. . It's your responsibility to update the code for each new release. Contractually, you guarantee your customer that if you ever cease operations, they can pull the source code out of escrow, mitigating their risk in contracting with you.
The next thing you should do, though, is get the right lawyer to assist you in preparing a strong contract that protects your company from adverse developments. Contract preparation and review services are generally way less expensive than the risk you undertake when you don't use them. If up-front cash flow is a problem, explain the situation and see if you can pay out of your first milestone check... some lawyers will give a break in order to cultivate a relationship with a promising young software development company.
Get the rights to any changes they make
by
rwillmer
·
· Score: 1
Assuming you put a clause in the contract that says "you can have source code and the rights to do [X,Y,Z] with it but we still own it", you might also consider having a clause that says "any changes you make to this code must be fed back to us and we have the right to include them in a future release of the code".
This means that if you do have a continuing long relationship with them, that
you can get bug-fixes and extensions that their coders for free; and
that you won't have the maintenance nightmare 5 years down the road of many many versions of the same code.
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:-)
The trick to doing this is that you don't sell them the software, you sell them a non-exlusive LICENSE to use the software. All custom jobs should have a contract signed in advance detailing exactly what you will do, what they will do, who will pay how much, and what happens when someone doesn't keep up their end of the bargain.
You want to stipulate prominiently in the contract that "this is not a work-for-hire" situation, and that you retain all rights to the code.
By default, anything you do is considered work-for-hire, meaning that the person signing the check owns the rights to it when you're done, unless you specify otherwise. IIRC, this is a basic aspect of copyright law, which governs the ownership of creative works.
You grant the customer a limited right to use the code within their company as long as they pay their annual maintenance agreements on time. They may not use it outside of their internal operations, market it to outside sources, or disclose it's internal workings. Specify that it is a trade-secret of your company in your contract and it may give it some added weight, especially if you plan on basing your future business on it.
Write it all up, then take it to an attorney to review and rewrite. By putting a good bit of work into yourself, the attorney will have a better sense of what you are trying to do, and should be able to modify it to fit the legal standards at a much lower price than if you walk in cold and say "I want you to write a contract for me".
- Brian
--There are only 10 kinds of people in the world - those who understand binary and those who don't.
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.
Another option
by
Anonymous Coward
·
· Score: 0
In a previous life I worked in a company that was also a small startup and they had a rather novel approach to this problem. They had a license agreement that stated that the source code was developed for the company and was their property for internal use only (I forget how they made that stick). Then they also said that the project included tools/uitilities and libraries that were common and they would pay a license fee with a non-transferable license to use these libraries. The libraries included certain GUI widgets, graphing routines, and common modules that the application was built upon. No source code was provided for the libraries and the libraries generated startup messages that could not be removed showing the copyright owner. This worked well for both parties.
The client eventually did make modifications to the code themselves, but generally called on our firm. The firm went belly up due to some bad financial doings a few years later and the company could still support the project, and eventually (I understand at a high expense) replaced the proprietary libraries.
This does work if the libraries you keep private are core to the project and yet do not hinder the kind of expected modifications that the customer may choose to do in the future. Think of this in terms of "buying" a widget or component library from a small tool vendor.
Just an idea, but everyone was happy with the arrangement. The company paid for the libraries and annual maintenance regardless of whether we performed the application up-keep. We restricted license to others by tying the application to the libaries, and still gave the customer freedom to perform modifications/maintenance without us. The trick is to come up with truly common routines, that lowers the consulting firms on-going cost, while being intertwined with the application being developed, and being generic enough not to need modification to perform common and expected maintenance to the application.
Hope this is helpful
Re:This issue is hardly as black and white as that
by
stanmann
·
· Score: 1
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.
So, the architect has no right to design another similar house for someone else??
And you recieved all the original blueprints?
-- Food not Bombs is a nice platitude but it breaks down when you notice that the Bombees are usually well fed
Re:I bought source MANY times for vast amounts of
by
Anonymous Coward
·
· Score: 0
The only thing amazing you did was to spin a bullshit story out of whole cloth. You're pretty impressed with yourself, aren't you? You're also very disturbed.
As the long line of people pointing that out ( as I predicted) attests too.
I've also been known to mistype all sorts of other things in my C code. Just because you miss a curely brace doesn't mean you don't know it's not supposed to be there and even with full time professional editors and proof readers like mistakes make it into every book.
By the way, I did look up ellipsis. Mine contain the proper spaces and if you refer to your Strunk and White you'll find that three is the proper number.
Also, as in an above post, the ellipsis is used to replace letters not actually printed, such as "F***". It is typographically incorrect to include spaces in such use.
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
Sorry.. but you are missing the point.
by
mindstrm
·
· Score: 1
The source is NOT the work; it is a stage of the work. If I'm offering you a binary, that binary either has value to your or it doesn't. In most cases, it's not copyright that protects my binary, it's a license agreement. Just as an NDA can force you not to reveal internal facts in a company (even though they are not covered by copyright), so could software be protected even if copyright did not apply.
Trying to demand source on the grounds that copyright is being wronged without it is totally absurd.
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.
Nolo Press books
by
Anonymous Coward
·
· Score: 0
Nolo Press has the best books on this subject in my opinion - covering copyright, trademark, and even one specifically on software issues such as this - all written in plain english and easy to understand - they provide sample contracts in teh books and we have modified these over the years and never had a problem (yet):)
rights? intellectual property?
by
Anonymous Coward
·
· Score: 0
dude, this is slashdot. i can't believe you actually used the words rights and intellectual property in the same sentence...don't you ever read this website?
You just need to use the FPL (First Post License) which states that only the first person to see the code gets to claim it.
Just do what you do when you want to eat and have the cake.
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!
Get a lawyer and have him write the license. You know what rights you want to allow, so give it to a lawyer to translate into legalese. /. is not the place to get help writing an air-tight license. A lawyer is.
a good lawyer should be able to put all of your requirements into legal-speak ... why ask slashdot, when you should already know this answer?
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
Hire. A. Lawyer.
You're going to need to spell out the terms of what you and they can and can not do in a very well-written contract. That is the only way you're going to be able to have any sort of protection from them doing anything nasty with your code.
If you've already signed a contract, then whatever is in the contract is what's happening, regardless of what you want to have happen.
When it comes to selling source code, that's the only method that works.
Is that you Bill Gates? HAven't you been asking this a lot lately?
IANAL, but I think all you need is a lawyer to prepare a good non-disclosure agreement for you. If they release the source, you can sue them for damages.
Burn the land and boil the sea, you can't take the sky from me
The way to enforce the escrow is through your lawyer.
If you can't trust the clients at all, perhaps you need better clients.
... 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.
and write everything in one nice big line :-) :-)
Of cource the copy that you keep should be well Commented and nicely formated. Give them something that works but is too ugly to be rused be them.
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.
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.
You just need to write an obfuscator then, something that takes the inhouse code and changes variable names and adds bogus modules and subroutines.
Pretty smart!
Well, for one thing, the model of selling a product doesn't work in the software development industry. Programmers are morally obligated to give the code to their users and allow their users to freely modify and redistribute the code.
The real money in software is in the services industry. 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. Just look at Redhat: they are actually making a profit through selling improvements to something that is buggy and hard to use otherwise.
Believe me, businesses pay big bucks for someone else to deal with their problems. Just look at how much your average consultant makes.
Software piracy is victimless theft.
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.
1) You need a good attorney to draft a user license agreement
2) You need a psychiatrist for posting this here, the bastion of open software, and asking a bunch of geeks legal questions
Go get a fucking lawyer. You do *NOT* want slashbabies informing your licensing decisions.
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").
Have you thought about using an escrow agency to safeguard the code and to release it to the customer only in case of your company's demise or inability to fulfill support duties in a reasonable way? This kind of arrangement protects both sides, and my customers are usually satisfied with it.
Parent poster must imagine that the rest of slashdot must be like himself.
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...
Hire a lawyer.
Really. Hire someone who knows what they are doing to put your wishes into "legalese" and have the company that you are working for sign the contract.
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.
You don't piss into the wind, nor do you let the client keep the source and expect them not to use it against you or create a competing product with it someday. They've got you by the balls: if they did violate your "Agreement", you don't have the resources to go after them in court. Legal agreements are only enforceable after spending tens of thousands in legal fees and three judges agreeing with you.
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 department title for this story says "open source does not necessarily mean free". Obviously the poster did not mean "free", as his intentions are proprietary as hell, but let's try at least to stick to the Open Source definition and not call it open source either.
What you are trying to do, mister, is to give away the source but with crippled access to it. While you're at it, why don't you license it using Microsoft's Shared Source license?
The filesystem is the package manager
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.
Go read the license agreement for Microsoft's Shared Source. I'm guessing they've got the legalities of something like this worked out fairly well. :)
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 you, Linus?
Use the xopl
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 bull shit 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.
What we have done is to make verified tapes of the code base and a report listing required packages OS hardware etc. needed to actually build the code.
We included on the tapes only our source code.
Any third party apps (compilers, editors, libraries, widgets) would neeed to be aquired seperately on their dime.
The escrowed code is then only accessible in the event that we are unable to live up to our contract or if our company dissolved. These details are very specific and explicit in the contract.
They cannot look at the code for any other reason. We are protected from them and they are protected if we disappear or try to shaft them.
comment directly in my journal
"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
Have you thought about web services? That might help. You keep the code on your servers and they just use it. If they stop paying you, you cut them off and their business goes away too.
I would say the reason they want the source is as a security, in case your company disappears or for some other reasons is unable to give support for the product in the future.
The best way to work this out is to find some way in the contract to deposit the source (in a bank vault or whatever), which they can then get their hands on if the unthinkable should happen.
Of course, like everybody else here IANAL, so you should get one to figure out the details. I'm sure they would be happy to oblige with this.
~~~
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.
That ain't open source. It's not free as in beer; it's not free as in speech. Having said that, you write a contract, and you more or less trust the customer to keep to the contract. You are in the same position as the sellers of CDs and movies. You want to sell an easily-copied, easily modified product, and you want to enjoin your customer from doing these easy things without your permission. There is no technical way to assure what you want. In the end you have to trust your customer.
You can try, and I recommend that you put in things like a heartbeat, that pings you daily and lets you know when the software is running (tell your customer what it is and what it's doing). You might even include an md5 hash signature of the code in the heartbeat. But all this is easily faked if they want to fake it. You can put in guilt screens that flash if the license isn't up to date. But in the end you have to trust your customer. Welcome to commerce in the 21st century!
Mmax Hheadphones
Perhaps have a warranty stipulation that the code is only warrantied in an unmodified state.
Kinda like the labels that say "Warranty Void if Seal is Broken".
Keeping a copy of each version of the source code archived at your site would make it easy to verify any changes.
The trick would be to keep them from legally reusing it. I'd talk to a lawyer (sorry, but their scummy knowledge is in how to protect you from other scummy lawyers that could say you gave away your source so it could be changed).
I'd look perhaps to agreements Microsoft makes you sign if you want to touch their source code if you can't afford a lawyer of your own (as an example). They have, as we all know a legal dream team (sucking down millions of dollars, I'm sure if not close to billions) conjuring up new ways daily to prevent you from being able to do anything with their source should you become part of their club and gain access to it.
Also, make sure they sign something limiting what their employees can take home. While the company enters into a legal agreement with you and has no intention of stealing your code, what is there to stop a rogue employee?
Perhaps you can make your source code an "e-book". While it's not exactly secure, it may be an interesting way to allow the company to access it (by checking it out, as in from a library) and tracking who gets access to it. Though not entirely secure, it is sufficiently a pain in the butt to discourage the majority of those who may want to steal your source. Plus, by breaking (if such a thing happens) the "security" of the e-book, I'm sure you can sick the U.S. on the with the DMCA.
That'll be two fronts to legally challenge anyone who steals your source.
Just a suggestion.
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?
If there's serious $ involved you probably do want a lawyer, but in the interest of providing a little constructive input, you might want to check out a book called "Sofware Development (A Legal Guide)", Fishman, Nolo Press...
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.
You are the one who should grab a dictionary. Open source, and GPL, are not one in the same. I guess you could say, all GPL code is open source, but not all oss is GPL. There many other licensing possibilities which allow certain sets of people to see the code. Allowing the client to have access to code is, on some level, open source. MS doesn't send you the code when you buy their OS do they? Nor do many other software firms.
I would say that open source software is fantastic, but the GPL enthusiasts can really piss people off. It is a fantastic license, but not the end all, be all of OSS.
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 about " They can only have the consanants. With hold the vowels. If worst comes to worst they can write a script to try every possible combination of consanants until it compiles and runs properly."
Where the question always gives a new definition to "Open Source" and the answer is always "Hire a Laywer"
"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
My company is looking to hire a dumb-ass egomaniac who is unwilling to use 3rd-party software. We need to take a very long time in getting our software to market and you sound like the guy to do it. Please send me your resume as soon as possible.
Thanks!
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
You should get a Lawyer blah blah blah like everyone else says. BUT:
I'm for code reuse and what not, and the competiton with you clause seems fine as well. BUT, I wouldn't hire you at those terms unless you were much cheaper then the competion. I mean much closer to the cost level of off the shelf software packages...as you are giving them the source and an what is an off the shelf license. Many companys are fine with this, but many companies will not do this anymore. They want all the rights to the code as if you were they're employee, from my experince, except allmost all will give you the competion against you is against the rules and give you the right to use the code again.
Lastly and possibly most importantly you may want to include that charges for maintaining code not changed by you be diffrenty, ie cost significantly more, if it is commented poorly.
I would personally not work with you under your agreement and i do businees as an outide systems developer and get code devloped by outsuide developers.
Get a Lawyer talk to their Lawyers llike everyoneelse says. Beware of bad programers.
Wow, 2 delusional egomaniacs in the same thread? We've been truly blessed today...
My policy right or wrong is...
1.) they buy the compiled code (cheapest)
2.) they buy the source code + compiled code (more expensive)
I've also worked out with a few clients that they can have the compiled code, the source code (my clients rarely bother with doing anything to the source code) and we have a little agreement that they can resell the source for us. This has worked out pretty well.
It is important that you decide whether you are producing a product that your customer buys, or are providing a service that your customer uses, i.e. are you selling them a widget or contracting to build them a house? In the former case, you retain the rights to the "trade secrets" and proprietary aspects of your product. In the latter case (assuming you are billing them time and materials), you are building something for them and the results of your work is their product. You can put any language you want in a contract. Just be aware that they have access to lawyers, too, and you can both lose time, opportunity, and money by being unrealistic. If they have no expertise and capabilities in software and are likely never going to be a competitor of yours, you are probably being overly defensive. On the other hand, if they are paying you for your TIME, then they can argue that you are building THEIR code.
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,
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.
And a clue.
... and so on.
From http://www.opensource.org/docs/definition.php
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.
Rationale: By constraining the license to require free redistribution, we eliminate the temptation to throw away many long-term gains in order to make a few short-term sales dollars. If we didn't do this, there would be lots of pressure for cooperators to defect.
2. Source Code
The program must include source code, and must allow distribution in source code as well as compiled form. Where some form of a product is not distributed with source code, there must be a well-publicized means of obtaining the source code for no more than a reasonable reproduction cost-preferably, downloading via the Internet without charge. The source code must be the preferred form in which a programmer would modify the program. Deliberately obfuscated source code is not allowed. Intermediate forms such as the output of a preprocessor or translator are not allowed.
Rationale: We require access to un-obfuscated source code because you can't evolve programs without modifying them. Since our purpose is to make evolution easy, we require that modification be made easy.
And nowhere did he mention GPL.
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!
See what Microsoft has on its academic licensing program where by it shares code with some of its partners...
:)
Although not sure if you can 'copy' the licence
How can you call them delusional? These children will be the programmers of tomorrow as they leverage their mad html skillz into the web portals that we will use to view our social security benefits.
Why do all the "Ask Slashdot" questions tend to be about things like legal advice or someone's homework, which we tend to know nothing about or are totally disinterested in (respectively)?
I would rather see some geek questions that we'd have a shot at answering conclusively.
HBI's Law: Frequency of calling others Nazis is directly correlated with the likelihood of the accuser being Communist.
Keeping it in some sort of off-site (for both) lockbox (a bank?). Something that allows you to both get to it, but at the same time, logs any access to it so you can make sure people don't just go get it.
This is assuming that they want the code in case of a disaster where the code is otherwise lost. If they just want it so they don't have to pay you for upgrades (and have their in-house people do half-assed upgrades to it) they will not want this option, so you'll know right off the bat that they are trying to purchase a one-time license to use the code any time they want.
Add a few zero's to the price tag if they want a one time purchase of a license to the code because you might as well get paid up front since you'll never, otherwise, see any money from updates / tech. support.
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?"
This is a good answer to most ask slashdot questions.
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.
> 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
To protect everyone involved, you should to add a digital watermark to the source code so that noone can modify the source code without you knowing it, and you can track the code to the source. For example, a series of comments like:
# COW# BOY
# NEAL
The above would be completely unnoticable to the VB coder working on the project. :-)
Simple copyright protects your code - your company is not an employee or anything, so unless you agree to a contract that gives over total ownership of the code, you remain in possession of that code.
The other party may use it, but that is all. It's not their property - they're not allowed to sell or redistribute it (not completely sure about this last part).
Of course, this is not something that is very well known. I personally work for a small company designing websites, and so the client of course gets access all the 'source-code' (the html is trivial, talking about the server-side scripting here), and we've had one or two cases where we had to tell such a client that then sharing this with a sister-company was not allowed - if they wanted to use it as well (clearly distinct website, company a different legal entity, running on a different server), they'd have to approach us and we'd 'license' it to them. Since then we've added some clauses to the standard contract to make this more obvious, but really, there is no need to - Basic copyright laws specify that (unless you work as an employee for a company) your work remains your property and only you are allowed to distribute it.
One caveat here - I don't know the exact laws in the U.S. on this subject - I think their similar, but you might want to check up on it.
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.
reNumeration means to reNUMBER. reMuneration means payment. While we're on the topic, I hate authentiFIcation - it's authentication! Now I feel better.
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...
You cannot collect punitive damages for breach of contract.
You need to hire a lawyer.
Simple. Give them the source, but in a non-text format. ie. Convert all your text to bitmaps and give that to them. If they really want to change it they will have to OCR all of it.
If you read over the latest MS EULA you will find out that you don't own it to begin with. Moreover, all your base are belong on MS.
That's the most hits you've had all day.
Great Trolling!!
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.
But come on, what you are asking really has nothing to do with Open Source. It is a standard business relationship, thats it, nothing more.
/. is turning into the Geek Legal Aid Commission, can't afford a contracts lawyer then come to /. well known for its legal expertise.
In reality I think you were lucky not to have the company in question demand ownership of the code in some form.
Ah well looks like
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.
This is a good place for the GPL. That way you can still sell it to other companies (if you customize or install it for them) and the original company doesn't have to pay over and over for the same thing just patched a little and re-compiled. If they need that software to do business they should hire you to write it without letting you extort money from them later. If you bid too little to do the job in hopes you could rip them off later that's your fault.
Would you buy a car if the dealership forced you to come back to them for repairs no matter how much they charged? It's a raw deal open to exploitation. Hopefully they don't want to do this all over in a few years when you get greedy and they are forced to eather pay up or yet again pay someone to develop a solution to the same problem from scratch.
This is a great example of why free licenses are good for software customers and proprietary licenses are bad.
set softtabstop=4 shiftwidth=4 expandtab nocp worlddomination
It would appear to me that's the exact situation they're trying to avoid. By having your app hosted elsewhere, your success is tied to theirs. If you host an XML Web Service and you go out of business, your clients are up shit creek with only a XML schema for a paddle. And you aren't paddling very far with that.
Look at component developers, especially the larger ones like DevExpres. From using their stuff and purchasing the source code, I know that they have restrictions on what I can do with the Source Code provided. Modify their contract to suite yours, then you don't need a damn lawyer.
Also, be prepared to loose one programmer to the company, especially if they are happy with the product. If you are billing per hour, they will offer a job for less then they are paying. Be prepared, the programmer most seen as the asset will be the target, so keep them hidden and manage, or expose them and use as a spy.
I prefer to use contracts that I have to agree to as the bases of contracts I pass onto the customer, especially as I am web hosting reseller, the contract that binds me, binds my clients (with some additions).
Tournament Management Online &
First of all its really fishy that a customer would want to ask you for a specific job then say that they will modify it to their needs.. thats dumb, the reason they hire you is to handle all the coding requirements, they tell you what they want, you code. but if thats the way they are,there are coding techniques you could use to throw even experienced programmers off, but still be good coding practice, if you document enough (internal documentation) then it won't be hard for you to maintain but will be a pain in the ass and probably twice as expensive for that company to maintain.
definatly make it clear to them that if they resell or reuse your code without your consent you will sue them for all they are worth and will win because you have contracts (put it in legal terms though)
Get a copy of Microsofts Shared source agreement, cross out Microsoft anywhere it appears in the license and replace with your companies name. :>
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.
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.
This is your business model, and yet you haven't figured out how you should license the source?
There's a "Step 3) PROFIT!!!" joke in here somewhere.
Never approach a vast undertaking with a half-vast plan.
If you separate their business logic from logic that has general use you could obfuscate the general use code, and give them access to their buisness logic. (this is in addition to the legal stuff previously mentioned on this thread).
Note: Gimpel Software (the PC-Lint folks) distribute the source code for their unix based lint in obfuscated C code which I believe is obfuscated by a former product of theirs CShroud.
In Soviet Russia...
Free software owns YOU!
Mod Parent Down! *AA Members.
'IANACIAAA'
I know it's not the RIAA or MPAA, but it ends with two A's! If that's not reason to mod him down, I don't know what is!
Yeah, Perl developers.
-N
I've nothing to say here...
Take a look at joelonsoftware.com, his company sells some software with the source code and he doesn't agonize about it.
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.
It basically comes down to contract law. You need to decide what you want, and discuss it with the client. If you are both agreeable you need to higher a lawyer to get with their lawyers and write it all up in legalease taking 30 or 40 more pages than the necessary 3. After that it's a matter of you being willing to enforce your contract via lawsuits. ...OR...
;-)
Just ask RMS....being a broad visioned individual with an open mind I'm sure he can help you find an amicable solution to selling code.
BTW, guys this is a bit of flamebait. Let's see how many flames this gets even with a flamebait warning included in the text.
The subject line seems to be the prevailing Slashdot attitude. And if this actually happened, what then? More lawyers and fewer programmers?
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.
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
1. Make a couple of edits to the EULA for XP.
2. Print it out.
3. Have *Vinnie* hand deliver it.
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.
It happened a lot before perl and others, but perl forces you to release code. You can rewrite perl in something else, but I see a lot of people not bothering.
KLAATU, BORADA, NIh*ahem*
"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.
I've actually done this on one contract I'm working on. I've given the customer access to the source code, but we have a contract in place that basically says that they may modify or resell it, but I receive profits based upon sales of the product or its derivatives.
While this is hard to protect technically, it is easy to protect legally. If I find that they are selling the software and not cutting me in, I can take serious legal action.
Check out our infosecurity industry blog: http://securitymusings.com/
get one.
Donate background CPU time to fight cancer.
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.
Thank you, but a dictionary is merely a collection of words. He could find it assuming he looked in the right dictionary.
On a side note, I would suggest not using the ellipse so often. It detracts from your statements and makes reading awkward.
Dacels Jewelers can't be trusted.
Sounds like the value you place on source code is completely distorted. The real value exists in the relationship the company that hired you to build the software. I would bet that the code is nothing that several other competitors could produce.
Most software companies fail to see that their clients aren't interested in entering the software business. Over the past 5 years I've made it a point to ensure that my customers get every bit of code that was used to build their product. In doing so, I've strengthened the one thing that is important: the relationship. I've never had a customer try to sale the code that I provided for them.
Just consider this fact: There are several software development sweat shops in developing nations that are capable of producing high quality code at 1/10th the cost. The only reason your client works with you is the relationship you've developed with them. I'd do what ever it takes to make that relationship stronger.
I don't understand the situation you are in. By using the past tense, you indicate you already bid on a contract, but you didn't know what you were bidding on. The opposite of what you appear to want is a work for hire. The other company asks you to produce a program, a sculpture, or a musical composition for which they will pay you money. Once they have paid, they own the work, and it is their's to do with as they please. This can include the copyright and reproduction rights. If they advertised that they wanted a company to produce a work for hire and you bid on it, it is a little late to ask how not to give them what they said they wanted and you agreed to give them.
On the other hand, if you want to retain the copyright and any reproduction and resale rights, then you should put it in the contract.
I am still mystified on how you bid on a contract without knowing these basics.
it sounds like you do a lot of specialized work for a variety of firms, and they all have different issues that they want your opinion on. distributing your work causes a network effect that increases demand for your service because of the nature of the market.
however, if the market looked different, and if there was only one question to be answered, ever, and then the firms would never want your expertise again, there would be no good economic reason to distribute your answer freely. the most lucrative plan would be to do all the work and find out the answer, and then charge each firm to see your work. that's the model that firms like gartner dataquest use, because of the high fixed-cost of research.
in microeconomics terms, software development is a high fixed-cost, and low-to-nonexistent marginal cost industry. similar industries include pharmaceuticals and the recording industry. the producer spends a lot of capital getting a product ready for the market, and then recompensates itself by virtue of the gap between the low marginal cost and the high market price.
once this guy finishes developing the software, he wants to be able to sell it to other firms, at a market price significantly above the marginal cost. here's the problem: if he gives the source code to the client firm, then he has to worry if the client is going to leak the source code to a third-party or even compete with him when he tries to sell the finished good on the larger market.
here's my two ideas:
--
Long-term effects of Bush deficits
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
You can make an analogy to what I did with one client that needed me to figure a way to perfect his security interest in software: The secured party (bank/your client) takes it from distributor (you), they register it with copyright/patent office (giving them the rights), but then they enter into an agreement with distributor (you) saying that they will exclusively license it to that distributor(you) while the distributor (you) is making payments (or finishing their part of the deal), and then they assign the patent/copyright back to the distributor(yep, you) once loan is paid off or the project is finished or you fulill whatever your role as a pseudo debtor is, in this case finishing the project. Of course, if you don't live up to your end you get screwed out of your software since they will be the ones registering it, and you'd have to be careful how you draft the licensing agreement to make sure you are the exclusive licensee.
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.
Hi. I'm CmdrTaco. If you've been hurt in an accident, you need a personal injury lawyer. At slashdot.org, we'll work hard to make sure you get the full and fair compensation you deserve under the law.
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
'Cause they couldn't POSSIBLY take my dignity...
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").
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.
This is a fairly simple issue.... you guys are making it much more complicated than it really is.
Programmers all the time deliver the source code to their clients, yet retain all copyrights.
This is simple and straightforward copyright law. Software code is a creative work. When you create it you have also, by the act of fixing it into tangible form, established the copyright on it. Registration is not necessary... nor is the word "Copyright" or the (C) symbol. (However, there are some benefits to doing so).
If you create a work under direction of someone paying you to create it, it is generally going to be a "work for hire" and the copyright will belong to the employer. So first off, you need to denote in your contract that this is NOT A WORK FOR HIRE.
To make double sure, simply state in the contract that you retain all copyrights in the work. Period. Even if it is a Work for Hire, that clause will prevent you form automatically losing some rights.
Copyright is what protects you here.
Then, you proceed to the contract issue.
State what rights the client has. A nonexclusive license to use and modify for his own use under condition of paying whatever sums on whatever schedule.
To make this part double sure, then state what rights the client explicitly does NOT have - i.e. no right to release, publish, sublicense, disclose, create any derivitive work provided to others, etc.
Remember, if YOU draft the language of a contract, unless agreed otherwise all ambiguities will be construed strictly against you and in favor of the other guy (since you are writing the contract, you are in the superior position to eliminate any ambiguities, so you can't be allowed to take advantage of them.)
If I misunderstood the original post, and he wants some type of copy-protection to programatically place restrictions on their ability to do improper things, while at the same time delivering the source code, he is gonna be out of luck.
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
"pay me for work" has been tried, it's called socialism. In capitalist economies, you get paid for producing something of value and selling it to someone with a need and the means to pay for it. If you have something that is worth $10 to me, I'll give you $10 for it; I don't care how much work it took you to make/code/steal it. Conversely, you could go to work every day and work work work, but if you don't produce something valuable you'll never get paid. At least not for long. Unless you work for the government... but don't get me started.
That said, I too find all the "*" annoying. And if anyone can tell me what name is for "*", I'd appreciate it.
Asterisk.
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
if you tried to pull the obfuscation trick on a deal where we had negotiated source rights, I would feel entirely within my rights to:
a) withold any remaining payments due
b) take my business elsewhere
c) tell everybody I knew that you were a disreputable business person, and that they should take their business elsewhere
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.
That should be "its" not "it's".
Hope that helped to make your language ever more beautiful.
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
...you're really RMS, aren't you? C'mon, you can tell us.
Downmodding is the refuge of the weak. Don't downmod, make a better argument!
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
There was not a proliferation of "*", however there was ". .
As others have pointed out, * is asterisk.
Dacels Jewelers can't be trusted.
So, your options are using a Lawyer, using the Microsoft Source code sharing license, the GPL or..you also could try selling the source code for a big quantity of money. Make them pay you for the development of the software, for the months of paying to your employees and for the price of the software. (And a plus of a %20 just for benefits)
You'll forget any complications and also you'll get a lot of money.
Oh no.. no one ever "borrows" ideas and turns around and makes a mint off them. Excuse me while I ask for a helio to pull me out of the mountain of bullshit that statement caused. I'm not sure what Fantasy Island you live on there in the Land of Makebelieve but someone needs to send a search and rescue team to drag you back in leg irons.
Click here to talk to the people that can really help you out here.
They produce code so obscure and complicated that not even they can figure it out (something which is very evident in much of their software)
IANAL, but...
They want source, you want to protect it. This is a legal question, not a technical one.
Copyright it, file it at the Library of Congress, and get the client to sign a contract that says you own the code, and they license it.
If you GPL it, you can't switch to proprietary, but if you keep it proprietary for now, you can GPL it later.
-- I am. Therefore, I think!
Can't we just call it a day, go lynch a few people who keep using loose for lose, and grab a few beers?
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
I've encounter this situation at several companies I've worked with/for. They had the same reasons... not fully recovering the costs of development, therefore, wanting to retain the rights to the code to be reused, repackaged, resold. In practice this has rarely happened as it has always seemed (to me) that the true value of a software solution is not in the code but in the approach and modeling of the problem-space. The code can always be re-written (there are, of course legal ramifications here as well). As some have pointed out, the follow up services are often quite lucrative once the client gets a taste of what you can provide for them (this is not to suggest, as some have, that this implies you should give the source away).
In smaller projects where the cost of legal expertise is not justified the general concept I've employed is a "non-exclusive, perpetual license to code execution" No modification are allowed without permission. Obviously, as was pointed out, one does not want to be responsible for someone else's coding errors Permission is always granted but warranties are voided.Roll that up with a non-compete, non-commercialization clause and hope for the best... or hire a lawyer (well, everyone else said it).
c
the correct term for the collection of asterisks replacing letters is: ellipsis.
i s
http://dictionary.reference.com/search?q=ellips
KFG
Introduce artificial "typo's" so that simply OCR-ing and compiling wouldn't work, but they can get an idea how the program is working. Print it out. Copyright the thing and put in a NDA form plus put it in the contract (like others have suggested).
In Soviet Russia, articles before post read *you*!
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.
Nathan Hale.
Actually, the original article says specifically it is NOT open source here:
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.
Saying you are opening your source to a specific company in no way makes it Open Source, nor implies that you think it is. A lot of people replying to this don't seem to understand that and I can only assume it's because they didn't actually read the @#$%ing artcile.
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.
I used to work for a medical database software company (4 years ago) that provided it's source code to it's customers, and encouraged them to work with it and customize/modify it themselves.
I don't know the details of their license agreement, but I know that all of the source code was viewable and could be modified on each customer's system. In fact, this is how we sometimes did customization for them (edit the source of a few routines on their installation) It kind of made a headache for the release team, though (:
The beauty of this arrangement was that sometimes they would get customers to send in improvements, which we would then roll into the next release. We would still have to review the changes, but you get some testing/debugging work done for free!
So, my point is that this type of arrangement can work out, and it can be mutually beneficial for both the software company and the customer.
Last I checked the company appears to still be doing very well.
Bottom line, "ownership" in something you create remains with you unless you explicitly sign it over to another party. To retain no ownership you have to explicitly note that fact in a contract.
Conversely, you retain whatever ownership rights not mentioned in a contract. So: Write a contract that only grants certain rights to your customer and omit everything else.
My company operates on a different approach: Work For Hire, basically. We had the fun of proving to the auditors that we didn't own the code we wrote (and therefore didn't charge any sales tax).
Hope this info helps.
Get a lawyer
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.
Or debugger, as the case may be.
KFG
I had the opposite problem at my last few jobs.
My coworkers made me do all the design and most of the programming, while promising to test, write the documentation, and keep the client distracted so I could get the project finished. They felt that I should write all the code just because I knew more algorithms, designed better applications, and could code more in an hour than they could in days.
This is not a good thing. It meant that if there ever were any problems with the applications, I would be the only one who could maintain it. Most other "developers" could barely understand the code, even though it was fully commented, and usually written to be understandable (long variable names and extra lines if it helped.)
Luckily (at least everybody tells me it is luck) none of my applications ever seem to need maintenance. Occasionally they get expanded, but the hooks for the expansions are always visible to the new programmers. But I keep getting told that this is just luck and someday code of mine will require changes that I did not anticipate. I really wish this would happen soon so I could make some money from the maintenance.
===
On the other hand, I disagree with hiding your source.
- I learned that my programming skills were good when others asked if they could use my functions. How do you know your code is good if no one else has seen it?
- And my skills improve when others criticize. Even if we do not change the algorithm for this project, it may help me on the next one. (Never recode unless there are provable performance benefits.) The worst programmer you know may know one trick that you don't; and that trick may improve a program or save you hours of programming someday.
I hate waiting until I can share the source for my current project so I can listen to the oohs, aahs, and boos.
I spend my life entertaining my brain.
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
I Would give them the source
just leave out all comments!
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.
Your code gives you access!
Troll tuesday in the hizzouse!
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
If you're making your program for Windows, try not distributing Makefiles and scripts that will construct an installer. In most cases, the customer may only need to recompile specific .dlls, and thus only having raw source without context may be plenty.
Jive Software sells JSP based forum software. They provide 95% of the source, more than enough to make almost any tweaks you want, but keep a few components (the ones that are responsible for license verification) proprietary. If you're planning on reselling your product/code anyway, building such a system might be a worthwhile investment.
Note that you should specify your terms in your licensing agreement and copy protection is really just a minor deterrant.
Voting is a lousy way to arrive at the truth.
Yes, but voting is a half decent way of deciding what leads to follow first.
Will I retire or break 10K?
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.
Well, I for one hate to reinvent the wheel. In my previous incarnation I was a programmer who among other things did extensive customization to accounting software to meet the needs of my customers. I used a product called Accountmate which is written in Visual FoxPro and offers a "source code license" should you want to modify the product. Check this link for their current license agreement: http://www.accountmate.com/solutions/files/liscens e_agree.pdf
I haven't read it (not having dealt with coding for several years) but I think this might provide you a valuable point of reference to create your own terms.
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.
You're also a fucking liar, but hey -- let's not split hairs here.
This kind of things is done all the time. It's no secret.
Basically terms regarding non-competition and whatnot (they can use your code however they want, but shoudl they sell it or give it away, they would be competing with you)
Really. Talk to a lawyer. No amount of slashdot advice will help you write a contract better than a lawyer.
If you want an example, look at the license agreement that comes with the CodeWright editor from Starbase, they provide full source for the editor as part of the package.
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.
Wouldn't be nice if people who didn't know what they were talking about would keep their mouth shut?
ellipsis == '...'
Asterisk == '*'
autopr0n is like, down and stuff.
In your agreement give them a non-transferable world-wide non-royality bearing license to the code for internal use only.
You retain ownership and all the rights to the code. They get the code and can use and/or modify it for free for internal use.
The smart consultant would structure the deal so that it is easier for them to hire you for future modifications than hiring someone else or doing it internally.
The case for closed-source is twofold:
One is that it makes the inner workings more obscure, and lessens the likelyhood of someone "stealing" pieces of your code for use in their own works.
Secondly, it makes support more difficult; is the version of the software someone is using YOUR version, or modified? Did they build it right? Is it making your stuff seem crappy when it's not?
When it comes to corporate contracts, source makes sense.
When it comes to mass market things like Office, it does not (from Microsoft's point of view)
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.
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.
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 . . .
Escrow is easy, safe, and legal for all involved. I use it for many of my clients, updating their escrow account with a new CD every 6 months. Best of all, thy pay for it.
From what you've said, it sounds like your customer is footing the bill for the development. That is typically called "work for hire", and they who hires owns the work.
However, it is not unusual to find agreements where the funder [them] retains a "prepetual, world-wide, right to use license" for the product/IP (which does not include the right to resell, redistribute, create derivative works, etc.); the hiree [you] retains all other rights to the IP.
There are many, many, many boilerplate agreements of that sort floating around. A master service agreement from virtually any large development or consulting outfit will likely contain verbiage you could lift verbatim.
That said, talk to an attorney; they shouldn't charge you much for crafting this type of verbiage, since it's very common.
you've got room to talk when you don't know the difference between it's and its!
Am I the only one to notice the faulty use of an apostrophe? I can't imagine the buggy code the rest of you must write. "It's" is a contraction; the possessive "its" contains no apostrophe, per Strunk & White.
Also note that proper typographical form for an ellipsis is periods interspersed with spaces. Ellipses ending a sentence contain 4 periods, not 3. Look it up. . . .
Palladium.
Hacking the Network
An apostrophe "s" also indicates a possesive. The word "it" is a pronoun with unspecified sex - in this case refering back to the word "code."
Notice that this means that code posseses certain properties of terminology and functions. Think about it ...
I'm going to take an opposite approach here. If I buy your services and software, they are mine to use as I see fit just the same as if I bought a book, groceries, or another tool. In a sense I am paying for the knowledge and other items to improve my business (intellectual property) that you provide. While I may not be able to recover and rebind the text of the book, or your code for sale without permission from the publisher or author, I am certainly free to use my new found knowledge to engineer my own solutions to future problems just as I can use the wrench I bought at Sears to run a garage and fix things for fun or profit.
If you don't want me to share the code I bought from you with anyone else, or use it to compete against you with, then let's make a contract that says so as part of the original deal. (Insert lawyer here...) However, since I am betting the future of my business on your your "black box" and what it does, I feel I should have a right to look under the hood and see what I bought as well as understand how the black box does what it does. Otherwise, how do I really know I am getting what I pay for?
As in any business matter, please take time to make sure each player has a mutual understanding of what each other player in the deal expects for an outcome before you get in too far. That way, there are no nasty surprises later.
Regards,
B.W.B.
Consult the standard. The reserved word "it" is formed into the possessive form by appending an "s", forming "its". The macro "it's" preprocesses to "it is". There are more rules here than for C++, to be sure. :)
Grammar violation: it's
Grammar Police recommendation: its
Mandatory fine: 5 slaps with a wet noodle
STFW, dickhead. it's or its "it's" only ever means "it is" or "it has". The proper posessive, assuming you didn't learn English in Elbonia, is "its". You fucking Americans just don't learn anything in school these days, do you?
I agree. We don't need any ellipses of the form ax^2 + by^2 = 0 on slashdot. Thank you.
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.
The only thing you need to do is specify that they are not allowed to sub-license the code. Basically, that means they can use it for whatever they want for themselves, but can not "sublicense", ie, sell or give away the code to anybody else. The customer then gets to make any code changes they'd like for themselves, but it doesn't affect your business.
This is exactly the way IBM sold/leased mainframe OS's (like VM) for decades. Write a good contract that spells out exactly which rights and responsibilities each party has, and you should be in no more trouble than anyone else selling/licensing software.
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.
Haha, good one. No, we fucking Americans still learn the stuff. Apparently many of us have forgotten in the meantime. Please accept our humble apologies. Or something.
And possessive isn't spelled "posessive," get off your fucking high horse. Learn to spell before you go correcting others.
If you are valuable... that is it is your ability to produce items that is the TRUE value, then I'm afraid I'll have to bring up the good ole Free Software viewpoint.
Last time I checked, people hire me, not my code. If you want to protect your code, use the GPL. If you fancy lawyers... get a job at M$.
...I don't think that you are referring to the hypen. Perhaps you mean the dash: "--"; 2 lines without quotes? The hyphen is 1 line. Unless the rules have changed since '95, it should be as I stated. But then again, my memory is vague.
Perhaps a semicolon will give you just the right amount of pause that you are looking for?
I'm not trying to be a spelling Nazi. It's just that it's refreshing to see people discuss proper punctuation in a non-scholastic context.
testing out my trending skills
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
I use Borland Delphi and Borland C++Builder and both come with source code. Not everything is included (compiler), but it is enough to build the essential libraries from the source code. Check their license.
I'm not sure but I think that's the same with MS Visual C++.
Even more: with a _working_ DRM System you can control, who looks at your code, and you can revoke that "license to view" any time.
;=)
If DRM works as announced. And if anybody can use it to _create protection_ for something worth to protect. By now, only those mp3/aac/divx... sellers seem to be able to do so, sometime in the future. btw: it would be nice, if I could revoke my email address from the spammers hotlists, my email address is definitly a DRM object
many greetings
Matthias
'as it were' has been deprecated in the latest versions. Please use 'as it is' to maintain compatability with future releases.
I'm sure there are quiet a few resources available (often free)
where people will advise you on
Open Source buisness plans.
I thought it was gnu.org who advised people like RedHat and Trolltech on making a buisness from Open Source.
I must be thinking of someone else since i couldn't see company advisory info on site after a very brief look,
if you can remember who does this please post for this guy, thanks.
A blog I run for the wealth
lots of programs provide source code but the seriel license files are encrypted, they still have source to develop it but they cant create their own key.
:) and time to sue
make the program dependent on company names ie company A cant use company B's system cause it would print company b every where. ask for company name where u enter the seriel
then in this encrypted file have some sort of connect to the net and pass some info to you. if it registers multiple companies names then u know they are copying it
almost a microsoft tactic
word origin money
I'm feeling lucky
http://moneyethics.com/Articles/origins.html
And wait, I also had a look in a good Latin dictionary:
munis: munis , e, adj. [cf. munus] , ready to be of service or to oblige, obliging
munus: C. A present, gift (syn.: donum, praemium)
Why do you correct people with wrong corrections? It's much better to check before you correct others (even if you believe you have a great memory for details).
"foriegn" l [fx: glass house being hit by stones] Could be an American spelling, of course [fx: checks dictionary] No. It's not. [fx: SLaP!]
Come and put your racist jokes on Slashdot
- we won't delete them
- we'll moderate them up to 5.
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
I'm not a lawyer but I own/run a software company. We have a few Fortune-500 clients and went through brutal contract negotiations with all of them. I've learned to love reading and negotiating contracts; there is an internal structure to them similar to software. There are legal equivalents for most programming concepts: variables, functions, OOP, etc. But I digress. ;-)
Get a lawyer.
You shouldn't be negotiating with your intellectual property (or anything else really) without having proper counsel. When you hire a lawyer, make sure to ask them specific questions about source code deals they've done in the past. Most of the contract and ip lawyers out there haven't done source code negotiations--they don't teach something this specific in law school, they need experience. If they can't bore you to tears with war stories about the weaknesses of Chapter 11 escrow triggers, keep looking.
But a lawyer can't negotiate the major deal points.
You have to negotiate the business side of the contract. With these it's all about leverage. For the major ip deal points, there are two ends of the spectrum (ie things that are good for you at one end and things that are good for the client at the other). Depending on who had the leverage, we used to move up and down this list in each negotiation.
------------
BEST FOR YOU (LICENSOR)
1. JUST SAY NO: No source code rights whatsoever.
2. ESCROW: Source code held in escrow by third party and released only when certain conditions are met. Common conditions (in order of licensor preference) are:
a. Licensor ceases operations (Chapter 6?);
b. All above, plus if licensor goes bankrupt (Chapter 11);
c. All above, plus if licensor violates the Service Level Agreement section of the contract (% uptime, accuracy of software, etc. items will be custom for your particular software/service/industry);
d. All above, plus if licensor breaches Reps and Warranties section of contract;
e. All above, plus any material contract breach.
3. CONDITIONAL RIGHTS: Once they have the source code, whether after triggering one of the escrow conditions or immediately upon contract signing (if you couldn't get the escrow), there are several ways you can restrict their use.
a. Only Licensor's employees can only use source code and derivatives ie they cannot resell to third parties;
b. Licensor must continue paying you your licensing fees on use of the source code and all derivatives even if you breach the contract;
c. Same as a. but if you breach the contract they only have to pay you a percentage of the fee;
d. Licensor can have the source code but any modifications must be done by you at your normal consulting rates;
e. Licensor owns the source code and all derivatives;
f. No limitation of liability for breaching (a) or the confidentiality clauses in regards to your code (no sane company would agree to no limit but the number should be extremely high--an order of magnitude beyond what you're actually charging them for the software).
4. BEND OVER: Free and clear rights to source code with no restrictions.
BEST FOR CLIENT (LICENSEE)
---------------
Hmm. I hadn't meant to write an essay on this. Anyway, I hope this helps. You said escrow wasn't an option but fight for it anyway--I never signed a contract with ip rights that didn't have escrow protection.
-Flemlord
The answer is:
you don't. The best thing you can do is spell out the distribution conditions in the code and hope that the majority of developers will be ethical and civilized enough to respect your terms.
If the price you charge for is not too large (otherwise you are gouging your customers) then I believe you can safely distribute it over the Internet. I trust the small percentage of those who will use your code illegally could not have afforded it anyway.
The right price combined with trust does more than the tightest protections ever conceived.
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"
The "it is" expansion is nice, it gives the sentence a conclusion to ramble toward.
I've been part of deals like this several times. It is extremely common for small dev shops to provide source to large customers who want to retain the right to continue to use and modify the code and who have no particular confidence in the longevity of your business.
The issue isn't really "open source," it's the terms of the software license for your product. Your contract should make it clear that your company owns the code, but that in consideration of the money in the development contract, you're granting a limited license for use and modification of the code to your customer.
An alternate strategy that may work for other contract situations where your customer wants the reassurance of owning code and where you have strong concerns about revealing source code is a software escrow agreement. For a relatively small fee (usually the customer's responsibility), your source code is held by a bonded intermediary suce as Datasafe, Inc. . It's your responsibility to update the code for each new release. Contractually, you guarantee your customer that if you ever cease operations, they can pull the source code out of escrow, mitigating their risk in contracting with you.
The next thing you should do, though, is get the right lawyer to assist you in preparing a strong contract that protects your company from adverse developments. Contract preparation and review services are generally way less expensive than the risk you undertake when you don't use them. If up-front cash flow is a problem, explain the situation and see if you can pay out of your first milestone check... some lawyers will give a break in order to cultivate a relationship with a promising young software development company.
Assuming you put a clause in the contract that says "you can have source code and the rights to do [X,Y,Z] with it but we still own it", you might also consider having a clause that says "any changes you make to this code must be fed back to us and we have the right to include them in a future release of the code".
This means that if you do have a continuing long relationship with them, that
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.
(IANAL, blah, blah, blah...)
The trick to doing this is that you don't sell them the software, you sell them a non-exlusive LICENSE to use the software. All custom jobs should have a contract signed in advance detailing exactly what you will do, what they will do, who will pay how much, and what happens when someone doesn't keep up their end of the bargain.
You want to stipulate prominiently in the contract that "this is not a work-for-hire" situation, and that you retain all rights to the code.
By default, anything you do is considered work-for-hire, meaning that the person signing the check owns the rights to it when you're done, unless you specify otherwise. IIRC, this is a basic aspect of copyright law, which governs the ownership of creative works.
You grant the customer a limited right to use the code within their company as long as they pay their annual maintenance agreements on time. They may not use it outside of their internal operations, market it to outside sources, or disclose it's internal workings. Specify that it is a trade-secret of your company in your contract and it may give it some added weight, especially if you plan on basing your future business on it.
Write it all up, then take it to an attorney to review and rewrite. By putting a good bit of work into yourself, the attorney will have a better sense of what you are trying to do, and should be able to modify it to fit the legal standards at a much lower price than if you walk in cold and say "I want you to write a contract for me".
- Brian
--There are only 10 kinds of people in the world - those who understand binary and those who don't.
In a previous life I worked in a company that was also a small startup and they had a rather novel approach to this problem. They had a license agreement that stated that the source code was developed for the company and was their property for internal use only (I forget how they made that stick). Then they also said that the project included tools/uitilities and libraries that were common and they would pay a license fee with a non-transferable license to use these libraries. The libraries included certain GUI widgets, graphing routines, and common modules that the application was built upon. No source code was provided for the libraries and the libraries generated startup messages that could not be removed showing the copyright owner. This worked well for both parties.
The client eventually did make modifications to the code themselves, but generally called on our firm. The firm went belly up due to some bad financial doings a few years later and the company could still support the project, and eventually (I understand at a high expense) replaced the proprietary libraries.
This does work if the libraries you keep private are core to the project and yet do not hinder the kind of expected modifications that the customer may choose to do in the future. Think of this in terms of "buying" a widget or component library from a small tool vendor.
Just an idea, but everyone was happy with the arrangement. The company paid for the libraries and annual maintenance regardless of whether we performed the application up-keep. We restricted license to others by tying the application to the libaries, and still gave the customer freedom to perform modifications/maintenance without us. The trick is to come up with truly common routines, that lowers the consulting firms on-going cost, while being intertwined with the application being developed, and being generic enough not to need modification to perform common and expected maintenance to the application.
Hope this is helpful
Food not Bombs is a nice platitude but it breaks down when you notice that the Bombees are usually well fed
The only thing amazing you did was to spin a bullshit story out of whole cloth. You're pretty impressed with yourself, aren't you? You're also very disturbed.
As the long line of people pointing that out ( as I predicted) attests too.
I've also been known to mistype all sorts of other things in my C code. Just because you miss a curely brace doesn't mean you don't know it's not supposed to be there and even with full time professional editors and proof readers like mistakes make it into every book.
By the way, I did look up ellipsis. Mine contain the proper spaces and if you refer to your Strunk and White you'll find that three is the proper number.
Also, as in an above post, the ellipsis is used to replace letters not actually printed, such as "F***". It is typographically incorrect to include spaces in such use.
KFG
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
The source is NOT the work; it is a stage of the work. If I'm offering you a binary, that binary either has value to your or it doesn't.
In most cases, it's not copyright that protects my binary, it's a license agreement.
Just as an NDA can force you not to reveal internal facts in a company (even though they are not covered by copyright), so could software be protected even if copyright did not apply.
Trying to demand source on the grounds that copyright is being wronged without it is totally absurd.
Nolo Press has the best books on this subject in my opinion - covering copyright, trademark, and even one specifically on software issues such as this - all written in plain english and easy to understand - they provide sample contracts in teh books and we have modified these over the years and never had a problem (yet) :)
dude, this is slashdot. i can't believe you actually used the words rights and intellectual property in the same sentence...don't you ever read this website?