Open Source Code In a Closed Source Company
An anonymous reader writes "I have code that I've written for my current company that I'd like to open-source. The only problem is that my company has the usual clause that says that anything I write belongs to them. Now that they've decided to abandon my code for another product that replaces its function, I'd like to continue working on my project as well as open it up to the world. The easy part is cleaning it up and posting it on SourceForge and Freshmeat. The hard part is making sure that I am free of any legal complications in the future. I've looked online to try to find a legal document I could present to my employer to get them to sign off on it, but I'm not having any luck. Has anyone else been in this boat or can refer me to some legal documentation that may help out?"
"Mr. Ballmer, I'd like to release some code for the new MS Office under the GPL.
It's some of the UI code that people might really enjoy being able to, you know, work with a little better."
No doubt you will chairish the moment.
Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
are you asking people from Slashdot. Why don't you approach your company and ask them what they think? I have a friend that did just that with a app he developed, the company let him take it Open Source. If they own what you create then you need to make sure that they are going to release it.
Cyberbite Networks - Web Hosting, Dedicated Servers & Colocati
Slashdot is not a lawyer.
As parent says, they own the code. If they want to abandon it they still own it and don't automatically abandon rights to the code.
Ask them if they are prepared to release the code and if not, why not.
If their major concern is laibility, then get the code signed over to another party who will shield them from liability. THis might be yourself or EFF or whatever.
If they still won't well you're screwed as it is theirs.
Engineering is the art of compromise.
Print the code you want to release, pedantic I know, but legal folks like paper. Draft a simple document that says the attached code is going to be released under XXX license (whatever you can agree on with them) and that the company agrees to the action and that any derivation/modification to the released code is copyright the respective author going forward (your choice of license probably will take care of this for you).
Affix the license, the document, and the code. Have a legal officer of the company sign the document, initial all the pages of code and the license in front of a notory, and have the notory do their thing and seal it.
Should work for any trivial amount of code. As was joked about in another post, I doubt you'd want to try this with Ballmer and the Office code base, but if you think your company will let you get by with it in the first place, its probably enough. The key thing is that you've got their sig and its notorized properly so you can't be sued later for releasing their IP into the public spotlight without permission cause lets face it, once the code is out there, they aren't going to put it back in the bottle, they at best will sue you for releasing it.
Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
You need a laywer, sir.
for a closed source company?!? No help for you!
Sorry dude, you're out of luck. The code is still theirs. Their ownership of it is not predicated on whether or not they actually decide to use it.
You can always ask them if they'll give it to you. I've done this successfully. If they really have no interest in it, they might be willing to discard it.
We are the fire that lights our world.. and we are the fire that consumes it.
Why don't you talk to the person in charge of software ? That might be easier than dealing with the legal team....
:)
One approach is to explain that by releasing software components to the open source community, you'll get other people to improve and test your software. This reduces your costs and people in charge tend to like that
That's what you get for signing such a contract. You should never sign such a contract. You should specifically say that you own things you create during your own time, and ideally you should use different technology to develop your private enterprises than what you use for your clients. That way, it is abundantly clear that you didn't copy anything. A two-year non-compete agreement is more than sufficient to protect their interests against you.
If you want to do things on your own time and reuse them at work, or reuse your existing code base to deliver solutions better and faster, grant your employers an unlimited license to use the things for free, charge them through the nose in hourly fees, stipulate that you own any improvements to your code that don't contain their business logic, and abstract their business logic out well during design so your code doesn't get polluted.
If you're a good coder, you have to protect your right to make a living. These big development houses are competing with each other, and if you aren't making them rich, they'd just as soon you weren't allowed to work anymore in the industry. They'll screw you if you let them.
-1 Uncomfortable Truth
... because they let you GPL the stuff you work on from the get go. You just mention when you begin that working with GPL will make you more efficient, quicker and cheaper because you will be able to use a miriad of pre-made solutions. Mention also that whatever you create will also be GPL.
In most cases they will agree to it and you will benefit much more than they will because you will be able to use the code you create forever more.
If you look in the file usualy attached to any GPL'd code, for example /usr/src/linux/COPYING on many linux distributions, you will see that part of the file is the actual GNU Public License and part is an explanation and philosophy and so on. If you want to open source your work, I'd hope you would have read that file at some point . . . but in any case, here is the relevant portion:
"You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice"
I like that copyright disclaimer because it is short and simple. No doubt someone suffering from the brain damage of a legal education could provide you with a longer one.
Legally if you want copyright of the stuff then it might be quite complicated.
Why not get the company to release the software under an open source licence? They still own the copyright but you can do the same as you could with any other software under the same licence. This serves your purposes and if a Director signs the release to make it clear that it was authorised then you shouldn't have any problems.
What you need is a clear transfer of all copyrights, patents and trademarks in the specific program from them to you. Look for a copyright transfer agreement, they are quite particular.
If you wrote it using their equipment on their time they might have a problem releasing it unless you can convince them of a good reason. They could really benefit from your work being open sourced.
If you wrote it on your own time with your own equipment and not on their premises then they really shouldn't have any problem writing you a release of any of their possible copyrights, patents and trademarks in the work - since it wasn't a work for hire. You might need to state that you didn't incorporate any lines of code from their work into your code. You'll also need to clarify if their work has any of your code in it - that could be a sticky point (a.k.a. SCO) if it's not clarified now in writing.
However it's complicated by them having a similar program that they are commercializing.
Really you should consult a lawyer rather they us fiends.
Next time, don't sign away your code. I'm assuming that this is about code that you wrote on your time. Anything you write with company assets or on company time is theirs, but don't sign contracts which entitle the company to everything you do in your spare time. As long as they own the code, they get to decide. You have to talk to them and get *them* to publish the source.
Your company owns the copyright. 1) You might convince them to assign the copyright to you (fat chance). In that case, you need a signed document. Just do an internet search for a standard copyright assignment form. You need somebody with authority in the company to sign-off on the copyright. 2) You might convince your company to release the software under the GPL. At that point, it becomes GPL licensed to the world, which includes you. Try to sell this as a benefit to your company. 3) You could do a clean-room rewrite of the code. Basically, rewrite the product from scratch using your superior knowledge. 4) Carefully examine your contract for a loophole. If you are a contractor, and not an employee, then research the work for hire doctrine. You might actually own the program. Otherwise, if you are regular employee, there is not much you can do. My advice, don't just post it to source-forge. Even if you acted as though you owned the program, the company still owns the rights and could enforce them 10 years down the road. IAAL
How about you forget this and go do some work for the company that cuts you a paycheck?
You can't release it without management buy-in. Your manager knows vastly better than you whether that could happen, and how to get it to happen.
If your manager agrees with you that open sourcing it might work, he'll know how to do so. If not, it's not happening anyway.
Why was your project dropped?
Politics / Good 'ol Boy / Politics
-OR-
Bad UI / Past due date / Hard to modify / Poor interaction with existing systems / Can't talk to financial systems / not profitable to deploy / No audit logs / whatever.
If the former, keep plugging at it but get a lawyer. If the latter, save everyone some time and refocus your efforts. Tough love, sorry but serious.
Buy the source code from your employer, then release it yourself. Burn three copies of the code to CD, and seal two in envelopes and write "This is the code I'm buying" on the outside, one for you, one for your employer. You work off the third copy.
Won't help you if you get to court, of course, but what is important is for you and your employer to be clear on what it is you are buying.
I wouldn't blame your employer for refusing to sell you the code, though. One assumes it is relevant to the business they are in, and selling it to you risks you developing a competing product.
I would suggest starting any project by building on another project that is already open-sourced therefore the GPL or whatever license would mean that your new project is automatically in the public domain.
I'm not a lawyer but...
It sounds like they've paid you for this work. That probably means they are the copyright owner. Copyright does not transfer by accident. So if you haven't got a document in hand by someone who is a principal of the company that unambiguously identifies you as the new owner of the software, you should tread very carefully.
Also, you're talking about having them 'gift' it to you, effectively. You apparently did work they paid for and now you want to own it. That can't happen by magic, and most companies don't give away assets. You might want to try 'buying' it since then there would be a contract you could point to, and you would know who sold it. (I don't know if that makes it better. Ask a lawyer. It just seems to me like it might make a better paper trail.)
You don't say whether the other product is one your company is making or buying from outside. If the company maintains a competing product, your non-compete agreement may be in play.
You might consider writing it again, clean, on your own time and machine, logging the intermediate versions so they can be shown to be different than the backups the company has of its intermediate versions. That may not be enough even. It might address copyright but not non-compete or trade secret.
You might consider getting the company to open source it instead of you. The difference (I think) would be that it would be they, not you, who retains the right to make amended agreements with different conditions than the basic license. In that case, all you need is that they open source it in a way that gives you the necessary rights of use, which may be easier to establish than ownership. Also, in that case, you can probably get the company's lawyers involved in making the license, and all you have to do is worry about whether you can use the license that is finally created. In that case, you've evaded the worries about whether you transferred ownership right, and you're down to just "did they pick a good license.
Did I mention I'm not a lawyer? You should not use this message as a guide to what you can do. Mostly you can take stuff like this that people like me write as conversation starters when you finally get serious and talk with someone who is legally competent to advise you properly.
And, by the way, if you make a mess of this and publish something you don't have the proper rights to, you make a problem for people downstream in the user chain. There was a recent Slashdot article where something vaguely of this kind may have been in play. Even if not the same root cause, it illustrates a scenario you don't want to find yourself in.
Kent M Pitman
Philosopher, Technologist, Writer
The best way to make sure you don't have any legal complications arising from this in the future would be with a simple contract to transfer ownership.
All you need for a binding contract is offer, acceptance, and consideration. Consideration means that both sides have to get something. The other side could get something symbolic from the deal, it won't matter, courts will enforce the contract.
So, if your employer is willing to let you have the code copyright, offer them a dollar for it. If they accept, the contract is done, and the ownership is transferred. If the company tries any legal shenanigans in the future, the case will be a very simple contract case that likely won't get past summary judgment.
Just make sure the company accepts the dollar. Symbolic consideration is valid, but consideration on paper only is not.
IANAL, and this is not legal advice.
I am a first year law student who is currently taking an introductory contracts course.
I do this all the time, in fact most of my open source code was done on someone else's dime.
Your situation is going to be tricky because you (I assume) don't have a precedent of doing it (they didn't hire you based on your other open source work) and don't have any agreement in place. I also assume you are a permanent employee instead of a contractor (it can be easier to open source work as a contractor in some countries).
The above stuff isn't critical, but it smooths the process.
What's tricky for you is there aren't any good BUSINESS reasons for them to do it either.
If either your code, or the code that replaced it, is profit-impacting then forget it. No sane company would open source a profitable codebase, nor will they risk releasing an old product that you could then take and create a competitor.
The best arguments for open sourcing in a company that isn't a software company are:
1. Having other users means free testing, free reports, maybe some free patches. In rare cases, it means you become the industry standard/leader in an area (and control is good, from a company perspective).
2. Because you will continue working on the project after you leave them, they in effect continue to retain you as an employee without having to pay you.
Those are the direct benefits, there's more reasons (mostly more subtle).
Sadly, neither of these apply in your case.
You are in effect dumpster-diving in their repository, asking for charity. And your work on that codebase could well distract you from your new one.
It might be possible, but it's going to be damned hard.
Good luck though.
You seem to have missed the point. The author is asking for a document he could give to his employer that they could sign that would open source the code. It's right there in the summary: "I've looked online to try to find a legal document I could present to my employer to get them to sign off on it".
Cow Cube
Probably not.
Probably you were asked to assemble something right away and it took years to stabilize. i know it has heppened to some of my projects.
So I've decided to reimplement the stuff on my own following my own advice. Guess what? The new code is better and I'm releasing it as open source and I'm not giving it back to my employer, well sometimes I do, only if they are kind to me.
The way I see it the code is theirs if I write it at the office. The code is mine if I write it at home. So, I just make sure I don't bring the crap from office to home and I unit test everything at home, something I'm not always allowed at the office, so in the end their code is crap and can't be maintained no more, while mine is already in a library, unit tested and all.
The more I write code I realize there is no need to write so much code. Simply implement the functional spec with as little code as you can. The rest is testing.
The theory says I should work 100 hours a week, but I work less than 40. It also says that my company should be capitalizing on my code, but it is only gathering garbage that they will need to dump anyway. The same theory says I should be undercapitalized and loosing my judgment. My capital is my open source code which I may take with me where ever I go. I can do magic in any company if they want me to.
Think of MySQL. You can give away your sources, but knowledge is something you can't give away. Simply put, people don't understand it, so you are protected from theft, while companies filled with MBA guys can't compete with you because they are loaded of code that doesn't do what it is expected to do and can't grow, can't be maintained, they are only gathering costs, not value.
In the end only opne source companies will exist. Closed source companies will agonize for one decade or two, but they will be surpassed by open source companies, because no closed source company can maintain their knowledge locked. Knowledge wants to be free.
They paid you to do a job - they own it, thats what you agreed. Legally and morally. If you want to develop code on your own time and fund the exercise yourself - then you can own it.
simply ask your employer to sign a copyright disclaimer. Something along the lines of: [Company Name] disclaims any copyright on the work [Software Name]. And get the directors of the company to sign it over. If you want to be really bold, ask them to assign the copyright to you instead of just disclaiming any ownership they might have over the copyright. Companies are often happy to do this if the work honestly isn't of any value to them.
How we know is more important than what we know.
First, go to them with a list of all the positive things releasing the code under a GPL would do:
1. Others will help you.
2. Good publicity.
3. Ability to sell consulting services.
Then, find yourself a standard contract and mod it with the help of a lawyer friend. If you ask here, there ARE lawyers on Slashdot and they'll probably help.
Anti-Globalism
So, here's a theory - how about just asking?
I work for a large software company (about 10,000 employees) and have released a couple of things into open source. We use Linux / MySQL / Apache / Spring / etc in a big way. A colleague and I wrote some MySQL utilities and some other bits and pieces, but the code we wrote didn't really give away competitive secrets, so I went to my management and asked - and they said "yes".
My company has contributors to at least a half-dozen open source projects that I know of. For example, se use Apache Camel and we contribute. It makes sense for us to share, because the sum of what we get back from the community is more than what we put into it individually (and we give away no secrets).
Now, if the code you wrote is something a competitor could use against your company, don't both asking, you already know the answer.
Alan.
Since they've moved on to another project, tell them that it would be a shame if they couldn't at least get some value out of the code. Then say that if they were smart, maybe they could attract some publicity, etc., if they open-sourced the code they're not going to be using any more, and created a site for it, along with links, blurbs, etc., for the other stuff the company makes.
Benefits:
1) Your employer's approval, at the appropriate level of management. Because this involves transfer of a company asset to you and without compensation to the company, "the appropriate level" is going to be senior management. Of course, start with your immediate manager, and work your way up from there. If your immediate manager opposes the idea, it might be best to forget it. The political cost of fighting that battle without your manager's support is likely to be high (as in "career-ending"), and you are not likely to succeed.
2) A tech-savvy lawyer, once you have procured approval. Your lawyer's job will be to review the contract giving you ownership of the code. That contract will probably be drawn up by your company's legal department, so your lawyer will be making sure nothing is left out and that you aren't getting screwed in some way
3) A very accommodating attitude. If there are any costs to your employer to do the transfer, you may be asked to pay them. If so, and you can afford it, suck it up and do it. If you can't afford it, thank everyone sincerely for their time and approval and effort on your before, and explain that you can't afford to pay that much, and walk away from it. And of course, if they say no, regardless of the reason, be gracious and thank the appropriate people for considering your request.
start off their sentences in the subject on this site?
Pancakes. Oh I blew it.
I am not a lawyer and I don't have a business degree so take my idea with a grain of salt. Why not suggest to management that they donate unused code to the Free Software Foundation for a tax write off.
If fact it could even hurt a competitor.
If the company decided to dump a project because they are moving out of that business arena, but the competitor is still staying in that arena, then opening up the code will dilute the competitor's position.
Engineering is the art of compromise.
In other words, recode it, change its structure, improve it and make it incompatible with the old code's API. That's what I do.
i hate closed source but love the sound of "chocolate starfish" and think of anus
As was found in the case of Finders v. Keepers (1998), you could release said code under the GNU Lesser Bit Torrent Licence.
THL phish sticks
Your best bet is to contact the legal department within your company. I checked into this once with my employer. They were not certain about their own policy, but said they were open to the idea. That is where I would start. Its so ironic. The one thing their policy was clear on was that it was ok for us to consume open-source code.
You actually have two problems: First, you want to publish the code under an open-source license. And, second, you want to cover your butt in case somebody at the company doesn't like it in the future.
Your best chance for releasing the code as open-source is by convincing the company that there is no way that it could be hurt by the release and that it may benefit. So, make sure it doesn't conflict with any product the company makes or could make. Make sure the code is clean (no comments about the boss) and your best work (if people see the code, you don't want them thinking "man people at company X are idiots.") Come up with reasons why making it open-source would be a good thing. Remember, the company is there to make money.
Does your company have in-house counsel, or does it farm everything out to a law firm? If they farm everything out, there is a very good chance that the company will say no -- they don't want to incur legal fees just so you can publish this software. If they have in-house counsel that's reasonably technically savvy, talk to your boss about it and then approach the company counsel.
tradition, you high UID person.
Edward@Tomato - /home/Edward/ man woman
man: no entry for woman in the manual.
"Qua!?"
The entire US has been nearly destroyed by lawyers getting into almost everything.
Just ask your boss if they no longer need the code, and if not then can you purchase the copyright for a token $1? It's clearcut, yes/no.
Lawyers aren't required, unless you really want to help feed the parasitic class.
More than likely, your idea is property of that company. Not only the code you wrote while you were there, but any ideas that you formed during the same period.
For example, I had an idea while working for one company. It was to be an internet monitoring software, that would watch multiple points across as many providers as we could manage, map out the traceroutes, and show not only the common peers that those traceroutes passed through, but would effectively show when any peering point was having problems.
They grabbed hold of it, and offered me 5% of the "profits" of the company. That's the day I stopped working on it.
Technically (if they remember), they still own the idea. If I were to start working on it again for a commercial venture, they could lay claim to it. It's not a matter of what was written, but the idea behind it.
You may win in court, but it will be a long drawn out court battle that you probably can't afford to gamble with. If you win (which you may), you may win a lot. If you lose, you're going to lose a lot. Not only your legal fees, but their legal fees, and whatever the judgment is against you, as well as your intellectual property.
My advice is, when you have another great idea for something, STFU. Don't tell them anything. Wait until you're no longer under any sort of contract, and then "start" your development on it. You can start working on it on the side, but be very very careful that there's nothing to document that you were working on it during the period that your contract with another company is under effect.
You may want to re-read your contract too. It may not cover just what you conceptualize while as their employee, but anything for a period (6 months to a year, I've seen in various contracts) belongs exclusively to them.
Serious? Seriousness is well above my pay grade.
Look, you know what the company is going to say. So, just delete all copies from the company's servers (since they don't want it any more), move on to another job, and a few months later release it through someone else. Most likely the company will never make the connection.
Illegal? Sure. Unethical? Yep. But wouldn't they do the equivalent to you, given the chance?
Your dumb ass employers have no clue how to read source code. Open source it...make no mention to your dumb ass company. They're doing shit with it. They're not going to spend money to track your code if they're doing nothin with it. You worry too much.
"You must be an American... what is *with* you people always reaching for the lawyer every time some little conflict with another person comes up. Stop being a pussy and fight your own battles."
Yeah! Create your own broadband network! Oh wait.
Your company only owns what you wrote for them using their resources, the stuff that's on their drives. They don't own what's in your head. My advice: Re-write it and open source it.
You have to ask them for permission. But don't just ask, make a good case for it. Explain what the cost to them is (including lost opportunity cost, which sounds like nothing for this case). Explain the benefits (mostly soft and squishy stuff, like contributing to the community and giving your company a good name, etc). Really pitch it.
I know this works on occasion, since I've done this myself: asked for, and received permission, to release programs I've written both internally and for paying customers as free software (in the latter case, our agreement with the customer allows this). You can go download it yourself: JavaSock.
It was simply a matter of talking to our commercialization director, pointing out to him that realistically, we probably wouldn't make much revenue off of selling this code, but would make several people (including the client that paid for it) happy, and it might give us some good press in certain circles. They agreed, and we uploaded it to sourceforge.
But don't try to do an end-around. Many things can happen, and most of them aren't good.
I'm not being high and mighty here, my contract says the same. I don't mind, they compensate me well for it. If I didn't think this was a workable deal, well, I'd go find someplace else.
Hi (or she? :) ) just wants to TRY:
:) ), one of the original advocacy documents (could it be appendix to GPL itself?) specifies a (boilerplaite) waiver to present to your employer in just such a case.
:) ).
I've looked online to try to find a legal document I could present to my employer to get them to sign off on it, but I'm not having any luck.
The answer to that is simple for us, old-timers: search FSF.org (or, your tarfile of GCC source
No, they do not have to sign it. Yes, they might (depending on how hip they are and programmer's status in the company -- who wants to keep your star programmer unhappy, after all?
My $0.02 ($0.1, adjusted for inflation).
Paul B.
"Copyright does not transfer by accident."
Of course it does.
yea gimme root, I'll distribute it.
Authorship, copyright, rights reserved under work-for-hire agreements, employment contracts, are all potentially very complex concerns that vary greatly depending on locale.
And you have asked for advice on a forum where the amateurs who think they know everything about the subject will be happy to respond, and the attorneys who practice labor, contract, and intellectual property law will neither be able to get a word in edgewise nor give anything but the most general advice, due to the very vague statement of your situation.
Perhaps before you start your next job you will have the foresight to arrange things so that your work is copyright you, all rights reserved to you, and licensed to the other party in your contract.
Then we can hear from THEM asking slashdot how they can abuse the careful terms of your license, rather than hearing from you about how you willingly entered into an abusive but legal labor situation.
-fb Everything not expressly forbidden is now mandatory.
Assuming you want it to be purely open source (and not sell proprietary licenses to it, like MySQL, for example), just ask them to license it to you under the GPL or BSD license. Either of these gives you, as licensee (it doesn't matter that you wrote the original code) the rights that you want, and they're well-understood documents. If they can't understand those licenses, they really have no business licensing their software to customers. And if they're not okay with licensing the software to you under those terms, they won't be okay with any document that effectively allows you to get that license to the software (and may also transfer copyright).
As far as whether you should try to get the copyright, having this company own the copyrights and only license it to you under the GPL and then have you work on it and only license your changes under the GPL means that nobody can change the license, since neither of those two copyright holders are likely to agree on a change. This can be preferable for end users over having a single copyright holder who could legally take future versions closed-source.
This is similar to a problem I may be having in the future, so I'll float this out there. I am currently thinking of starting a website and/or open source project, as well as being in charge of a few small (and for the most part unsuccessful) open source projects. There is also a good probability I will be hired in the next few months at a large corporation. I'm not a computer programmer, but a scientist, and the clause would mostly deal with patents instead of copyright, but who knows.
Assuming I sign a similar document, would I be allowed to continue working on these projects? I know it would mostly depend on the wording of the contract, but I'm just wondering of anyone with similar experience.
when you can write a different way of doing it with new code that uses a different way of doing it on your own time, that isn't like the old code or the code they replaced it with?
I am sure that over time your coding has improved, and you might be able to find a different way to do the same thing that isn't the same as your old code or the code they used to replace it.
That is unless your employment contract states that even coding you do on your own time still belongs to the company. If so, wait until your contract is over, or the employer changes the contract to allow you to write code on your own time that belongs to you and allows you to open source it.
As long as the new code you write doesn't use code from the old code or the code that replaces it, nor is it written on company time or the contract doesn't somehow prohibit you from writing it so it isn't the property of the company you work for, you should be able to write open source code.
The old code can't be that good, as they replaced it with different code. Chances are that you can find a better way to do the same thing with different code that doesn't violate any contract you have with the company.
Anyway I agree with others, you should be talking to a lawyer instead of Slashdot.
Remember, Slashdot does not have a -1 disagree moderation, and no, troll, flamebait, and overrated are not substitutes.
just ask yourself What Would Larry Wall do?
"...you had to believe in it enough to take some risks.
I knew that I didn't dare ask the company lawyers for permission, because they'd have thought about it for something like six months, and then told me "no." This is despite the fact that they wouldn't be interested in peddling it themselves." -- Uncultured Perl By Larry Wall
At least that's how I understand copyright to be...Just cause I write a book that has the same plot as another (man murders woman, policeman chases murderer, policeman gets murderer) doesn't mean I breach copyright. Patent and IP is different though and if the code is under IP/Patent then kiss goodbye unless you can get the company to agree.
I am not a lawyer, seek legal clarity from someone who knows the law.
Karem
When all is said and done, nothing changes...
I met a hot chick at a party recently, and I made out with her in the back seat of my car in the parking lot outside. Since then, my wife has nixed the relationship, but I would like to share the pictures and video online with the greater community. The easy part is cleaning them up in Photoshop and applying a Gaussian blur to my stomach and the pimples on the girl's butt. The hard part is making sure that my wife will not kill me if I post them. I might suggest to her that all her lady friends would be jealous of her if they could see my hot body and my superior lovemaking skills in action, but so far I haven't been able to convince her. Has anyone else been in this boat or can refer me to some legal documentation that may help out?
If however the code was written on company time, company resources, or as part of your job, or it's a derivative product of what you do at work, as seems to be the case, then it belongs to the company. There are no ifs ands or buts about this and there's no legal gray area. You don't own it you can't release it.
You can ask your company to transfer copyright of the code to you, or you can ask them to release the code GPL, but if they won't do either of those things then there's absolutely nothing you can do legally.
If you were to release this code as GPL without one of those two things happening then the license would be invalid and you, as well as quite possibly anyone else using your code could be held liable.
You call a lawyer for the same reason you call a doctor.
You are paying for experience. You are paying for specialist skills. You are paying for someone who can look at the problem objectively.
You are paying to avoid the mistakes you make when you are trying to prove your manhood. You are paying to avoid being stripped to your shorts and pounded into mush by a team that knows its job.
Another waiver could be found from Java, OpenOfficeOrg or OpenSolaris. I think Sun requires such a waiver before your code is included into any of those.
I don't know, I always groan when I see stuff like this. I mean, you wrote the code and you obviously have a copy of it. So here's my question: what defines this particular code as a single entity, distinguishable from, say, if you were to run the code through astyle? What if you were to break up the code and split it around through a complicated set of macros not unlike techniques used in the Obsfucated C code contest? Can you argue software is the same because it provides the same functionality? Obviously this is impossible, and is in fact, discouraged, as often it's advantageous to formalize protocols for behavior so that different software can speak the same language. This fact didn't stop Blizzard from winning its case against [url=http://en.wikipedia.org/wiki/Bnetd]bnetd[/url]. What if you were simply to write the project from scratch and it turned to be shockingly similar to their code? Would it be illegal, then, considering it was a totally new creation? This is one of the reasons I support the GNU GPL. Because it is simply _impossible_ to come up with a reasonable way to license software. People are gonna steal it anyway if they can, and by sharing we promote the faster growth of the science as a whole, so why not just make code available anyway? That way rather than expending effort trying to conceal the fact that people have stolen code they just adhere to a very simple set of rules that anyone would be willing to and everyone's happy.
The problem is that 'Lawyering' has achieved critical mass. It's pervasive enough, and effective enough, that if you choose to forgo an advocate in any dispute, you lose. period. The other party is going to lawyer up and in the contest of lawyers vs. no lawyers, you're not going to win. Even if your case is obvious, you're still going to lose because you can't articulate its obviousness in the language of the court.
Therefore, if you know you're going into a situation in which there is a nontrivial chance of a dispute developing, it's unfortunately necessary to consult an expert to make sure you're not exposing yourself to unnecessary risk.
Can you be Even More Awesome?!
Look, you can not put the code that you wrote originally out. You were paid to write it for somebody else. But you can re-write it and THEN put it out with a caveot. That is, did you sign a contract with the company saying that the IP belongs to them AND does this code compete against the company? The reason that I ask is that nearly all of us have signed contracts that says IP belongs to the company. In most states (I am assuming that you are in America; but that is not certain), that would be limited to IP that is relevant to the company's focus (though the contract may say that the company gets all your IP). If the code is within the companies focus, you would be screwed to put it out there. Of course, I do note that the company bought a similar code from somebody and put it in. That implies that your code is not in the companies focus.
The other choice is simply ask permission. It is sufficient to get your manager's permission. Of course, I doubt that he will go along with it or even ask up the chain. If the manager does not wish to ask up the chain, then you can always ask corporate legal. Once you do that though, be prepared to be watched. They may decide to take reverse engineering in a negative fashion.
I prefer the "u" in honour as it seems to be missing these days.
The company needs to retain copyright, but release the code under the GPL, and have their employee continue to work on it until it is so good that the competition has to steal it. Then they wait until their competition has sold their closed-source product with the stolen code into critical application areas of their customers, then sue the competition for copyright infringement.
Much, much cheaper than developing a complete product on your own.
At least, that's what any smart attorney for your company who bills by the hour would tell your company to do.
paintball
It may not be possible in your case, but when possible, I use the GPL as a wedge to get the company to allow me to open source as much code as possible. We sell our software (only a few copies, but it's enough), so all gpl software and changes to those pieces and anything linking to GPL'd stuff needs to fall under the GPL as well (similar for LGPL, minus the linking).
So, I make sure to include code from GPL'd software, make it clear the advantage the tested open source code is to us, and get them to sign off on opening that portion of our code. It's a win-win really. Granted, the main app is still not GPL'd, and will likely never be (they'd go software as a service before doing so), but much of that is industry specific in my case, so I don't care... that can be reimplemented using all the framework pieces we've open sourced.
If you're utilizing GPL'd software, see if you can pry some of the existing code out with that.
I used to be a programmer for someone else, and I too was under the same restrictions -- as one would expect. When I started my own company, I decided to change things a little bit. I don't like restricting my programmers from owning their own code because it does an excellent job of eliminating their passion and the loyalty that programmers tend to have for their own programs. I legally own my car, but it's my mechanic who really owns it. Same goes for programming -- the programmer is the one that really owns it, independent of the legal ownership.
So my employee contracts adjust that infamous clause to say something to the effect of: "any code entirely written by you is yours to use any way you see fit, forever, for as long as you don't restrict the company from using it". It amounts to the programmer granting the company unlimited usage rights, and does not stop the programmer from using it or selling it or doing anything else with it.
The big condition is, of course, that the programmer have written it alone. If two programmers work together on a feature, then neither gets it. But a) that's rare: I don't think that two programmers should be coding the same thing -- extreme programming doesn't count as that's more supervisory than co-programming; b) individual functions and algorithms are not complicated enough to warrant multiple programmers; and c) my product is the entire package, not the individual functions, algorithms, and subroutines; so if my excellent custom e-mail client has an amazing sorting algorithm, my product is the application, not the sorting algorithm; in cases where my competitive advantage is indeed the sorting algorithm, then I promise that not only did it not rest in the hands of a sole programmer, but that I too was a part of its inception and design.
You are an employee, therefor everything you write for them is considered "work for hire" and therefor owned by them en toto in just about every state and that is pretty much the end of it. The ONLY exception to this that I know if is by a contractual arrangement. I am a consultant and depending on the project I have written contracts where I own the code but grant the customer an unlimited license in perpetuity to distribute the code within their organization and have all the usual language that binds all "assigns and receivers" yadda yadda yadda
As another poster said, don't let that stop you from making the request. Make your case in writing, but up front and honest about the upside AND the downside. Start with your immediate manager and ONLY if that person says yes, proceed with h(er/is) backing. If the answer is no, then like the other poster said, thank them for their time, be gracious and don't push it.
Hey KID! Yeah you, get the fuck off my lawn!
Hack the CVS, include some GPL code into the very first release and tell them its been GPL all along.
If you publish codes in your "own" company that means the people who you work for cannot claim ownage of it. Also use trademarks.
If he did it completely off work resources and outside the scope of work, its another story...
Not necessarily. It depends on jurisdiction. In CA, yes, it is another story. In NY, doesn't matter, still belongs to the employer. Consult with a lawyer to find out what applies in your jurisdiction with your employment contract.
This is one of many reasons that there are more IT-related startups in CA than NY...
If it is a program that your company just uses, (IE bought from a different company) then you can open source the rewritten version anytime.
If it is something that your company sells, then it is probably covered under a non-compete that you signed. Wait out the time delay after you change companies and then post the rewritten code under an assumed identity online. Don't tell your own company that it is you.
But do get the advice of a lawyer before you do anything.
Worse than DRM, software patents, and Verizon combined. Seriously, these fucking employment contracts are unconscionable.
Anyone who signs one is a sell-out to humankind. Your *ideas* belong to you and you alone. Works produced based on your ideas often belong to someone else if you have contracted for that, but YOUR IDEAS ARE YOURS no matter what illegitimate contract you may have been pressured into signing.
Remember that.
Read your employment contract and check what it says about software you write yourself, not on company time, at night and on weekends, and whether your company has any rights or might have any rights to that code. It is obvious that code you wrote _for_ the company is theirs, but any future work you want to do to that software might be theirs, too. They probably don't care, until they start to care, and then this might cause problems. For example, you might get a new manager at some time, and he might not like your face, and look how to cause you trouble.
I was about to post the same.
If the code is abandonware, tell your company that you are willing to maintain support on your free time if you can get the copyright on this obsolete code. IANAL but if you get the copyright, I believe it gives you the right to change the license and it may be easier to agree on than an open source licence that most IP people ignore or dislike.
The Wise adapts himself to the world. The Fool adapts the world to himself. Therefore, all progress depends on the Fool.
Why do people always say these questions don't belong on Slashdot? This question is the perfect example of how Slashdot *actually* works vs. how people *imagine* it works.
The question: I want to open source some code I wrote for work that the company is scrapping.
Expected Slashdot answer: Just do it! Don't ask The Man, he'll only push you down... OSS FTW!!1!
Actual Slashdot answer, overall: It's possible, but you definitely don't have the rights to that code, and it's probably not in the company's best interest to give them to you... so it probably won't hurt to ask, but chances are you'll need to find another project.
Included in that actual answer: details from other developers who've been in the same situation, and comments from actual IT lawyers who work with these issues.
So -- wrong place?
Yes, none of this is "official" legal advice (though about as close as you can get for free & online), and if the questioner wants to try something risky, he should pay to get that legal advice... but now he knows what "risky" even means in this situation (he didn't know before) and has some idea of if it's worth pushing for it (probably not).
So: can we just hash out a new feature for Ask Slashdot postings? Have the editor just flag the question as "responses might contain legality discussions"... and automatically include regular disclaimer text saying "reminder: comments in this discussion are not legal advice." Or add a checkbox to the reply form, next to "No Karma Bonus" and "Post Anonymously", called "Include Not-Legal-Advice Disclaimer"?
Then we don't need to fill the comments with all of these disclaimers and warnings, and the actual lawyers don't have to worry about someone pointing back to their comment as "rendered legal advice" and holding them responsible for it being a complete and accurate answer. And (this is not a response to the parent) we can start smacking down the people who always post "Don't ask Slashdot - get a lawyer!" to every single Ask Slashdot story, looking for cheap karma.
As others have said, you can't own an idea. This is the same misrepresentation of fact that Microsoft (ironically a company with no ideas of its own) routinely engage in over copyright.
Your idea is simply automating a routine trouble shooting scenario, so it shouldn't even be patentable.
Since it was not related to the primary product of the company, I simply asked if I could release it to the public. They agreed, so I slapped a company copyright on the file with a BSD-style clause and released it. Unlike you, I was not concerned about ownership - I just wanted to make it available. Now, this was at a startup run by engineers, so it was a pretty easy sell, but it's probably still worth a shot. Just ask - worry about the paperwork after you ask.
I'm a leaf on the wind. Watch how I soar.
Or, do not tell anything to your boss. Change the code; like changing names of the files, variables, functions. Add more features, cut some features and release it as open source.
I wrote a perl library for work that has nothing to do directly with the business we're involved in. (Imagine we make car parts (we don't), this library makes it easy to add text to PDF files (it does))
I felt that the work I'd done might help other people, and as we use many pieces of open source software, I felt it might be nice to "give back". So I asked the boss if there was any way they'd consider open-sourcing the library.
He went one step further and said not to bother putting the company name on it at all. He understood completely that as we use open-source software all over the place, opening something that wasn't business critical made good sense.
Maybe the OP's boss would see the same logic -- or even retain the copyright but GPL the code for the OP to work on in his/her own time.
There isn't even any question here. If you do work for an employer, then they have paid you for your labour. So anything you did while working for them is owned by them 100%. No question unless you have a different agreement.
The only way you can legally and morally open source this project is if they give you ALL rights to it.
You would have to have them sign something like...
"ABC Company hereby releases all rights legal and otherwise, responsibility and liability for Software X (see definition below) to John Smith from this date - Feb 6, 2008 forward. Etc etc."
A lawyer could help you with this... or you could write it yourself and they would have their lawyers look over it.
Either way, you aren't able to touch this without a signed release - then keep copies of this in several safe places forever... because you know damn well that when this becomes the next big thing (if), then they'll be coming after a piece of your pie.
doesn't mean it's not their property, and therefore not yours to give away / open source.
Just steal the code and do not use your real name when using it.
There's no need for the company to transfer ownership of the code to you. Just ask the company themselves to GPL the code. Then you can use and improve it just like any other GPL'd code. You don't have to "own" it.
I once wrote some code for a company, and ended up giving a presentation at a software conference about what we had done. Naturally, people were interested in seeing code examples, so I simply asked my boss, who asked the CIO if he would have any problem with the company releasing the source code via GPL. He said that would be fine, so we did it. It was as simple as that.
Medsphere calls itself the "leading provider of open source software in the healthcare industry". However it sued its CTO (Steve Shreeve) for 50 Million dollars after he released code to the open source http://blogs.zdnet.com/open-source/?p=858 Eric Raymond and I attempted to help negotiate a "peace agreement" to no avail. Recently this lawsuit was settled in such a fashion that it leaves the validity of the release up in the air. Thats troubling when you consider the details involved. Remember that *none* of these facts made the release valid in Medspheres eyes. * Steve Shreeve was the Medsphere CTO when he released the code. In a best-world scenario, that is who you would want to get to sign your papers. If you merely got your boss to sign off on your release, what is to stop your company from saying that the two of you collaborated to rip off the company? * The CEO claimed in the lawsuit that he was not informed, even though he had received an email about the release several months before hand. Just because you "tell" the higher ups means nothing, you must be able to "prove" that they released the code. * Medsphere says it is an "open source" company, your company is a proprietary company. If Steve Shreeve cannot get a fair shake at an open source company what hope do you have? * Medsphere claimed that the Board of Directors should have been informed about the release. Under this logic, even your CEO is not enough. Strictly speaking this is not legal advice. If your company is loyal to you, then you do not need to worry about any of this, the problem is that companies are rarely loyal to their employees. The issue becomes not "how do I avoid legal problems" but rather " how do I put the company in a position that a legal attack would be laughable". Here is what I suggest. * do not use your company email for proof. Use a personal email address so that you will have access to the emails if your employment abruptly ends. * Get something in writing signed by at least two different people who are both above you in the organization. * Make a public announcement that you will be releasing the code and make sure that your boss and others see the announcement before making an actual code release. Of course you will have to prove that they had knowledge of this announcement. HTH, -FT
Simply explain why you would like to release your code rather than letting it rot. You'll either be told "yes" or "no", and if the answer is "no" you just have to live with it. There's nothing magic here. If your boss seems agreeable, then it would make sense to get some paperwork signed. I wouldn't start out by handing your an employer an agreement to give away work they paid for and just asking them to sign it.
No, the worst that can happen is you gain a reputation for being a radical or a would-be pilferer, and gain the ire (or questioning eye) of management. You might start missing promotions and raises - even a more overt demotion of responsibility (with or without accompanying change in job title) isn't out of the realm of possible. A lot of this depends on your company.
Make sure you consider all the options (and the associated risk you're willing to take) before bringing up such things.
There is a lot of grey area with open source. Sometimes open source becomes closed, or has a closed fork. Companies compile open source in their closed source products. At least one Internet mail gateway vendor includes a closed source, proprietary version of Sendmail. If open source becomes closed, then why couldn't closed source become open?
That having been said, some battles are not worth fighting. Why make your employer suspicious about source code leaks?
It's very likely that they won't want the competition from your old code with their new product.
"It's the height of ridiculousness to say for those 9 lines you get hundreds of millions."
I bet you guys actually did real work in HS English class. Did you not learn how to properly plagiarize?
:-)
10 PRINT "Hello world."
20 END
*** BECOMES ***
13 REM \\\This code originally created by ME!
16 MESSAGE_PART_ONE$ = "HELLO"
17 MESSAGE_PART_TWO$ = "WORLD"
21 MESSAGE_CONCAT$ = LCASE$(MESSAGE_PART_ONE$) + " " + LCASE$(MESSAGE_PART_TWO$) + "."
25 MID$(MESSAGE_CONCAT$,1,1) = UCASE$(MID$(MESSAGE_CONCAT$,1,1)
28 OPEN "TXT.OUT" FOR OUTPUT AS #1
31 PRINT #1, MESSAGE_CONCAT$
33 CLOSE #1
36 SHELL "TYPE TXT.OUT"
39 GOTO 500
500 END
Guess what you open source. Let someone else make it efficient again, and it becomes original code and if it happens to look identical to what you had at the company, you have version differences to back up that you came up with it on your own.
It's a very BASIC skill, really.
See, in copyright law, it is perfectly fine for two people to have a copyright on exactly the same text, so long as they came up with it independently.
Now a patent is another ball of wax...
"They said I probly shouldn't fly with just one eye," "I am Bender. Please insert girder."
http://en.wikipedia.org/wiki/Work_for_hire
0100111001100101011100100110010000100001
Present it as a business opportunity for them. Essentially you should try to sell the idea of open sourcing the code. Try to make it look like an advertisement for the company etc. If it doesn't work, just forget the whole affair.
Open Source promotes Competition.
Closed Source promotes Collusion.
Clear the basic concept with your manager/division head (whoever is responsible on a management-level for that software, or was during its life cycle) and see about setting up a lunch meeting with someone in legal about getting the whole thing taken care of. You'd be surprised how far respectful diplomacy and buying people lunch will get you in the business world. Just don't try to slip it through and hope they won't notice, and definitely avoid statements like "I am going to open-source this, if you have problems, let me know ASAP" as it will put them on the defensive and undermine attempts to facilitate the overall action amicably.
The short answer: don't do it. The longer answer: If you worked on it on paid time, then the code is theirs, period, and even trying to clean it up on entirely on your own time for intended distribution would infringe on their copyright (unless you can get them to surrender that, which I highly doubt), so just let it go. At least you know for next time.
File under 'M' for 'Manic ranting'
I had my boss sign that disclaimer when I worked at AT&T. It was not difficult.
He needed 5 seconds to read it, and then 5 additional seconds to convince himself that AT&T had absolutely no economic interest in an Emacs mode for mapping between Danish and US keyboard layouts. And at that point it was easier for him to just sign it, than to come up with a reason not to (or convince himself that he doesn't need to give a reason).
If you make it longer or more complicated than that, your boss will have to think about it and look for traps, and then it will be easier to invent an excuse for just say no.
It is a general hint for dealing with a bureaucracy (and any organization is a bureaucracy): Make it less work for the bureaucrats to make the decision that goes your way, than to make a decision that goes against you.
[disclaimer IANAL]
You may try to litigate the employment agreement but basically as it stands everything you write they own. Some states such as California have a "what you do on your own time with your own gear" exemption however that has been subverted by companies who offer to "pay for your internet access". The reasoning goes (and I know at least one person trapped by this) that they paid for your internet access, thus they "own" your network connection, thus any work you do that uses that network connection they also own under the terms of their employment contract. Ever since I had a friend burned by this I refused to have my employer pay for my internet connection.
You need to go to your boss and make a request for transfer of ownership and rights of the code you wrote that the company is now shoving in the proverbial bin. If they accept then you need to get that transfer in writing then you can safely open source the code. More likely they will refuse, citing some bogus reason like "but people will expect us to support it" or some such, but what they really mean is that if your code is successful and begins to dominate its little market segment they will look like buttheads for going outside for this other bit of code which cost the company money to acquire and time to integrate. No, it is so much simpler just to say no.
--ChuckSo let me get this straight. You took the job, knowing this stipulation was in the contract. And didn't object to it. And now, you are looking for some fancy clever legality to get out of a job requirement you don't like?
Either ask them directly to release you from that clause, or else stop crying. If a person can't be trusted to do as they say, how can they be viewed with any credibility? But sadly, you are only thinking of yourself, and not at all about your obligations to your employer.
This is the type of thing the Software Freedom Law Center exists to help with. Visit our site at http://www.softwarefreedom.org/ or email help@softwarefreedom.org to ask for advice.
That's actually worse than the usual request for legal advice. Not only is he making the usual assumption, that Slashdotters are competent to give legal advice, but he's making an additional assumption, that he already knows the general legal issues. Both assumptions are wrong.
And that's why you don't go to non-lawyers for legal advice, or trust your own knowledge of the law, not when the consequences of getting it wrong are serious. People who consider themselves experts on the law, but haven't actually passed the bar, usually know just enough to get themselves (or anybody foolish enough to listen to them) in serious trouble. I speak from personal experience.
If the issue is a parking ticket or a small-claims action, then OK, play the amateur lawyer, it's not that big a deal. But if you're in a situation where the wrong move can cost you your job, make it hard for you to get a new one, cost you civil penalties, or even earn you jail time (all are possible if you're accused of stealing from your employer) then you need to be fucking careful. Put your ego away and go talk to an expert.
They original poster never said the company owned the new product; only that they are using a new product. If the company purchased a product (from another company) and is using that due to requirements, it's a different story. Suppose, as someone above suggested, the poster argues to open source the software and develop it on the side, while promising the software will be royalty free to the company forever. Eventually, it is conceivable, that the features of this open source software will satisfy these requirements, and the company will no longer need the product they purchased, thereby saving the company money.
They will think they are being hijacked.
At least ask if it something they would like to consider first before coming in armed with legally worded paperwork.
I'm someone tried that I would assume they were acting like some dodgy salesman who wants to get you (unknowingly) to move your gas/electric/phone to their equally dodgy company. I'd want them out ASAP.
I run a software company and we have released an open source product as well as we have kept some of our code closed. If you would like to release the source code under your company's name it should not make negative pr for the company. So the software must be good, right. On the other hand, if you would like to release under your own name it cannot make value for the company. So as an business executive I see no value to the company if the software is not released by the company.
Therefore the question is: does the company want to release the code or not?
The problem I see with "low buzz", "I would just like to add this to sf.net" kind of release is that the software most likely does not get much of popularity. Even an open source software has to be properly marketed to make it popular. So low-noise release will not create much of value for the company.
Maybe you can aim higher and tell our managers how this great piece of software could be marketed to make a good pr for the company.
Alternative option would be to tell how releasing OSS does not make any harm. That however would be far more difficult to sell to the managers. That is because business people tend to be worried every time something is released and they want to check if there will be any legal issues. That costs money and if there is no value for the company why to waste money?
Read the US Copyright Faq again if you don't believe me.
'Copyright does not protect facts, ideas, systems, or methods of operation, although it may protect the way these things are expressed. See Circular 1, Copyright Basics, section "What Works Are Protected."'
'What Is Not Protected by Copyright?
Several categories of material are generally not eligible for federal copyright protection. These include among others:
*
Works that have not been fixed in a tangible form of expression (for example, choreographic works that have not been notated or recorded, or improvisational speeches or performances that have not been written or recorded)
*
Titles, names, short phrases, and slogans; familiar symbols or designs; mere variations of typographic ornamentation, lettering, or coloring; mere listings of ingredients or contents
*
Ideas, procedures, methods, systems, processes, concepts, principles, discoveries, or devices, as distinguished from a description, explanation, or illustration
*
Works consisting entirely of information that is common property and containing no original authorship (for example: standard calendars, height and weight charts, tape measures and rulers, and lists or tables taken from public documents or other common sources)'
Apparently ideas cannot be copyrighted. Not only that but an employment contract cannot violate copyright law or the Constitution that copyright law is based on.
I know this because I used to work for a law firm for almost five years. They knew that ideas cannot be copyrighted, and told me to develop programs for them, even if they didn't own the ideas to them. Besides in my years not working for them anymore, I came up with new ideas to do things differently anyway that are not even based on the ideas I used when I worked for them. In fact, I have much better ideas than they could even hope to have that work better than what they had.
Remember, Slashdot does not have a -1 disagree moderation, and no, troll, flamebait, and overrated are not substitutes.
My Dad used to work for GE and did some work for them that they elected not to pursue and when he retired, he wanted to see if he could do something with it. He had to fill out several forms and shepherd them through several offices, but it was all standard stuff at GE, and they released the project to him.
Obviously, the way GE did it involved some overhead expense, but that appeared to be true with anything GE ever did. So the question is, can you make it worth the company's while to go through that for you.
If you can get them to sign a simple release, as some here have suggested. But as others have pointed out, they are in no way obliged to do so. In my Dad's case, he wouldn't be competing with anything GE was doing, so they went along with it. They maintained the program because they thought it improved morale of their engineers.
Good luck. If they understand open source, there are a lot of good points you can make to convince them.
Early in my career as a software developer, I signed contracts with clauses that said the company owned all IP that I created while working with them, period. Eventually I cottoned on to this. Now, I always make sure those contracts are modified to only give the company IP that I create while working for the company, in the course of my work for the company (ie: during my paid working hours). So I can develop my own stuff in my own time, without my employers having any legal claim to it.
This wouldn't help you with the ownership of code you developed at work, that's another issue of course. There's also a sticky problem if you create open source code, then introduce it to your workplace (as you might with any other decent open source software, "here's a free thing that solves problem X"). What if it subsequently needs modifications for use in your workplace (fair use of paid work time if management agrees), and then that code is to be contributed back to the open source project? What if a fork is made and used by your employer, and they don't want to contribute back, and they pay you to create the new code, but you also want the same features in the open source product? etc.
The usual company "agreement" (sign or work elsewhere) says they own anything and everything you do while you work for them. Some may limit themselves to the area you work in or that the company deals in, but I've seen agreements that essentially any idea you while working for them is theirs. I tried to alter one of these and the pressure to conform was intense and not at all subtle.
Only boring people are ever bored.
... Don't.
If you signed a document saying they own it, you simply can not put it out in the open without their written permission. END OF STORY.
Now many folks here will probably offer up ways that you could work through that, but if you put it out without their permission you make anyone who works on or speaks about the benefits of open source code, look like just another fool... because businesspeople don't take kindly to developers posting their property on the Internet for all to see/use/whatever.
If it's not yours, it's not yours to publish. Period. Go to the boss, who will go to the lawyers, and get permission FIRST. And realize that you're probably "wasting their time" in their eyes, so do it wisely. If they're not interested, drop it.
The only reasonable thing you may get out of the discourse is the same thing many people have done -- ask the lawyers to amend your contract to allow you to work on open source products in your free time. They'll probably want concessions that stipulate that none of this coding can be done on company time, and that none of the things you create off-hours compete in any way with your own company's products. I got such a clause written into one of my NDA contracts with a previous employer, and when handled correctly.
Example: "I need help. I am trying to contribute my time to a volunteer software writing project, but I am bound by the terms of my contract that all software I create is owned by the company. Can you help me? This project I'm working on in my free time as a hobby in no way competes with our products and services."
But in your case you've described, you didn't have that first, and the code sounds like it may be older but working code that directly competes with your current product. In that case, you'll probably never get permission to post it anywhere, and doing so could get you fired. Your call, but don't make the rest of us out to look like idiots who steal code and post it in public. We did our homework and already worked on changing our contracts. If you didn't, leave that code where it is, and talk to legal before working on open source projects. It's not hard.
+++OK ATH
Probably the best option is to get the company to GPL the code, but to retain copyright ownership of it. That way you and others can use it outside of the company, even contribute code back to the company. If it becomes popular, the company can sell it under a commercial license as well.
I don't know the legal ramifications or how the GPL stands on it but it seems to me that if it's GPLed and others contribute code the code then can't be closed, they could sell it with a commercial license but the GPL would allow anyone else to sell it commercially as well.
FalconShould there be a Law?
Well, my company provides space and a small allowance for us to organize off-work activities. They get no tax breaks for that.
It also organizes charity work (they don't donate necessarily) providing facilities and equipment while they are unused. NO tax breaks there neither.
In the ultra-cynical times we live I know all the "reasons" that a cynic will argue about why the above activities are to enhance profitability.
I know better: I know some of the people supporting these activities, they are really nice and principled and am sure when they have these ideas they were not looking at the balance sheet.
IANAL but write like a drunk one.
I used to work for Novell. Now, I know they're an open source company, owning a linux distro and all, but I worked for several years on the eDirectory team. The database used by eDirectory was minded by a couple of my friends. Eventually, eDirectory moved off into the dark corners of the company, and the FLAIM database was still being maintained by these two fellas. They asked, and were granted permission to open source FLAIM. It's a great tool, and we had a lot of great response to this move. I myself used to work on the foundation layer for eDirectory - an abstraction and portability layer that we called SAL. I asked, and SAL is now open source. You can find both of these projects on the Novell forge site at http://developer.novell.com./
Novell is a pretty forward thinking company, and has a vested interested in open source and the open source world. Your company might be different, but as many have commented so far, it can't hurt to ask. Just present your argument in a rational manner - and it wouldn't hurt if you could present some benefit to the company for making your project open source. If they say no, well, they have that right. Don't get angry with them, but don't feel ashamed for asking either.