This post is somewhat long, so I would like to start
by saying that this is very much relevant to PerlMonks
even though it is not about Perl or programming. It
is also very relevant to CPAN, perl, and the broader
open source community. This is about aspects of being
an employee which generally get ignored, and really,
really, really shouldn't be.

I will talk about New York State's laws, since that is
what I know best. However in discussions with legal
types it appears that New York's provisions are not
unusual, and therefore what I say is applicable in some
way to most of the US, and likely in many other countries
as well. I should also disclaim at this point that I am
not a lawyer, nor is this legal advice. But
the general outline of what I am saying has been verified
to me by both lawyers, and people who are merely
interested in the legal profession. I have also been
told that this is bound to become a huge issue for the
open source world.

Enough advertising.

In New York State there are three basic classes of
employee:

Hourly employee: If you show
up at work, punch a clock, and are paid overtime, then
you are an hourly employee. Factory workers are commonly
hourly employees. As an hourly employee the company owns
the hours you are at work, and has no other claim on you.
I believe it is uncommon for programmers to be hourly
employees.

Contract worker: In this case you are working
per defined contracts. The work you do on that contract
is (barring specific contract provisions saying otherwise)
owned by the company that has hired you. They have no
claim on your time or energy when you are not working on
the contract. Many programmers work this way. But if you
are (for instance) hired by a consulting company to work at
clients, then your employment with that consulting company
is not contract work, see the next option.

Professional employee: This is the rest of us.
Professional employees have employment that is not defined
by a clock or by a contract. In fact under the law their
productive output belongs to their employer, 24x7, 365 days
a year (366 on leap years). It is customary for these terms
to also be spelled out in employment contracts very clearly,
though truth be told most people read these, sign them, and
have never given the contents of those contracts much in the
way of thought.

This brings me to intellectual property law. Intellectual
property law in general assigns the rights to intellectual
property to the creator of an idea, work, or implementation.
That creator gains delimited control of their creation. In
theory the reason for this is to encourage potential
creators to create new things, and for them to pass into
the public domain. Or at least this was the reasoning that
Thomas Jefferson used (and he got it from French thought on
copyrights), though the reality in this century has not
matched theory very well.

But who is the creator?

One would think that the creator of a work is the author,
the person who actually produces it. But the realities of
life are not so simple. What if one person conceives of an
idea, and then gets multiple people to implement it? Is it
owned by the implementers, or the person who thought it
possible and paid for it to be done?

The legal resolution is the doctrine of a work for hire.
A work for hire is a work that you produced for someone else,
and they own all rights to any potential intellectual property
that might arise from that work. (Including, obviously, both
copyrights and patents.)

Now what happens if you combine these two legal areas?

The answer is unambiguous both in theory and practice. All
work covered under your employment terms belongs to your
employer. In the case of professional employees, this is
everything. If you go home and write something on the
weekend, you do not own it. You might be unaware of this
issue and naively put a copyright notice on it, then
distribute it. That was your mistake.

Now let me make this personal.

I am a professional employee. I signed a routine employment
contract while I was still pretty much of a novice as both a
programmer and an employee. As is common, 6 months later I
had completely forgotten about the terms of the contract and
was blissfully unaware of the laws I live under.

My bad.

Over the course of this job I have slowly become more and
more involved in open source work. I write software for fun
and release it. I have put code into posts here, released
stuff on CPAN, and even contributed a core perl module. All
of which I thought I had the right to do, but as it turns
out none of which I did. There isn't even a legal issue to
contest, I simply didn't know better.

My very bad.

As of today here is the status. This came up from an
incidental issue about a month ago. I have been told that
if I wish to continue being employed, I cannot post code.
If I continue being employed, then I will be admonished for
the code I have released so far. If I leave my employment
then the decision about what happens with any and all of the
code of mine that people here have seen is not mine.
(Stupid comment removed.)

I live in NYC. It seems likely that my wife is going to have
no option about moving any significant distance for at least
a year. I am carefully considering my employment options. I
have a likely job prospect near Philadelphia which
would allow me to work on open source stuff. That is farther
than I want to commute, and the pay cut would be painful,
plus it does not resolve the other issues. I have not
seriously searched for any potential jobs which are closer.

Now my food for thought for everyone is this. How many more
people are in the same position I am, and are not aware of it?
How much open source software has been put out there by
authors who thought they owned rights that they do not? If
you are an employee, are you one of them?

These are, as I have just learned, extremely non-hypothetical
questions.

UPDATE
There is, considering the circumstances, only one choice for
me to make which is not abysmally moronic. Do not expect to
hear much from me in the future.

The situation in California is much more benign. You're protected for work that you do on your own time, with your own equipment, that doesn't rely on non-public information gleaned from your employement. You can be further protected by an employment agreement.

Every place I've worked in Silicon Valley over the the past 20 years has had some form of "Intellectual Property" agreement that they require employees to sign. Some of these were benign, and reaffirmed that anything you did on behalf of the company on their time and equipment was theirs, and what you did on your own time was yours. But over the past decade, the gradual drift has been toward the more Draconian, because this is what lawyers are advising companies to do. The opening bid is now often "we own you." The trick is to realize that this is most often the company's initial position in a negotiation, and that pushback is possible.

Here's what's worked for me:

Ask for a copy of their Intellectual Property Agreement before you accept the job. Once you sign on, your negotiating leverage is greatly reduced. Plus, asking in advance signals that you're savvy.

Make a list of what you want to protect. Do you want the freedom to contribute to CPAN on your own time? Do you want the freedom to contribute to an Open Source project? The freedom to write articles? Make a list.

Protect your existing Intellectual Property. Make a list of what you've already done, or have in progress, so that there's a written record of what you're staking prior claim to. Most companys (in Silicon Valley, at least) will ask for such a list, so be prepared.

Update the Agreement. Strike out parts you aren't willing to abide by, and be prepared to offer a story about why this isn't going to be a problem for the company.

Make a low-key Counter. I've found that a low profile counter works best. Hand back a marked up, signed copy of the IP agreement, and say "Here's what I'll agree to. Please look this over," and leave it at that. In 6 out of 7 times I've done this, there's been no pushback. End of story. In only one case, my most recent employer, has a company countered. I was ready with a story about how my side project wouldn't compete with their business objectives, and how it actually enhanced the skill set I was bringing to the table, and they agreed.

Think through what you're willing to give up. The quickest way to feeled screwed by a negotiation is to go into it without knowing what your limits are, and find yourself pushed past them.

Be prepared to use Judo. If they say "our lawyers insist that you sign this," ask "do you work for your lawyers, or do they work for you?" If thay come at you with "we don't want our employees to have side jobs," counter with "contributing to the Perl community isn't a job. It's education. Do you want employees who don't take care about their own education?"

This has worked for me, in Silicon Valley. That's not to say that there are lots of unreasonable employers out there this wouldn't have worked with. YMMV.

Several years ago I worked for one of the large credit card companies. Prior to working at this company, while at another employer, I had developed POS terminal code on the side. I continued to develop POS terminal code on the side while employed by said credit card company. The credit card company had me sign a typical employment agreement containing an intellectual property clause as discussed in this message thread.
I eventually was assigned to a project to develop a special prototype terminal and to reduce the project time I reused a substantial amount of my previously developed POS terminal code and retained my copyright notice which was displayed when the prototype terminal initialized.
Said credit card company put about 5 or 6 prototype terminals at various banks who immediately wanted to know why my copyright notice displayed during initialization. I explained to the credit card company management about the previously developed code. They responded by asking what it would take to remove the copyright notice. Off the top of my head, I immediately replied that they had to purchase a non-exclusive software license from me for X-dollars. About a month later, the credit card company's legal department notified me that there was an apparent conflict of interest. I agreed that that was probably the case (I essentially said "yeah, so what?"). A few weeks after that I received a check from the company for the software license. Go figure. The company eventually went on to get a patent to cover some of the application specific stuff in the prototype terminal devices that I had developed under this project and I didn't balk when they politely (really) asked me to sign a patent assignment agreement because the patent didn't cover any functionality of the previously developed code that I brought to the project.
YMMV

My employer's "opening bid" was that they owned everything I
did, including the letters I write to my granny. I edited the contract to replace that with something
reasonable - that they owned what I did on their time and
anything else I did which was *directly* applicable to my
job. That's the last I heard about it, and I am assured by
one of my union's tame landsharks that because they have been
paying me for the last several months, that constitutes
acceptance of my revised contract. At the same time, I also
excised a couple of other 'orrible clauses from the contract
too, such as giving up my rights under the EU Working Hours
Directive.
I'm glad I could call on my union for help. Everyone else
should join a union too for the same reasons.

AFAIK there are no unions for programmers here in the US,
I'm pretty sure this has been brought up on Slashdot before.
One reason being (if I'm not mistaken) is that
unionization of "professional" employees is
difficult (illegal?)?

When I was in college I knew a very talented CS major who graduated and was immediately hired by IBM as a programmer. He told me that when he started the terms you described were very clearly laid out for him, that essentially IBM owned any idea he had... even if he thought up a novel solution to a problem while taking a shower, IBM owned it. (This was in Texas, about 10 years ago, BTW.)

As you can imagine this puts quite a damper on similarly situated employees such as yourself. However, this same guy said that this was the reason why many of the other programmers he worked with had "extremely talented spouses." Just because your employer owns YOU doesn't mean they own your wife. Ya wanna contribute to CPAN? Wanna release some cool groovy stuff? Release it under your wife's name and you're all set.

Of course, this assumes you trust your wife, but when it comes to Open Source stuff that doesn't really matter, right? You give up some level of notoriety doing it this way, but hey, what choice do you have?

Me, I'm an hourly employee of the Federal Government, which means the government only owns the stuff that I create on government time... and the really cool thing is even the stuff that the government owns is still releasable to the Public Domain because it was created with taxpayer dollars (and isn't otherwise secret or restricted.)

This came up from an incidental issue about a month ago. I have been told that if I wish to continue being employed, I cannot post code.

This is extremely bad form on the part of your employer. Companies that implement this type of policy are shooting themselves in the foot, unfortunately they can do a lot of damage to others, including free software organizations, in the process.

I'm not a lawyer, but it seems this all pretty much comes down to the agreement that was signed. A brief reference on the issue is available here. From the part that describes what a 'Work for hire' is:

Section 101 of the U.S. copyright law defines "work for hire" as follows:

a work prepared by an employee within the scope of his or her employment; or,

a work specially ordered or commissioned for use as: a contribution to a collective work, a part of a motion picture or other audiovisual work, a translation, a supplementary work, a compilation, an instructional text, a test, answer material for a test, a sound recording, or an atlas; or,

if the parties expressly agree in a written instrument signed by them that the work shall be considered a work made for hire.

Assuming this is still relevant, Number 3 is the problem. I haven't heard of anything that specifically says employers own all the rights to all work done by professional employees by default but if the contract signed says so, there doesn't seem to be a whole lot you can do.

Excellent post though. This is an issue that has important consequences for free software and should be receiving far more attention than it has been.

You're company doesn't have to be right to sue you and they usually have deeper pockets. Who's to say if the work was done before or after work hours. If you worked at a network company and then at home "invented" some network device, your employer would have a good chance at winning a suit regardless of merit.

Very true. Unfortunately this is a reality of most legal systems. It's hard to fight against those with more money, even if you are in the right. Hopefully the onus is on the employer to prove you created it during work hours, either way it's still a very difficult situation to be in.

One problem with all of this is the impossibility of keeping your
employer constantly updated on what you are doing.

I have written several programs in a single day, and it could be a bit
hard to keep them updated all the time on what I was doing. The whole
idea is nuts.

Aside: Everyone should do is check their state's coercion laws. In some
states, being forced to sign a contract to get a job is considered
duress.

Dealing with code sharing at work

Almost all of my employment contracts have limited the company's IP
claims to work I did specifically for them. So far no company has
contested work I did on their equipment and time. Of course, I've
always told them what I was doing. A lot of companies are far too lax
about this. I often asked for a more formal arrangement than my
employer did.

I have both taken my own code and used it at work, and used code from
work elsewhere. I documented what I did, made sure my company knew, and
developed a few habits along the way that seem to help.

The first conflict I had was because I worked on classified systems, and
needed to move code in and out. I learned to sanitize code, and move
useful code without giving away proprietary information. It had to pass
a review before leaving. Bringing code in was usually pretty easy.

I can't say enough how writing clean and modular code makes this whole
process much easier.

Never keep what you are doing quiet. While I have had to take this
approach before, it is far better to document what you do and make sure
people know it. Don't be ambiguous: be explicit about what you are
doing and what you intend to do, and what rights you want them to have.

For any code that I gave my employer, I made sure it was copyrighted and
also had a license granting them unrestricted use. This is very
important. You really can screw things up for your employer if you are
ambiguous about their rights to your work.

So far, most employers I've had were happy to find I already had code
which could do the job. Unfortunately many of them are way to careless
with copyrighted information. In some ways I have had the opposite
problem from what Tilly had.

Everyone should also spend some time researching ideas like "shop
rights", where you own all code you write, regardless of employment, and
grant your employer full rights to use the code.

IMHO, it is very rare that an employer should find this unacceptable.
It gives them all the rights they need, and you retain your natural
right to what you create. Obviously there are issues regarding
internal/secret/patented information, but reasonable people can work
that out.

Good Post++
Sorry to hear about your circumstance.
When I was a teen, I started programming to make games.
After a couple of years I decided to take a job at a game company to finance my own endeavors.
Before I took the job I thought, Hmmm.. Will they own the last two years of my life?
I better look this up!

I found "The Software Developer's and Marketer's LEGAL Companion" by Gene K. Landy.
It was a great book with clear explanations. Covered more than I wanted to know.
It came out in 1993 so the web and some of it's issues don't come up but I believe
the book is still highly relevant. It put me in a much better position later on when negotiating with clients and keeping my code mine.

I think everyone who seriously programs should have at least a base understanding of the law as it applies to them. If not, you never know when
you'll get your ass in a sling.

This is very very disturbing. I truly feel for you, personally. Are there any sites that indicate which companies do (and don't) have such a policy?

Another question that arises would be the following (very non-hypothetical):

I am currently an employee of a consulting firm, working on some client site doing programming work. When I'm not working there, I have a second job, as a contract worker, doing different programming work. The contract specifies that all work done for the moonlighting job belongs to the contracting party. That's cool.

Does it also belong to my consulting firm?!? *blinkblinkblink* Who owns it? *sighs* As I've only done design work for the second job, it hasn't gotten to your point, I don't think. But ...

------We are the carpenters and bricklayers of the Information Age.

Don't go borrowing trouble. For programmers, this means Worry only about what you need to implement.

Tilly, very unfortunate that they've decided to be so hard-nosed about this! Thank you for another excellent reminder to us all that good programming isn't just about code, it's also about copyright issues, employment issues, and often business sense.

I want to make sure to point everyone to theUS Copyright Office. This is an essential resource when it comes to understanding your rights and responsibilities. Especially of note is Circular 9, "Works Made For Hire"...

Of specific importance here is the quote from page two, "Section 101 of the copyright law defines a "work made for hire" as: (1) a work prepared by an employee within the scope of his or her employment;". The obvious implication is that if your employment is that of "Perl Programmer" or just "Programmer" that your work could very well fall into that scope, even if done outside of the office.

Another good resource is the Department of Labor's pages about the Fair Labor Standards Act, which sets out at a Federal level certain definitions such as what it means to be a "professional" employee. Programmers typically meet one of the professional designations, since there is one in there especially for programmers and systems analysts-- which is why there are few hourly programmers who are not contractors. But from a Labor perspective this means certain things about pay, hours, and duties, not about copyright or other "rights" an employer may or may not enjoy.

Copyright is not always black and white in practice. It may well be that your employer's lawyers have said this, and that even other lawyers in the state agree, but that does not mean they are correct (of course, if your state law somehow trumps a federal law, they may well be). Without clear precedent or a decision from a judge, believing lawyers is a bit like believing salesmen. They tell you what they want you to hear-- it's their job to promote their employer's interests after all. More important is the contract you signed, and whether it is valid, in whole or in part. If you signed a contract that stated all of your programming work belonged to your employer, then that would seem to be an assignment of rights (whether this is possible with works that have not yet been created is another question).

I can't say I think they have many grounds to demonstrate harm that would justify monetary damages in a civil case. They might file for some injunctive relief (i.e. "what happened to all of tilly's great code?"), but how would they evaluate damages? What harm could they demonstrate has been done? Can you imagine a jury awarding punitive damages to your employer for your crime of being helpful?

Please note: I am not a lawyer, although I often wish I were and frequently consider becoming one. The foregoing does not constitute legal advice and is for entertainment/educational purposes only. If you need legal advice, please retain the services of a licensed lawyer in your state.

I've been aware of this ever since I took full time employment with my current employer. It was even pointed out to me that legally my employer could confiscate my home network claiming that any work I did to make it function was their 'intellectual' property.

It is a condition of employment that precludes open participation in Open Source... Or even working on one's own website/domain as it no longer truely is one's own.

I have searched the GPL FAQ, and found a few pieces of text that relate to this issue:

The case when someone else might possibly claim the copyright is if you are an employee or student; then the employer or the school might claim you did the job for them and that the copyright belongs to them. Whether they would have a valid claim would depend on circumstances such as the laws of the place where you live, and on your employment contract and what sort of work you do. It is best to consult a lawyer if there is any possible doubt.

If you think that the employer or school might have a claim, you can resolve the problem clearly by getting a copyright disclaimer signed by a suitably authorized officer of the company or school. (Your immediate boss or a professor is usually NOT authorized to sign such a disclaimer.)

...

We also ask individual contributors to get copyright disclaimers from their employers (if any) so that we can be sure those employers won't claim to own the contributions.

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

This doesn't solve existing problems, but might help people who want to release software under the GPL.

It is not clear that a contract is invalid because an
employee exceeded his authority when making it.

Being able to pull out a disclaimer signed off by a co-worker
or workers, especially for a sum, would muddy any actions considerably.
Even a small sum. A petty cash sum.
Whether that co-worker followed all the company procedures
in filing the contract, getting approval, etc. should be moot. Those are issues between him and the company.

The same basic principles that give an employer rights
to your home work, bind the employer to the actions
that your co-worker takes as an employee.
This is basic. If a Wal-mart employee
shoves a mop handle into your herniated groin, you would
take action against Wal-mart not the employee.

Reasonable-man-being-prudent test would seem to be an issue,
for the co-worker to avoid problems.

If a company pursued action, an immediate & publicized countersuit for breach of contract, or harassment
would give many corporations pause.

There was a scam where a disreputable plating company
would promise many coats and a finish like that on the
X pens. They
would get a 'small sample order' from a junior purchasing
agent or whomever. The price would not be nailed down, just that
it would not be much. When the purchasing company wanted
to not pay the $50,000 to $100,000 bill, the scammers
would go to court for breach of contract and deadbeat-itis.
This was apparently a successful scam. I knew one
scammee, his fortune 100 company paid, they didn't want the publicity.

This is just another example of how employment laws in the US are skewed incredibly towards the employer - add to that the deceptively named "right to work" laws. Having come from a country that for 100 years or more has a much greater tradition for protecting the rights and conditions of workers, I am sometimes appalled at what I see here. (remember, not all the right wing propaganda condemming trade unions is true)

One method that would be well worth looking into is to work as in independant contractor - set up your own company, and have that company employ you. Your company then contracts you to the client, and there are quite specific terms and conditions on IP, copyright and the rest.

The other approach is, at offer of employment time, ask for and review a copy of the company's IP agreement, employment contract and so on - all the things that you are being told to sign - and strike out those clauses that infringe on your non-working hours activities.

Well... it's sad but it's true... That's what we call capitalism ;-)I come from Poland (Europe) and here we have the same (and as a matter of fact - i'm not a lawyer). As ussually everything is in a contract you sign (everything what is not forbiden is acceptable :->), but i've never had heard about anybody here in situation like this.

I have a comfortable situation - i work for a company as a 'hourly' employee. During that time i work for the company - meeting clients, programming for them (clients), etc. The whole thing is that my company allows me to work for clients (i've met during my hourly employement) when i finish my work and go home... and then the company has nothing to do with that - it was my free time. My contract says nothing about that kind of work.Nearly the same thing is with the code - i can write anything i want and release that code as long as it's not a part of the code i create for a company, and in my case it's a matter of trust and company culture rather than any paper i signed.

Situation in Poland:
Following the intellectual property law, everything you code (create) while working for your employer belongs to him, becouse you are implementing his project or doing what the contract says.
On the other hand, you are the author of the code and still have some rights...

Right to work laws aren't deceptively named. As a Texan, I have the right to work without being forced to join a union. I don't want to join a union; the union's chief gripe when they organized it was THAT WE WERE NOT CONTRACT EMPLOYEES AND THEY WANTED US TO BE UNDER CONTRACT. If I'd gotten into that mess, I'd be in the same boat as Tilly. As it is, I am not under contract, which is what I've always wanted, and now what I really want. Unions are not magic pixie dust that always make things better, and I am thankful that I do not have to pay dues to such an organization.

This is just another example of how employment laws in the US are skewed incredibly towards the employer

Er, the laws vary and can be changed by contract. More over in many states it is likely that if you can do a reasonably good job of showing that you worked on code on your own time using your own resources and your employment contract doesn't explicitly claim non-work activities it is yours.

I don't see any problem with laws that say "if the employee agrees anything they own belongs to the company". It is quite unfair if that happens when you don't agree. I think for the most part companies try for "all your work belong to us" so if you really do something on their time and claim you did it on your time it won't matter because they will still own it. As others have said you can frequently alter the contract before you sign (well you can always alter it, they frequently accept the changes).

Amazing. I've always known about this, but I've never heard of anyone actually being called on it before unless they were releasing code that was directly relevant to their job. Rational companies know that trying to enforce this will just piss off their employees.

Assuming you have a good rep at this company, are they really willing to risk losing you to stop you from doing this? It sounds like one of those lawyer-driven things that the people who actually appreciate your work there would not stand for if they knew about it.

Anyway, I think you can find much more open source friendly jobs right here in NY. I interviewed at a couple of places that did lots of perl and were well aware of the relationship their employees have with the rest of the perl community.

The only (other) time I have heard of this being enforced is in a totally unrelated venue. The rumor's behind why Tim Burton chose Disney/Mirmax to release "A Nightmare Before Christmas" is that he came up with the story idea while he was an animator at Disney.

This is also supposedly the reason why HP had first crack at the original Apple, but turned it down. Wozniac had a clause in his contract.

This is the standard clause for professional creative development, and is one reason why at a certain level most creative professionals become independant contractors.

Greetings,
I have been in a vaguely similar situation with my previous work place, an internet provider.

A co-worker/friend had discovered a modems-on-a-PCI-card piece of hardware, and during a meeting at work it had come up and we were discussing possibilities from it, specifically low-cost dialin RAS boxes.
A number of days later I had decided I wanted to pursue the opportunity, and discussed it with my friend further, and even had gone so far as to have a short discussion with the manufacturer about possible demonstration cards for evaluation.

Later, in another meeting, I mentioned the discussion with the manufacturer with my co-worker/friend, and the boss blinked, sputtered, and said that the PC RAS box was now part of the company business plan and that he intended to begin an investigative project soon and that I most certainly could not entertain such notions.
I was most irritated.

Oddly enough, the "Business Plan" never came to anything, and after I left (although entirely unrelated), the business very nearly went under and any "plans" were scrapped for a simple "Stay Afloat" objective.

JP,
-- Alexander Widdlemouse undid his bellybutton and his bum dropped off --

There is, considering the circumstances, only one choice for me to make which is not abysmally moronic. Do not expect to hear much from me in the future.

Incidentally, this is my last post to PerlMonks for a long, long time...

Um, should the occasion ever arise and your PHB's1 even wonder what your friends think of all of this--and allow you to offer said opinions in a way that won't get you fired--tell them this:

OMIGOD! YOU KILLED TILLY. YOU DIRTY BASTARDS!2 (and no, I won't massage it this time. I'm pissed; it's just stupid.)

<Update time="after some sleep"> - Why am I pushing back on this? Because it's plain wrong. It may be legal, but it's not just.

Following growlf's lead, here's my free advice to the people in question: Look at it from the employee's perspective. If you do not allow an employee to grow, create, and innovate beyond the projects you assign, then how do you expect that person to take you beyond your current level? If you do not allow someone the ability to learn new ideas or to create new ways of solving problems (and take credit for that), then how do you expect to be able to attract new talent in the future? You may gain a software patent today, but I believe you've completely shot yourselves in the foot with regard to future solutions. Do you think tilly has any motivation to innovate for you now? I seriously doubt it. All you've done is ensure that he does not cross "the line." You've made a faithful servant and lost a creative genius. You may gain a temporary edge, but at a serious cost.

And before you dismiss me because I called you names3 and apparently don't understand "business," please consider this little trick of salesmanship that I learned a *long* time ago: "the wise salesman knows when to leave some money on the table." Consider why so many people are ticked at MS.

Normally, I don't push back; I adapt. I adjust. I find a compromise that serves everyone's purposes, for my interest is in getting the job done and in serving the company's needs while also serving the employee's. While I know no specifics, I believe I know tilly well enough to say that he enjoys helping others learn. This is one of his best attributes; he's good at it.

And, in case you're wondering, yes. I have signed such agreements. I've also crossed out sections in them that claim full ownership, because the rule of copyright is "you can copyright the expression, but not the idea."

I strongly enourage you to reconsider, espcially in light of recent legal opinions along similar lines .</Update>

(Between you, me, and the fencepost, I'm glad you're not hiring right now. This sort of b/s is the sort of thing that really burns my starch. I would probably quit over it.)

You have, as always, my full support. Please, start looking for an agency that will allow you the luxury of a real life and an identity beyond their grubby little paws.

Damn. Learning Perl and learning to do it well just got a lot harder--with all due respect to those who need it. Except the PHB's you work for. They can get an effing life.

--f

P.S. And, yes, I'm swearing outright because I'm so ticked about this. I suppose it's just as well I *don't* know who you work for. I'd organize a boycott and send nasty-grams to the editor of the local paper, the Times, the Post, and anyone willing to post the ravings of an erudite lunatic...hang on. The Washington Post did that already. Um...well...geez...you know what I mean.

I'd like to see the EFF take a case like this and go all the way to the Supreme Court of the United States. The concept of "work made for hire" is just another part of the Intellectual Property system in the United States that is crying out for adjustment, so that the rights of the actual author and the public are brought into balance with those of the employer. Practically any creative person who works in the IT industry could devise a more equitable system than this.

I would first suggest reading
the statute
(section C in particular for the statutory per incidence
liability) and calculate the total liability if you
have (as I have) an established history of emails, posts,
etc, many of which could qualify as copyright
infringements on works for hire. Then discuss the odds of
success with a competent lawyer.

I have done something that is really stupid. But I am not
that stupid.

tilly you were definately forgetful, and possibly shortsighted but I take issue with you calling yourself stupid. You might be kicking yourself for not avoiding trouble, but it sounds like someone is taking a personal interest in making your life hell. It sounds like you are being bullied, albeit in a much more sophisticated way than your average schoolyard bully.

I know the feeling when you walk into a room and some smiling arsehole in a suit ruins your day, month, and year. I faced almost the same thing at Christmas time (they delivered their intention to charge me the day after Christmas). It ruined my holiday, and I still feel tense every time I think of it.

It sounds like you have some people on your side, and I hope that your admonishment is nothing more than a slap on the wrist. I certainly appreciate you are caught by your contract, and that he who has the most lawyers wins. If you can get away without losing completely, you are doing allright.

On a slight tangent, I can recommend public service (federal enmployment?) work (such as I am in now). Admittedly I am earning less than any of my friends (at the worst, half of their salaries), but the working conditions are great, the hours are good, and they do respect your rights. Money is nice, but I'm really enjoying going to work, knowing that not much at work can escape into my private life.

Best of luck,

____________________
Jeremy
I didn't believe in evil until I dated it.

How horrible to hear about your difficulties with your employer. My heart goes out to you. Know that we are all behind you whatever you decide.

IANAL, but it seems there must be some reasonable limit to what your employers can claim. Obviously they do not own your every utterance, and code written to be illustrative in an online discussion I would think is part of the code as speech thing. Programmers socialize by writing code to each other. Perhaps you can make a list of all of your past work and which ones your company finds threatening to its business. A list of meetings with date/time/participants when your open source work was discussed would be very useful. You don't get brownie points for a pyrrhic victory, best to keep emotion far away and rely on professional advice.

Despite my own anger at hearing this, my guess though is that getting them to reduce their demands and then buckling under what's left is going to get this finished the most quickly. I hope they will relinquish demands on your your open source work, which of course they can still use according to the open source liscenses or perhaps license from you in some way.

But the most important thing is to get your personal situation stabilized and take care of your family, as you have pointed out. Having gotten myself screwed (more than once) I have generally found that getting out of a situation and starting over is more satisyfing, and more lucrative, and that the main problem is sticking in the same place under a capricious evil-minded boss. I don't know if it is possible for you but as soon as I got out of one bad situation I made in two months double what I had made the previous six. You are going to come out of this stronger in some way, but get out of it as soon as possible. You won't be as productive or clear-headed for your work or family if you feel like you are ekeing out days in the dungeon. Your employer must also understand that it is killing the goose (a smart, creative, overtime worker!! egads!!) that lays the golden eggs. They soon will, as soon as you stop helping them cover up their complete lack of brains.

Good luck Tilly. Whatever you choose we're behind you. Hope you get life back in order Asap, love your wife, have a couple beers, and come back to tell us about how great things turned out. If there is anything I can do email me please, com . telebody @ mattr. Best wishes.

*Free advice to Tilly's employer, undoubtedly sifting this for incriminating evidence:
Tell Tilly it was all a huge mistake. Offer him a raise or pay him two months' salary as an apology. Offer to renegotiate his work contract so that he can continue to be productive for you while doing his hobby, which is contributing to the open source community, and if you like something he has, buy a license if necessary! Better yet, use it and his friends' work for free! Publicize your name and how you are a forward-looking company, and you will do wonders for your future bottom line with the support that will come in. Fail to do so and you can always wonder when the other shoe will drop. Perhaps a new product will one day inexplicably come up against a passionate, superior, free open source competitor. Ever have an elephant by the tail before? Tilly is one of the highest ranking members of a global community that can eat your nuggets for breakfast. Think. P.S. The legal minds on Slashdot (surf at level 4) think you are out on a limb. Cut your losses while you are ahead. Sincerely, Matt Rosin.

change the license to future releases of Perl: everybody else gets to go on using it for free, but Tilly's employer has to pay a fee. open source doesn't mean helpless.
waive the fee if they agree to release Tilly's work.

It is not exactly as simple as I laid it out in my post.
Were I in a different state, or were I doing something in
my spare time that in no way related to what I was
employed to do, then my situation would not be entirely
clear-cut. Talk to a competent lawyer for details, and be
aware that details sometimes are going to include words
like "might" and "maybe".

Incidentally, this is my last post to PerlMonks for a long,
long time...

As a professional, I was disheartened and angered to hear that your company could be so short-sighted as to threaten you with this, and it made me concerned regarding my own situation and that of the countless others that post here, for whom programming may be part or parcel of their jobs.

As one who has has been lucky enough to benefit from your wisdom and experience, both from your responses (to posts and directly) and from reading your posts on other topics, I was deeply saddened for you, and for the loss (I hope only temporary) to the community of your insight.

I understand your reasons, though, and I truly hope that the "long, long time" is not so long as you fear. I will look forward to the day when once again we may enjoy enlightenment from your presence.

Well I just want to say thank you. You're contributions here have been immensely helpful and informational.
Good luck with your situation and hopefully you'll be gracing us with your presence again soon.

Unfortunately, in most states, the contract is left to determine the
level of this "relation" to work. Meaning that if you sign a contract
(such as it sounds like Tilly has so unfortunately done) it can define
"works" extremely generally, yes - almost everything you do CAN be
deemed as "theirs". This sounds preposterous, but it is sadly
true. The best thing is to read those contracts very carefully or
have your own lawyer look at it before signing, as I do now.

This is a point of law I have had a run in with myself not to long ago, with
a company in Portland Oregon. For me, the final result was - I walked off, left
my hard work behind and went to new pastures - because I lacked the cash/desire
to fight it, and had done a similar "my really bad". Since then,
I have found that most employers know they have you at a disadvantage and will
press the issue of allowing them this feudal "right" of choice over
your creations - or deny you employment. I think that some legislature to
prevent such bullying is needed, and have written my congress-people concerning
this. However, I think it will take a mass outcry before anyone really takes it
seriously. Till then - read carefully, push back as much as you can on the
issue and find a balance of earning a living and keeping your freedom of
creation. Perhaps, write your own congress people with your fears and add
to the urgency for them to listen

Tilly - I really feel for you man. This sucks bad - and it sounds like
you are even more entrenched than I was and cannot extricate yourself with out
extreme cost. This frustration must hurt terribly - I wish there
was something we could do for you.

Nope. Take a look at most intellectual property agreements out there, and you'll see that employers gain the right to *any* and all "inventions" you may come up with when employed by them.
I count my lucky stars that the company I work for (Mitel, formerly E-Smith) has a proviso in their Agreement that excludes any Open Source development work I do. Quite forward-thinking.

It's all transparent slavery. You need to work and if you
are not working and looking for work, you will sign anything
at some point if you are desperate enough and/or unwilling
to live on the street.

Be fortunate
you have a job. Follow their rules
and look for other employment if you are unhappy with them or
suggest a new contract.

When looking for your next job have your
own contract prepared. To be a great service to the
Community make your contract available and ask for suggestions
to ensure that you are protecting yourself while at the same
time the employer. It is critical that the
employer feels protected. Remember the
employer is investing a lot in you, the larger the firm the
more it costs them to get and keep you. As a Community
we need to do the same
for our rights as creators, innovators, and hobbists on our own
time (if there is such a thing), that companies do for theirs.
If we fall into blindly signing contracts because
"that's what I have to do
if I want to work", then the companies retain the power and
in my opinion stifle free thinking. If I have a great idea
and think the company may stake claim to it even though it
is unrelated I may stop sharing ideas and do only what I
am told and request very specific details on each stage so
that I am sure all the "ideas" are their's so I don't accidently
give one away.

I have been out of work for 4 months so I own all my
thoughts :) and code, but I don't get paid for them :(

As of today here is the status. This came up from an incidental issue about a month ago. I have been told that if I wish to continue being
employed, I cannot post code. If I continue being employed, then I will be admonished for the code I have released so far. If I leave my
employment then the decision about what happens with any and all of the code of mine that people here have seen is not mine.

Can you find somebody high enough on the hierarchy level that he is allowed to
do some independent thinking on his own, and try to negotiate things?
Try to change your contract so you are allowed to work on open source projects, provided it is not against company interests.
You might need some legal counsel here. From what I saw from you on Perlmonks, people higher up on the hierarchy ladder will not
want to lose you. You may have more leverage in a negotiation situation than you currently realize.
I also think it should be rather easy to argue for the fact that visiting and posting on Perlmonks
is a great way to enhance your skills (making the point that you don't just waste your time there).
Then it mainly comes to the point that you don't post code if that act will be against the company's interest.

Dear Tilly and Fellow Monks,
this is indeed a sad story for Tilly and for the OpenSource community.
I'd like to point out that the law in germany is very close to this. AFAIK there is a little difference: if you'd do something in your spare time that is not related to your work it is considered to be your own property.

Nevertheless, whenever I release code that is in any way related to my work I ask for permission to do so. My (little) fault once was not to get this permission written down and signed but I was happy with a spoken permission to release my code. Yeah, you get it already: a few months later someone found the code and started getting angry. Fortunately these people are smart guys and they understand the benefits they get from OpenSource. It wasn't a big deal to clarify things.

But with another person this might have lead me into big, big(!) trouble (probably even bigger than Tilly's is now).

This should remind us - the coders of free software - of our responsibility! You can't just code and release! You have to be aware of legal issues. Not just the contract thing but think of other issues, esp. trademark violation stuff! It starts with taking the time of putting the GPL in your code, but that's not all there is to it.

As a personal note I'd like to add: Tilly, I think I know pretty well how you're feeling right now. I have once been victim of lawyers who were sueing me and some friends just for the money (trademark issue...) and the case itself was ridiculous. I don't have any words of wisdom for you, and maybe it's cold comfort just to know that you're not alone.

If you can, (n|bl)ame your contract partner, leave that company as fast as you can (obviously they're not worth your time and company) and invent new things. You got the guts to do good thinking and you are creative, you will always do new things (and from now on you'll make sure that you own them). And -who knows- if you can strengthen your position in The Community maybe The Community can develop quite a pressure on your employer to release the code?
(I know that these last statements are provoking; this just happens when you are angry with something or -one)

I was working on a program recently that had a most peculiar bug. It was writing information to a logfile, and the logfile would remain empty. At first I suspected that IO::Tee was at fault (or, more specifically, the way I was using it was at fault).

Out of desperation, I wrote a little script showing how I was using it, and I posted it the other day. I didn't really expect much to come of it. I got a couple of helpful responses, and then, three days later, tilly posted a follow-up that nailed the problem on the head.

At the end of the program, I had to call an external program to finish off the processing. I didn't see the need to use system, because error checking of that external program is handled in another way. So I just execed the program in place. At that is what was causing my logfile to go empty. I was pulling the rug from under the script before it had a chance to close the file properly.

I was greatly disheartened when I read this. I don't know whether to be angry, saddened, or disgusted. You definitely rank among the most positive influences here- a quick look at your extensive list of writeups should confirm that to any doubters.

If you read Slashdot, you'll probably find a bunch of adolescent haxors who would like to see this taken the Supreme Court. Hell, I know I would. But I don't think any clueful person will ever fault you for your choice. I tip my hat to you, and wish you the best.

Make no mistake, fellow Monks, we've just lost one of our best and brightest. Tilly, thank you for making this site a better place while you were here- I hope you'll be able join us again under another name.

I've been lucky, I suppose. Having first gotten my hands inside a computer (and actually gotten it working) at the age of 10 (not that long ago, mind you, I only turn 18 next month), and started programming a couple years later, I've heard tales of such legal trouble, and carefully scoured all contracts I've signed with companys for anything vaguely relating to IP ownership. I've been lucky enough to find nothing (mostly because they were small, local companies who don't really care).

It's too bad this had to be applied to tilly, though. Such a great member of this community. His contributions will be greatly missed.

Note: Since this has been linked to on /., I'm hosting a mirror (with permission from 2 of the gods, and several pmdev'ers) which /. is linking to instead of PM for a few days so the Monestary doesn't get nailled by traffic it can't handle. I'll find out tomorrow morning just how smart I was to throw myself in front of a speeding /., as boo_radley put it.

I think most of us agree that losing tilly to corporate games is a great loss indeed. Just the fact that his CPAN and core perl code may be "taken" away from us just reiterates that fact. This sort of crap could happen to any of us at any moment, so, while we're still heated about this subject, take time to review your situation with your employers.

Other than being totally peeved, there is not much we can do, except try to negotiate better contracts with our employers, as well as possibly petition (or lobby... but I really don't like the word) for better clarification of copyright laws. This particular incident, along with things like the DMCA, makes thing look very grim for consumers, as well as people that help to CREATE the content that companies like Vivendi sell.

All in all, this is a very scary event. One that should make us realize that we are losing a lot of rights every second. I think it's pretty obvious that tilly has the support of Perlmonks. So, for what it's worth, I openly support tilly in whatever course of action he takes.

Since I've learned so much from tilly's insight, I owe more than just my support. But, unfortunately, that is all I have to give...

To be clear I'm not stalking you, I just wanted to know who your employer was that would actually do such a thing. I'm absolutly appaled now that I see thier product offering that they would think your work is a competing product. But I understand your decision, even if it's not the perfect world one. I respect your decision to not disclose your company name (I only found it because half my job is using Google to find arcane facts), and I have to say you kept it well covered for someone who didn't know you personally.

If you do disapear, I will miss you. Even though you were just another poster to me, you were always one of the better informed ones, and someone I had great respect for. In any case, good luck!

Maybe I'm being ridiculously overboard in my paranoia here, but to me this situation suggests a deeper possible evil... How much code already exists in the various open source projects that could be tainted by this? Do the authors' employers have the right to request that these works be removed?
I'm having visions of certain "for $$$" software companies placing propaganda articles in their publications with titles like "Are your employees stealing your property?" hoping their clients will be able and willing to accomplish what they can't.

Update: After re-reading the tilly's article, and my own, I see my post is merely restating what he himself has already said. The danger is real and present, and is already being felt by him personally.I guess what I'm trying to re-emphasise here is that this isn't just tilly's problem or just the "professional workers", but everyone who writes for (or enjoys the fruits of) open source software projects.

-- O thievish Night, Why should'st thou, but for some felonious end, In thy dark lantern thus close up the stars? --Milton

I recently signed one of those agreements, lucky for me the agreement is null and void, if some of what I'm reading on /. is true, since I'm in California. Of course I didn't know about California's section 2870 when I signed the thing, but I signed it anyway because I've been out of work a couple of months and I've got family to support.

About 8 or 9 years ago, I remember reading a copy of a California Labor law that said basically that you had even had a right to use company property for personal purposes, e.g., if your job is to produce spreadsheets but you want to learn word processing, you could use your work computer to do that, if it wasn't being used for anything else anyway, for x hours a day, on your own time. Don't quote me on that though, since I don't know what law that was, if it's still in effect, or what relevance it has here...

If I ever move out of state and add anything to CPAN, tell Trimbach that my wife did it :-)

I know my XP's gonna take a huge hit for this, and tilly probably won't (or cannot) answer but it has to be asked anyway, especially in light of:

As of today here is the status. This came up from an incidental issue about a month ago. I have been told that if I wish to continue being employed, I cannot post code.

What exactly happened? Try to phrase the answer as your employer would: what're their concerns, how did this come to light for them, and why did they feel the need to come to you with this? Put yourself in their shoes for the answer and be honest.

There's obviously another side to this and all of the speculation going on by well-meaning by ignorant monks isn't helping at all except to spread FUD.

Very sad. My sympathies tilly. I hope, and want to be confident that things will work out just fine for you and your family. My knee-jerk reaction is that your employer is out of their collective minds and that they deserve no support, or help, in understanding what they've done--, and achieved--.

I'm relatively new to PM, but in that short time, the obvious depth of knowledge in your posts has been invaluable to me. Not that I can speak for anyone else really, but it's obvious from the chatter in CB, from the replies to this post, and the noise on /., that you are respected, valued and cared about.

If fighting these heathens is what you choose, or if ducking and blowing out of there is your choice, you have my support. If you need anything that I can offer, please let me know. Likewise, it looks like any number of us can and will rally to help so don't hesitate.

I don't know if it's an issue the EFF is interested in, but I have emailed them a link to this thread.

Update: EFF has replied that "Although it's an issue that concerns us here at EFF, I'm afraid we simply don't have the bandwidth to put it on the front burner at this time (between suing ICANN, defending against Hollywood, and fighting the SSSCA, we've got our hands full)." and, "You may want to contact the Free Software Foundation to inquire what resources they have to offer to help open source programmers negotiate with
their employers".

You might be able to sign a intelectuall property waiver IF you say that the code was developed on your own time, created by yourself, and intend to support by yourself and sign a letter and send it to an appropriate company lawyer. (Back to sleep, please excuse spelligns.)

What I want to know is - can someone take Perl away from us? We all feel for tilly, but he brought us a warning. It has been mentioned in passing by several of us so far - but could it happen? Could a company (or several companies) come up and say "We own this - the language design is Larry's, the engine that implements it is ours"? Those of us hacking at the core, and core modules (we've been trying to convince people that Perl is helpless without them) need to take a look at what kind of position we're in. I think we can trust that the bad publicity this is generating, and an awareness of the strength of the Open Source community would prevent most companies from trying anything. But that's no reason to cover our butts. We can pretend that there isn't any large section of important code that a company concievably owns, but if we haven't thought about it, we don't know. I just keep thinking of the CGI mantra, "Security through obscurity is no security at all". It probably won't happen, but then I think of the GIF image format - not quite the same, but enough to scare me.

This is a Big Question, so if someone can answer it,
it would be greatly appreciated:

How much of this stuff comes into play only if it's spelled out in your employment contract, and how much is
simply the result of state law?

I ask because I'm contemplating getting involved in
making source code contributions, but there was nothing, nada, in my contract that stated anything about them owning off-hours work. I'm professional, for a non-tech company (which is probably why no such agreement was in anything I signed), located in neither NY nor CA, the only states anyone seems to bring up. The manager told me that they don't care (if that matters), pointing out so-and-so in another division who does his own business in the off hours. What concerns me is if I can get burned even though I didn't sign anything granting them such rights, simply because of the state's legal codes.

I have no anticipation of any real concerns or conflicts coming up, but better to be forewarned, and forearmed, than caught by surprise if the corporate climate ever changes.

(tilly, I realize you don't want to post actual code,
but if you have any further clarifications of facts to share, it'd be appreciated.)

I've also worked on the US East coast for a US company (sometime in the previous century). At that time, I was already a CPAN author, and submitting patches for perl. When hired, I asked for a clause in my contract that marked all work I did in my spare time belonged to me. That was not a problem. They never made any claim on any non-company work I've made. In fact, when they had to let me go a few years later, my manager even told me I could make (and take with me) a tape of the content of my home directory. He only asked me to delete any copies of source code of three specific programs (out of the 200 or so we made) first, as they were considered to be the most worthwhile to the company. It was never checked I actually did. (I didn't have any source of our products in my home directory though).

howdy all ;)
i haven't logged in in months :) unfortunately, i've been trapped deep in the heart of M$ languages. had to read when I found out

i used to have a rather angry, mean, wonderful friend who worked at a toys r'us

one day he gave me one of the best presents ever...it was one of those nifty toys r'us price signs (you know lego yellow center with heavy blue border), but instead of a price all it said in big print was "people suck ;)"

i have taken your lesson and his lesson to heart, and have begun reviewing my own employment contract. i might be switching jobs soon

i'm sorry you won't be around anymore...you did have some of the better posts on this site and i can honestly say i've learned a lot from you. actually this is about as depressing as watching your hair fall out

I don't know what the law is in Canada, but I do know that there are certainly similar aspects.

Many moons ago (in the '80s) I worked for the government, and they had a government sponsored 'education film' about patent rights (software wasn't the issue where I worked). Anyways, it suggested that stuff done at home could be owned by the inventor, if they could prove that the knowledge used in making the invention (or writing the code) was not obtained from work.

I always assumed that this applied for software as well. In other words, if I write code at home, that uses information that I learned at work, then the IP rights belong to the company, but if I wrote code that was completely and totally unrelated to work, and the skills that I used to write the code were not learned at work, then it would be mine.

They might own it but if you have developed it in contribution under a particular license it is out there and under license. They might have the unique chance to claim it to use under alternative licenses but in effect you have released it on their behalf.

If an employee of a company makes a promise to you that that employee does not have authority to make, that company is not bound by that promise. The fact that you were acting in good faith and really thought you had a valid promise does help you legally, but only until the company brings the true state of affairs to your attention.

A license is, of course, a kind of promise. (But don't worry about the case discussed here. It is water under the drawbridge and was peacefully resolved a long time ago.)

Ada Lovelace for the palindrome
Albert Einstein for having smelly feet
Alfred Nobel for his contribution to battlefield science
Burkhard Heim for providing the missing link between science and mysticism
Claude Shannnon for riding a unicycle at night at MIT
Donald Knuth for being such a great organist
Edward Teller for being the template for Dr. Strangelove
Edwin Hubble for pretending to be a pipe-smoking English gentleman
Erwin Schrödinger for cruelty to cats
Hedy Lamarr for weaponizing pianos
Hugh Everett for immortality, especially for cats
Isaac Newton for his occult studies
Kikunae Ikeda for discovering the secrets of soy sauce
Larry Wall for his website
Louis Camille Maillard for discovering why steaks taste good
Marie Curie for the shiny stuff
Nikola Tesla for the cool cars
Paul Dirac for speaking one word per hour when socializing
Richard Feynman for his bongo skills
Robert Oppenheimer for his in-depth knowledge of the Bhagavad Gita
Rusi P Taleyarkhan for Cold Fusion
Sigmund Freud for his Ménage ā trois
Theodor W Adorno for his contribution to the reception of jazz
Wilhelm Röntgen for the foundations of body scanners
Yulii Borisovich Khariton for the Tsar Bomba
Other (please explain why)