The only answer is to stop being meaty while within the reach of a wolf, and stop being within the reach before you're about to grow some meat.
I've got a 20% project that, to my knowledge, my manager doesn't even know about. It grew out of my 80% project - we needed a library that doesn't seem to exist yet. When it gets to a semi-functional state, I'll open-source it through cdibona's office, with copyright assigned to Google. Why not? It'll end up exactly the same for end-users, with an Apache license, and it's much less of a bureaucratic hassle to just do it with a Google copyright.
The point is that Google will claim copyright of everything that you do. If you write a game about chickens in your spare time, for example, then Google owns the copyright, despite not having had any input into it. I fail to see how that's fair or reasonable, and I'd be very interested to see what laws apply - I suspect that cdibona is trying to blow smoke up our collective asses.
What is unreasonable is that if you did it at home, with no Google resources, that they would still ask you to assign them ownership.
(I, fortunately, don't have this problem. Part of the official open-sourcing process involves deleting any reference to our company, even in the copyright, so that nobody sues them if it breaks. Example internal app that was open-sourced: http://openefs.org/)
All I can act on from this fairness perspective is Google's interactions with Open Source, making it as easy as possible to release code under open source licenses, which I think we're doing a good job of.
Would love to see specific citations showing that Google has no choice but to claim ownership of all its employee's projects during their own free time at home or elsewhere not at work. I thought slavery was banned in most countries, it's amazing to now hear that it is required under international treaty. Greatly looking forward to those specific citations of how specifically Google has no choice in this because of "state, federal and international law and treaty".
Anyway, I deleted my comment since I didn't want to get into an argument here, it's not that important to me. I don't even 100% disagree with you, but clean up the tone a little bit and less handwaving? That kind of thing is what makes people want to brush off criticism instead of responding, which is really bad for discussion. I think it's really cool that a person on the Google legal team is explaining their thinking here reasonably and clearly.
Software developers are thought workers, and you don't get to just check your brain at the door when you clock out like you could your tools or a laptop. Thus, any similar* work you do on your own time cannot be done without your brain using some of what is in your head, which you learned/figured out on company time.
* Now, this is the fun part. Where do you draw the similar line?
Think about it: you hire someone to solve a problem. You pay them to figure it out and implement. Then they turn around and implement the same solution, which you paid them to think about, for someone else?
Should I be writing all my past employers checks because I am using things I learned "on their time"? I had a job where we used CakePHP, and I learned much about the framework during this job; now, should all my future CakePHP work (of which there is hopefully very little) belong to the employer that first facilitated my learning of CakePHP? Should I write a past employer a check when the bad management practices I observed there are avoided due to my past experience? Do they own my wisdom on that subject now?
I think you can see where we're going with this. I think that anything that is not performed in the course of your ordinary job duties, not directly related to the company or its primary businesses, and performed outside of company time and facilities blatantly belongs to its original author.
>Think about it: you hire someone to solve a problem. You pay them to figure it out and implement. Then they turn around and implement the same solution, which you paid them to think about, for someone else?
Uh, yeah, this happens all the time. That's what most consulting firms do. You think when you hire a web firm to build your e-commerce site they always start from scratch on the shopping cart program? The cart was written the first time they had an e-commerce job, and now they reuse it. This is good practice and totally kosher, and should be expected, unless you explicitly request a custom shopping cart program with copyright assignment.
Aside from information that is considered confidential by my employer (in which case it falls under the NDA I signed), what's in my head belongs to me. Yes: me. Just as my employer is able to use knowledge and experience that I've gained from working for previous employers (and on open source projects in my spare time), I must be able to use the knowledge and experience I've gained at my current employer in future (or even current, as long as it's not the same) work.
A huge part of the reason I'm so good at the job I do now is because of the 5 years I spent working on Xfce. If my employer gets to leverage that, then I get to leverage what I've learned at my current job. It's mine, plain and simple.
That may not be exactly what the law says -- it's hard to read it and specifically say what's allowed and what isn't without a lawyer, and even then I'm sure they disagree -- but anything less is knowledge-servitude.
Now, as to the "similar" bit: I think a large company like Google could easily claim that the vast majority of personal projects done by its employees is "similar" enough to something someone somewhere in the company is working on that they are entitled to ownership under current law and policy. Even if it's not related to the work that the employee actually does for the company. And that's not cool.
Yes, I think it's cool that Google is so willing to allow its employees to open source so much Google-owned code. But that's not enough. Look at it the other way: if it's "no big deal" for the employee to assign copyright to Google because it's released under a liberal open source license like BSD, then why isn't it "no big deal" to allow the employee to retain copyright? Aside from prestige, what does Google gain from owning copyright on BSD-licensed code? As a person who writes software, a part of my resume is the body of open source code listed under my copyright. Sure, you can look at commit logs to find out who wrote the code, but it's much less impressive to be a contributor listed under your employer's umbrella.
That's perfectly fine, and happening all the time. Google got the fastest JS interpreter among all the major browsers (Chrome's V8) by hiring the guy Sun paid a lot of money to do nothing but think about virtual machines for a couple of years. Just because Sun paid for the development of HotSpot doesn't give them any kind of ownership over the ideas, with one exception: for some ideas, they can get government enforced limited time monopolies for the sake of "promoting the Progress of Science and useful Arts" by filing patents for them.
But how this applies to Google employees, I don't know: it would seem that Google ought not to be able to claim ownership of all of my ideas simply because I work there while having them. That said, I really can't imagine it being much of a problem if someone just stays honest about things (i.e. not work on a major competitor to their own project).
That is why I think it should go both ways and they should be forced to pay overtime for whenever a worker claims to have "thought" about the problem in their free time.
Imagine the scenario: you are on the beach with the family but, since you are a "thought" worker, your mind wonders so you think for 30 minutes about how to decrease the latency of that DB query. That should be 30 min of overtime billed to Google.
Wouldn't that be the other side of the "thought worker" coin ?
So, under California law, which is probably the most liberal in the United States coving IP, you are prescribed
from competing with your employer even on your own time or on your own equipment.
This is reinforced in industry employment agreements, including Google's (my employer)
Most employers take the position that everything you do in the space is logically competitive.
Recognizing that, we, Google, make it very easy to get permission to open source things, but under Google copyright.
That said, given their relationship with the web, it's hard to say that any web related tech doesn't compete with them in some fashion. I'd wait for G to actually be dicks before calling them out. Also, being allowed to use 20 percent time to work on this stuff is pretty amazing. I have a bunch of personal projects that I'd love to have a day a week to work on.... which is really the problem. Google can claim that anything web-related that an employee of theirs does on their own time to be sufficiently related to their business as to assert ownership. And that's not cool.
Just because a company has done good things for the community, it doesn't give them a free pass to do bad things to its employees.
I think that's entirely fair - if you're a Google employee contributing to a project that might potentially compete with Google, I don't see a problem with Google asking you to get permission.
EDIT: Corrected the corporate motto from "Do no evil" to "Don't be evil".
I don't see how it is that different in practice. Do you mean that there is a loophole, since a company that is "not evil" can clearly "act evil" and still operate according to its principles because of the specific wording of the statement?
In this specific example - yes, I think that claiming ownership over everything your employee does is slightly evil (common practice, though). However, without that legal protection, why would you ever share the rest of your IP with the employee? Why would you ever let them work on anything other than their immediately-assigned job duties? You end up with a culture that's fairly similar to most big companies, where employees are told only what they need to do their jobs, and managers tightly control everything that an employee works on. I'd say that's a far worse outcome than a culture where employees know everything that's going on in the company and have wide latitude to start projects that make things better for users. It's worse for employees, it's worse for users, and ultimately it's worse for the company.
How come you can't just say "All work on Google-owned software is copyright Google. All work directly assigned by Google management is copyright Google. All work performed wholly independently and separate from Google by Google employees is copyright its respective owners."? I don't get it.