Obviously there are lots of implications like privacy, taking credit, taking responsibility, claiming code, claiming copyrights,...
There was a similar discussion on Slashdot some time ago: http://yro.slashdot.org/story/08/11/17/1746239/Real-Name-For-Open-Source-Development
But that's Slashdot, this is Hackernews. What's your take?
If you have to sign a copyright assignment statement, I'd think you'd be required to by the project (such as for GNU projects). But even if you don't assign your copyright to the project, I have a hard time understanding what using a pseudonym would do for you.
If your employer owns anything you create (like most businesses in the USA), then even if you submit under a pseudonym, once the employer finds out what name(s) you're using, they still own the copyright. You just make it harder and more annoying for them to find out that it's you.
I can understand if you're just writing a single bug report or sending a one-off email to a mailing list asking a question, sure, using a pseudonym is probably fine if you're worried about spam. But if you're actually contributing to the project (code, documentation, specs, marketing, etc), using your real name is the only way to go.
Also, if you put on your resume that you contribute to an open source project, I'd go check that out. If I can't find your name anywhere, I'm going to assume you're stretching the truth on your resume, probably in other places too.
If your employer owns anything you create (like most businesses in the USA)
Is this really true? Anything? Or just things related to your job? The former would be - lacking any better word for it - ridiculous.
My contract states: "I will promptly notify <employer> of all inventions, discoveries, computer programs and systems, works of authorship, improvements, and developments, which I may produce during my employment with <employer>, and I assign my right, title, and interest to <employer> in such inventions, discoveries, computer programs and systems, works of authorship, improvements and developments."
There's other paragraphs roughly stating that if I notify upper management of my work done outside of business the company engages in or plans to engage in, upper management may provide me a written exemption for those specific works. But they do _NOT_ have to provide this to me, even if I ask nicely. I personally do not know anyone at my company who has ever gotten an exemption.
For instance, in California you have section 2870 of the Labor Code:
Any provision in an employment agreement which provides
that an employee shall assign, or offer to assign, any of his or her
rights in an invention to his or her employer shall not apply to an
invention that the employee developed entirely on his or her own time
without using the employer's equipment, supplies, facilities, or
trade secret information...
An employer might not own anything we create in our free time, or there might not be an employer at all.
And if I put that I worked on a project under a pen name on a resume then I would include the name I worked under, accepting that it is probably not that anonymous anymore.
My take on it is that it's a lot easier to link them up as you need to, than it is to unlink them.
But back to the original question. I rarely contribute to open source, mostly due to time issues, but when I do it's always as a pseudonym. My current company may be ok with some open source project contributions but having been acquired twice in 5 years (and always considering changing companies) I don't want to take the chance that a new boss would change that. I also wouldn't want to make it easy for a patent dispute to spill over between my paid closed source work and open source.
An anonymous contributor with a good reputation would also be acceptable in many cases, though it could be a red flag in large companies.
Writing code is what I do, and if other coders (or clients/employers) want to contact me based on work of me they've seen, I want that to be easy for them.
However, because my real name and nick is so easily associated with my home address and such, I never use my real name on social network sites. I don't want a technology savvy thief to break into my home because I've been sharing holiday photographs from some remote country and they know I will not be home.
In short: personal life == pseudonyms, professional life == real name.
Also, it keeps me more honest. If every commit has my real name attached, I am more likely to write clean code since I value my reputation.
I started signing code when I started going to meetups etc, doing it with people who actually knew me in real life, it started getting pointless to try to hold a cloak of anonymity.
I can't really remember my precise reasons why not but I recall having this feeling that it was charity and that I don't go around stating which charities I give money to because I feel that such things reveal some aspect of my beliefs.
I'm probably quite raving about anonymity and the freedom to act without being judged by it by future employers, government and the like.
So I vaguely concluded a long time ago that as software can reflect aspects of political beliefs that such things are best done with anonymity.
These thoughts were a lot clearer a decade ago, now just out of habit I use aliases. No-one ever seems to mind and at some level it feels cool to know that you're not known.
I didn't make the mistake of using 1 alias everywhere, which is just as well as a couple of times I've let slip my identity in IRC chat rooms.
Edit: I remember now... I had a particular gig which required government clearance and during that process realised that everything I ever did was going to be factored into their judgement and in the future it would be too. It was then that I shifted all work that didn't need to be directly attributable to aliases.
After all, my work is me.
I've never cared much about the cons of using my name. What I say and what I do is what I say and do. I'm not really worried about it.