我知道您所服务的公司拥有该代码,并且如果您出售该代码,显然您将被逮捕。但是,对于开发人员而言,保留他们编写的代码的个人副本(以供将来参考)是不常见的吗?
显然,此人因复制源代码而被判入狱。
我知道您所服务的公司拥有该代码,并且如果您出售该代码,显然您将被逮捕。但是,对于开发人员而言,保留他们编写的代码的个人副本(以供将来参考)是不常见的吗?
显然,此人因复制源代码而被判入狱。
Answers:
但是,对于开发人员而言,保留他们编写的代码的个人副本(以供将来参考)是不常见的吗?
我不知道它有多普遍,但是无论有没有普遍存在,这仍然是一个坏主意。
程序员通常会以两次解决同一问题是浪费时间的心态工作。我们尝试将代码设计为可重用(有时)。我们构建了类和函数的库,以备将来将来使用。有时,我们甚至将我们的代码分发出去,这样其他人就不必再编写代码来解决我们刚刚遇到的相同问题。因此,当您从一项工作转移到另一项工作时,希望随身携带“您的”代码可能是可以理解的。但是出于以下原因,您仍然不应该这样做:
这不是您的代码。
您为前雇主编写的代码是他们建立的业务的一部分。他们的代码是他们竞争优势的一部分。当然,竞争者可以编写自己的代码来解决相同的问题,但是他们不应利用您雇主所支付,拥有和未授权您参加的工作来获得好处。
如果他们有任何道理,那么您的新雇主不希望您从前雇主那里获取任何代码。您越“喜欢”您为某个前任雇主所做的工作,您就越会给新雇主带来法律上的威胁。
如果您不小心让新雇主漏掉了您仍然为旧雇主做过的工作的副本,那么新老板会很可能意识到您离开时要带上他们的代码副本工作。那可能不适合他或她。
即使您不拖延实际路线,也不只是从旧内容中得出模糊的想法,仅将旧内容藏在手中可能会引起怀疑您可能会将其用于某些东西。想象一下,老雇主起诉新雇主,而作为一小部分从老公司迁移到新公司的员工之一,您突然发现自己在做一份工作。你们当中没有人实际将Old的代码复制到New的产品中,但是您面前的律师问:“ SuperFoo先生,您是现在还是您,或者自离开Old Employer以来一直拥有您或您的任何代码的副本。在“老雇主”工作时还有其他人写的吗?”
你并不需要你上个月写的代码,去年,或更长的时间前。您一次解决了问题,现在您知道如何再次解决该问题。或者,您可能知道如何不解决问题-因为您有经验,所以新的实现会更好。
有更好的方法。通过从上下文中读取旧代码很难回去学习任何有用的东西。日记或日记描述了您学到的东西,所拥有的想法等,以后会更加有用。
即使Old Employer知道您已经有了他们的代码并且对此表示满意,您仍然不想要它!唯一能做到的就是凌晨3点打来的电话:“嘿,SuperFoo?您好吗?听着,您有我们的东西的副本,对吧?看,我们的电话有问题系统,我们已经将其范围缩小到了几个文件,这些文件是您写的,我们的新手根本听不懂。我知道来晚了,但是您能带他通过SuperDuper.pl吗?”
放手吧。不用了
for (int i=0; i < N; ++i)
在自己的代码中使用,那么在另一家公司的其他地方使用它肯定不是违法的……
我总是保留我编写的代码的副本,并在工作之间使用它。随后的雇主永远都不会看到/运行该代码,但我在家中将其用作参考:“是的,我不是做与Project X上类似的事情吗?”。
这合法吗?取决于管辖权和情况,但这是相当普遍的。道德上,我对此没有任何问题,只要您不只是向新雇主提供代码即可……这是对您所做工作的提醒和演示,而不是为雇主提供免费资源。
[另一方面是当您查看旧代码时不可避免地会感到羞耻:'我在想什么?到底为什么我这样做,是这样?“]
这是一个非常糟糕的主意。该代码不属于您(法律上来说),拥有它会给您带来很多麻烦。当您转到新工作并且仍然保留该源代码时,这一点变得更加正确。如果它是竞争对手,那就更糟了。如果您不再为他们工作,则可以访问他们的源代码,那么您的公司将不会高兴。
这全都在于管理风险。显然,您希望保留以前雇主提供的东西,并可以在其他地方使用。这就是为什么他们在离开您后的X个月/年内使您的符号禁止竞争条款出现的原因,但是拥有此代码会使您更容易受到有人指控您公然复制公司代码的攻击(即使您没有这样做,并使用了相同的想法)。拥有值得管理这种风险的代码吗?
当然,您从编写代码中获得的有用信息不是确切的语法;这是您获得的知识。处理所有这些法律问题可能不值得。
这并不少见。
我几乎复印件1 每一个从我目前的项目一块我专业编写的代码,当然所有的代码,不管它是谁写的2。除了代码,我还有大量的法律文书,清楚地定义了我可以做什么和不能做什么。仅拥有代码与尝试从代码中获利是不同的。
话虽如此,这是一个法律问题,法律问题往往非常复杂和局部化。如有疑问,您确实需要与律师交谈。我可以保留我的代码,但是我99%的确定这样做不会遇到麻烦。
1缺少的大部分是我不想要存档的内容。由于法律原因,仅丢失了一个小项目的代码。
2项目的性质以及我在其中的角色,即使是我没有参与构建特定模块的情况,我也是至少需要知道该去哪里的人之一。
我看到你被捕的中国男子,并用“密码不是财产,因此不能被盗”来抚养你。
照这样说。
这是一个简单的问题。去找你的老板,告诉他们:“我有我在这里工作时编写的所有代码的副本。只有我编写的代码,没有其他人的代码。这是我自己受的教育,我永远不会把它分发出去。”
如果您在他们眼中是对还是错,他们的下一步行动将指示(是的,北美/世界确实存在该词)。
无论您自己的“道德”如何,您都为雇主工作。如果他们认为您的所作所为是错误的,那么根据他们的道德准则,这是错误的。当他们付钱给您,而您又受雇于他们时,则是在您的法庭上同意或不同意,这可能会导致您被解雇。
现在,这是一个诚信问题。我已经让前一位员工采用了我们的一些代码,但是我已经首先对所有代码进行了审查。
仅仅因为您认为自己是对的,就不能使您正确。通常,软件开发人员在受聘时会签订合同。如果您签了名,那么您就必须按照自己的意愿生活。
开发人员保留他们编写的代码的个人副本是否不常见
直接回答这个问题,根据我的经验,这是不常见的。该例外这是我所看到的是人谁做自由职业者的很多,他们继续手头上的客户端未来的维护和提升项目的代码,我可以想象,这显然是在合同中约定(虽然我不是复习我朋友的自由合同的习惯,所以谁知道)。我认识的在大型公司工作的人从未承认要保留前雇主的代码。
我知道我不会,因为我无法想到一个有用的单一情况(更不用说我很确定我的现任雇主禁止此类事情-我只需要查阅文件即可确定)。固定我写的代码/通常是这样针对特定的业务需求,我无法想象以后再上来在未来这样一种方式,它会更容易重新使用旧代码比编写新码。
根据北美大多数地区的劳资关系,在未经雇主事先法律授权的情况下,从您的雇主设备传输或传输数字资料(即源代码)是非法的。
与工作场所中的员工定义有关的部分法律法规是,除非员工合同中另有规定,否则员工不提供自己的工作设备,但需要员工购买的行业除外他们自己的设备(即建筑工人)。
北美大多数雇佣法将雇主定义为雇员与雇主关系中的主要风险承担者。在雇主提供材料,设备并控制雇员与工作有关的活动的同时,为雇员支付时间。
在这段关系中,什么时候可以从雇主那里窃取有价值的资料,而雇主为该资料的创建付费并承担了风险?
关键问题是“您编写的源代码?”这个问题。不,先生,不是你写的。在您雇主的指导下,由他们撰写。您只是打出来的受雇人员。如果您的雇主采取法律行动来保护自己的财产,则北美没有法院陪您。只需将源代码复制到USB拇指驱动器中,您就会陷入困境。
话虽如此,如果雇主允许您使用自己的设备(即笔记本电脑)或传输材料,那将是另一回事。雇主必须在终止合同时通知您任何材料应退还/销毁。
只是以为我会发布这个答案,因为似乎有人认为这是一个灰色区域。我真的不认为如果您是开发人员,那么您应该在互联网上发布您保留雇主材料副本的信息。我的意思是,您显然已经知道该问题的答案,因为您创建了一个新的会员帐户只是为了提出该问题。;)
当然。我喜欢保留我所做的所有工作的副本-无论是编写代码还是其他方式。如果愿意,可以将其称为剪贴簿。打破规则?也许。
除非您的下一个雇主是直接竞争对手,否则有关竞争优势的评论是无关紧要的。如果您从电话公司迁移到软件公司,或者从游戏开发人员迁移到数据库开发人员,则没关系。如果您实际上打算重用代码,那么情况就完全不同了。
有趣的是,您经常会听到Web开发人员将“工具箱”与标准的JavaScript库和CSS样式表一起带来的信息。但是我还没有看到这里提到的内容。
由于多种原因,例如在家中工作,您可能已经拥有了一份副本,而我在工作后就不会删除这些副本,为什么这么做?这不违背我的信念或其他东西。
但是,关于使用它,它不如博客文章有用!
最重要的是:编写代码,在博客中讲述您所遇到的问题以及如何解决它们(尤其是当它们是通用的东西时),并且不要介意保留上一份工作的纪念品(可能是加密的)。
在财务方面,终审法院解决了这个问题。您不得获取与客户或您在公司工作有关的信息(在本例中为代码)。但是,没有什么可以阻止您记住自己能做的事,然后在以后写下来。
不确定这是多么合法,但我认为您最好的选择是保留源代码,但写下您的想法以及刚回到家时如何做。窃取是在偷窃,在法庭上,他们试图确定是否复制了密码。
如果您要保存代码以便以后重用,那么我有两个问题:
如果代码是特定于域的,则它可能也是专有的。无论如何,没有两个业务或问题是完全相同的,并且试图用一个解决方案来解决另一个问题不是一个好的模式。
如果您保存的代码解决了一个常见问题,则应质疑您的方法。当可能是现有的(以及更好的)开源解决方案时,为什么要花很多精力来解决一个常见问题?
如果您认为自己是解决常见问题的最佳解决方案,那么您应该真正尝试在编写代码时在公共存储库和/或代码博客上公开共享代码,而不要自己保密。您的老板不应该反对共享通用库,也不应该强迫您重新发明轮子(如果他这样做,那就找一份新工作)。
如果由于要向潜在的雇主展示代码或提高技能而保存代码,建议您为开放源代码项目做出贡献。
我尚未保留为雇主编写的任何代码。我保留的自由职业者的东西(如果我丢失了代码,可能很难支持客户)。
但是,我正在考虑保留为该雇主制定的代码。原因是我是一名Web开发人员,并且已经开发了很多看上去很漂亮的客户端程序。我没有设计它们,但是我实现了它们,并且经常想到这个主意。我想保留这些东西的副本以建立在线投资组合。众所周知,网站不会永远持续下去,因此我无法现实地依靠我的工作保持在线状态。拥有备份副本将使我能够在线获得作品集。
我知道设计师经常为作品集目的而保留其作品的副本(即使是供租用的作品)。
我不确定这样做的合法性(我的合同中没有明确提及)。
but what are your thoughts on this?
请不要通过引入其他问题公开邀请您回答。您告诉我们是否应该保留我们编写的所有代码的副本。您可以通过编辑来改善答案。
好吧,为我公司开发业务逻辑时,我不能保留代码,因为它是公司的非法财产和个人财产。作为开发人员,我知道如何开发该逻辑,因此我可以牢记该逻辑。基本上默认情况下,它存储在您的脑海中,如果您下次需要它,那么您应该自动实现比前一个逻辑/更好的逻辑。这是人性与智慧。:)
但是,当您开发一些实用程序逻辑时,就会产生问题,它们是可重用的并且始终很重要,您可能在不同的项目中经常需要它。因此,您应该随身携带它。
我对此有另一种解决方案。只需为该实用程序创建一个不带源/文档的JAR,然后将其添加为您项目中的外部第三方JAR。通过执行此操作,您可能会确定自己的责任以及对自己拥有代码的满意程度;)