my issue isn't with the side projects done on company time. It's in doing the side projects on company time and then trying to unambiguously own them.
I don't think that there's much of a difference. The company doesn't know that the side projects exist, so there's no foul. That said, destroying code built for work purposes (e.g. sabotage) would be extremely unethical, highly illegal, and very very stupid, not to mention petty and pathetic.
Ownership can be a knotty issue. I have a friend who wrote a short story while in a dead-end corporate job, and published it around the time that he was laid off. The company found a draft on his work computer and, although they had no real use for the story and it wasn't relevant to his work (he was in accounting) they claimed ownership and managed to take royalties for the story (which were small; this was a symbolic pwnage). To twist the knife even further, they put a clause in the settlement wherein he'd have to get permission from them in order to publish it. He might have won if he went to court instead of settling, but a struggling, laid-off writer doesn't have the resources to fight a large company in the courts.
But I threw away the code and started fresh when I left my day job and turned it into a full-time startup. Granted, part of this was for technical reasons (I found the code I'd done on nights & weekends basically sucked)
You make a great point. In that sort of situation, a second write of the code is an excellent idea in any case. Besides, an intelligently chosen side project is one whose value is primarily education/skill development, since that can never be taken away or owned by anyone else.
For me, the appeal of programming is in having my code get used. Making it incomprehensible seems a good way of ensuring it won't be used in the future.
I fully agree. It's always a lot more satisfying to write great code, and I've always tried to do the best job possible. I'm just arguing that there are very rare, dire situations in which perverse incentives arise, and it might actually be wise to be "perverse".
I don't think that there's much of a difference. The company doesn't know that the side projects exist, so there's no foul. That said, destroying code built for work purposes (e.g. sabotage) would be extremely unethical, highly illegal, and very very stupid, not to mention petty and pathetic.
Ownership can be a knotty issue. I have a friend who wrote a short story while in a dead-end corporate job, and published it around the time that he was laid off. The company found a draft on his work computer and, although they had no real use for the story and it wasn't relevant to his work (he was in accounting) they claimed ownership and managed to take royalties for the story (which were small; this was a symbolic pwnage). To twist the knife even further, they put a clause in the settlement wherein he'd have to get permission from them in order to publish it. He might have won if he went to court instead of settling, but a struggling, laid-off writer doesn't have the resources to fight a large company in the courts.
But I threw away the code and started fresh when I left my day job and turned it into a full-time startup. Granted, part of this was for technical reasons (I found the code I'd done on nights & weekends basically sucked)
You make a great point. In that sort of situation, a second write of the code is an excellent idea in any case. Besides, an intelligently chosen side project is one whose value is primarily education/skill development, since that can never be taken away or owned by anyone else.
For me, the appeal of programming is in having my code get used. Making it incomprehensible seems a good way of ensuring it won't be used in the future.
I fully agree. It's always a lot more satisfying to write great code, and I've always tried to do the best job possible. I'm just arguing that there are very rare, dire situations in which perverse incentives arise, and it might actually be wise to be "perverse".