Questions tagged «ethics»

道德规范为个人和职业行为提供指导。

14
是否可以以略有不同的方式重写开源项目的每一行,然后在封闭项目中使用它?
我正在考虑将某些代码用于GPL或LGPL用于iPhone项目。 如果我使用该代码(JavaScript)并以另一种语言重写了该代码以在iPhone上使用,那将是法律问题吗? 从理论上讲,发生的过程是我遍历了项目的每一行,了解了项目的执行情况,然后以一种新的语言重新实现了这些想法。 在我看来,这就像在学习如何实现某些东西,然后与原始许可分开重新实现。因此,您仅复制了算法,可以说您可以从原始项目以外的其他地方学到算法。 许可证是否涵盖特定的实现或算法? 编辑 - - - 看到这个话题建立良好的对话,我感到非常高兴。为了给项目提供更多支持,所涉及的代码进行了某种音频分析。我相信学习或实现它并非易事,尽管我准备着手执行此任务(我处于可以实现FFT算法的水平,并且将超越此范围。)低LOC脚本,因此我认为做直接移植并不难。 我真的很喜欢重新释放端口以及在应用程序中使用它的想法。我认为没有任何问题,这将是回馈社区的好方法。 我本来想不想讨论道德问题,但我很高兴自己没有参加,因为这似乎激起了辩论。 我仍然对使用开放源代码学习感到有些奇怪。这是否意味着不允许在开放源代码项目中使用从开放源代码项目中学到的任何东西?实施必须经过多长时间或不同时间才能不被视为违反许可?ky! 编辑2 -------- 后续问题

7
如何避免被更强大的贡献者遗忘?
如最近在这里报道: Xamarin分叉了Cocos2D-XNA(一个2D / 3D游戏开发框架),创建了可以包含在PCL项目中的跨平台库。 但是分叉的项目的创始人说: MIT许可证的目的是限制您的合理使用。不鼓励您购买软件,将其重新命名为自己的软件,然后如您所说的那样“朝新的方向发展”。 虽然不是非法的,但这是不道德的。 似乎新项目的GitHub 页面甚至没有表明它是典型的GitHub方式的分支,而是选择了一个易于删除的“历史记录”部分(请参阅底部)。 所以我的问题是: Xamarin的行为和行为方式是否符合道德? 如果您是单个开发人员或一小群没有资金的开发人员,是否可以避免这种情况? 我希望这可能是一个维基问题,也可能会有一些基于现代OSS伦理/哲学的客观答案。

29
我的公司可以将我在几个小时内注销的应用程序的知识产权授予其他初创公司吗?[关闭]
我是一家卫生公司(无薪)的实习生,我们称之为A公司,我注意到他们使用很多纸质表格来完成可以在计算机上完成的事情。Excel文件中不应包含的内容。因此,我想改进自己的编程,并认为这是最好的机会。 我开发了一些应用程序供他们使用。所有这些应用程序都在公司时间之外。我提出了一份申请书,他们很喜欢,其中一位董事有一个兄弟,他经营一家健康公司。他希望我放弃我的源代码,以便他兄弟的公司可以进一步开发它,甚至可以出售它(我无法接受)。 我无意交出我的代码,因为我花了很多时间在外面,但我也不想与公司中的任何人建立桥梁。我不能去找导演,告诉他“我不这么认为”。 我可以向兄弟演示它是如何工作的,但是该行正在放弃我的代码。如果他们想构建类似的东西,那么他们可以继续前进,我对此没有问题。 解决此问题的正确方法是什么,他们是否有权对我这样做? 编辑:没有合同我什么都没签

16
有什么正确的方法告诉管理层我们的代码很烂?
我们的代码是错误的。它可能并不总是被认为是坏的,但它是坏的,而且只会走下坡路。我不到一年前刚从大学毕业,我们代码中的许多内容使我感到难以置信。最初,我认为作为一个新手,我应该闭嘴,直到我对我们的代码库有所了解为止,但是我已经看到很多知道它不好的地方。 一些亮点: 我们仍然使用框架(尝试从查询字符串中获取内容,几乎是不可能的) VB脚本 源安全 我们“使用” .NET-意思是说,我们有.net包装器,它们调用COM DLL,几乎不可能轻松调试 一切基本上都是一项巨大的功能 代码不可维护。每个页面都有多个文件,每次创建新页面时都会创建这些文件。基本上,主页做了很多次Response.Write()来呈现HTML(无法运行runat =“ server”?)。之后,客户端(VBScript)上可能会有很多逻辑,最后页面提交给自己(通常将很多东西存储在隐藏字段中),然后在页面上发布到处理页面,该页面可以执行诸如保存数据到数据库。 我们得到的规格是可笑的。通常,他们会要求诸如“使用字段Y或字段Z自动填充字段X”之类的内容,却没有指示何时选择字段Y或字段Z。 我确信其中部分原因是没有在软件公司工作,但我觉得编写软件的人们至少应该在乎其代码的质量。我什至无法想象,如果我提出一些建议,那么很快就会发生任何事情,因为迫在眉睫的最后期限迫在眉睫,但是我们将继续编写不良代码并使用不良做法。 我能做什么?我什至如何提出这些问题?我的团队中有75%同意我的观点,并且过去曾提出过这些问题,但没有任何改变。

8
以“道德”为由进行歧视的软件许可
我花了一些时间阅读常见的copyleft和许可的软件许可证。是否有许可证允许应用程序或算法的创建者根据自己的个人偏见广泛地指定谁可以使用/分发产品? 我了解人们使用双重许可来强迫商业实体支付许可许可,或者被迫分发项目的源代码,但是我在想一些类似的事情,例如“可以免费使用该代码,修改并由不涉及Industry x的任何实体分发[我认为我不值得使用我的自由软件]”。 我一直找不到任何这样的许可证或许可证模板,并且我以为至少有些程序员会担心其产品的道德影响。是否可以创建AI寻路算法,并确保最终不会指导武装无人机或北极浮冰模型,并确保最终不会将其用于海上石油钻井,同时仍使用许可式许可证?

13
我是否应该在自己的应用程序中包含自毁方法?
最近,我有一个负面的经历,客户从账单中获得担保,但是我的中间人已经将我们的软件和设计上传到了客户服务器。客户原来是一个已知的罪犯,他当然更改了服务器的所有可能的密码。 但是,我仍然可以访问CMS的管理面板。不幸的是,事实证明,我的软件非常安全。。尝试过SQL注入,伪造图像上传等。但是,我无法破解自己的软件。。无论如何,我准备起诉这个人,所以不是问题..我现在在想,也许应该有一些后端selfdestruct方法。因此,如果发生类似情况,我可以选择终止该软件。 我自己的想法是在核心文件中隐藏一些功能。使用base64对其进行编码,因此不会很明显。所以像这样: eval(base64_decode('ZWNobyAnSGVsbG8gd29ybGQhJzs=')); // echo 'Hello world!'; 并基本上制作一个小脚本,该脚本将获取软件的所有文件,并确定chmod的文件,然后将其删除。 我的CMS较新版本都具有文件管理器,可以用来更轻松地进行黑客攻击。但是,如果对管理面板的访问受到限制,该怎么办。 非常清楚,这仅适用于我个人服务器或客户端服务器中的开发阶段软件(最后一部分在道德上值得怀疑。)因此,如果我的客户端应该盗用我的软件。。 -软件。 更明确地说,我们正在谈论那些罕见的自由职业。我认为这样做很合乎逻辑,因为合同工作不需要这种方法。因此,我们仅在开发模式下谈论这些跳高的客户-当项目准备就绪时,显然这在您的软件内部将是非常非常不道德的后门。 从伦理上讲,这是个好主意吗?(请记住,当项目已达到100%并且已支付所有费用时,显然我会删除它) 你们是否曾经因为客户端的类似问题而不得不破解自己的软件? 关于这个想法,代码和方法明智的建议吗? 自毁脚本可能有哪些弊端或后果? 我对此的结论 遗憾的是,所有答案都针对合同规定的案例。确实,这是我的错,我没有在问题中更清楚地说明……。只是,很清楚,当您受到合同保护时,终止开关没有意义。 但是,如果您正在执行合同工作..则应在合同中注明-即使在客户自己的服务器内部,这也合法。但是,在我自己的个人服务器中使用kill-switch确实是小菜一碟(这是我真正想知道的事情)。 我决定为CMS制作kill-switch脚本。主要是因为这似乎是一个有趣的挑战。而且,如果客户是朋友的朋友,我可以将其用于我的非承包作品。.我可能不会在客户服务器上使用它,但是..对于客户或某些客户中间人可以访问我的服务器..并且我的软件被盗,或“在我不知情的情况下被移动”,然后我没有得到报酬,他们切断了对该软件的访问。 我在这里阅读了很多主题,他们建议在其中发送警告,然后删除该页面。好吧,我看到了一个问题,例如当我与某人打交道时,他会将其复制到其他地方(也许将其重新贴上标签并出售)并告诉我,该记录已被删除。而且,我不会“关闭站点”,而是将其删除。但是,我认为访问我的客户端服务器并将其删除仍然是非法的。或者至少通过后端而不是从FTP访问它。为此,我感谢所有回答的人。

14
如果您在竞争对手的网站上发现漏洞,该怎么办?
在为我公司的项目工作时,我需要构建功能,以允许用户将数据导入竞争对手的站点/从我们的竞争对手的站点导入/导出数据。这样做的时候,我发现了一个非常严重的安全漏洞,总之,它可以在竞争对手的网站上执行任何脚本。 我的自然感觉是本着诚意向他们报告这个问题。利用这个问题来获得优势,这使我心烦意乱,但是我不想走这条路。 所以我的问题是,为了帮助他们,您是否会报告直接竞争的严重漏洞?还是闭嘴?有没有更好的方法来解决这个问题,也许至少可以从我通过报告问题来帮助他们的事实中获得至少一些好处? 更新(澄清): 感谢您到目前为止的所有反馈,我们非常感谢。如果我要补充一点,我要补充的是,所涉及的竞争是市场的庞然大物(在几个大洲有数百名员工),而我的公司才在几周前才成立(三名员工),您的答案是否会改变?不用说,他们绝对不会记得我们,并且,如果有的话,只会意识到他们的网站需要工作(这就是我们首先进入这个市场的原因)。 这可能是道德上或商业上的折衷之一,但我很欣赏所有建议。

12
公司使用盗版软件[关闭]
几个月前,我开始在一家公司工作,担任工程师。这是一家小公司,他们基本上要做的是通过电话接听服务。现在,他们正在从普通电话切换到IP电话,以便计算机在工作中占据更重要的位置。 但是,工人使用的所有计算机都配备了盗版软件,包括其操作系统。而且,他们甚至没有购买任何许可证来复制其他计算机。换句话说,他们没有花任何钱在办公室购买软件。我并不是说复制许可的文件是合法的,但情况太多了。 有一个人安装了盗版软件。当我问他时,他没有内feel感,甚至没有道理。他甚至都不是专家。他只是在互联网上搜索以安装盗版软件。我们的老板对计算机没有任何了解,所以他采取了更便宜的方式。 你怎么看待这件事?由于我还是该公司的新手,所以我不对那些破裂的计算机进行维护。但是我必须每天使用那些软件。稍后,我将提供支持和帮助台工作。我真的不想承担操作盗版软件的责任。从开发人员和工程师的角度来看,盗版软件无法获得法律支持,并且可能无法正常工作。所以,我正在考虑换工作。 我在想太多吗?我应该等到我对老板有了更多信誉后,再尝试改变他的政策吗?到目前为止,老板没有对我说任何话。欢迎任何意见。谢谢
33 ethics 

14
向青少年传授软件病毒是否合乎道德?[关闭]
我自愿去儿子儿子的中学教一个课后电脑俱乐部。对计算机病毒的兴趣很大。我正在考虑向他们展示如何创建一个简单的批处理文件病毒,该病毒将感染同一目录中的其他批处理文件。还要说明如何创建一个具有相同名称但在路径中更近的批处理文件可以替换另一个程序。 它还可能允许讨论反病毒技术-识别病毒和类似病毒的行为。 我向我的妻子提到了这个主意,她认为这是一个糟糕的主意。与给他们装满武器相比。我不认为它是危险的,因为这种技术不能立即应用于任何现代操作系统上的任何恶作剧。 我是不是太骑兵了?还是她太担心了?这不是解决我这个问题的方法,我只是想征求另一种意见。 更新:我不打算讨论系统(甚至目录)之间的移动或任何恶意行为。唯恐有人认为我透露了任何深奥的秘密,这是我在图书馆发现的1996年出版的一本书,比我打算讲的要详细得多。如果有人出于恶意动机,他们会找到方法。
31 security  ethics 

7
在工作中使用个人代码是否合乎道德?
我正在工作的一个辅助项目中,我发现使用我自己(在工作之外)开发的一些代码来加快我的开发是有益的。我的副项目正在开发一个C ++ GUI应用程序,以使我们的高级用户可以对几个不同平台(DB2,Oracle,SQL Server和MySQL)上的数据库运行查询(由我构建)。过去,我通常只是应要求自行运行这些文件,或为它们构建Excel VBA应用程序。现在,我已经为几个不同的人构建了多个VBA应用程序,我发现有必要构建一个仅读取自定义.sql文件并针对各种数据库执行的中央应用程序。 我正在构建的应用程序是C ++,并使用LGPL跨平台GUI工具包。但是,多年来,我有很多代码是在我自己的库中基于休闲,非工作相关项目构建的。可以在工作中使用此代码,这样可以节省我(和公司)时间吗?如果是这样,我可以将所有错误修复和增强功能移植回我的个人库吗?似乎有一条我不知道何时要越过的线。 我只想补充一点,没有任何个人代码与任何业务逻辑有关。它们只是基本的实用程序类/包装器。

9
我应该告诉采访者我已经知道所提问题的答案了吗?[关闭]
在编程面试中,如果有人问我已经知道答案的问题,例如为特定问题提供算法。我应该把这个透露给面试官吗?仅当问题涉及新颖性时,此问题才有意义。 一个示例是“如何颠倒字符串中的每个单词,而不颠倒它们的顺序?”。似乎“应该”知道的较简单的东西(例如我的例子)和较难的更人为的问题之间似乎也存在分歧。 您处理此问题的政策和理由是什么?如果您已经熟悉了问题/脑筋急转弯,除了回答问题外,还应该披露吗?不披露您对该问题的先验知识是否涉及任何道德困境?
29 interview  ethics 

1
如果规格有缺陷,是否仍应遵守?
我被指派为我的雇主的应用程序之一与客户开发的外部系统集成。我们客户的集成规范存在一些与安全性有关的明显缺陷。这些缺陷将允许未经授权的用户访问系统以查看受限制的数据。 我已经指出了缺陷及其潜在的安全风险(如果按设计实施它们),并提供了没有缺陷的替代方法,但是(总之)客户已经告诉他们“按照我们指定的方式进行操作”。 程序员是否有道德责任不实施具有已知安全风险的代码?在什么时候,客户的要求超过我们作为软件开发人员创建安全应用程序所承担的道德责任?

19
使用盗版/破解软件进行开发[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 免责声明:我绝不纵容使用盗版软件。 您是否曾经目睹过将盗版软件用于开发目的?可能是一家公司没有足够的钱来购买一款软件,并且没有免费的替代品吗?可能是一家公司想在购买前试用一下,而该产品没有试用许可证。无论何种情况,您是否曾在一家接受使用盗版/破解软件的公司工作过?这样做有什么后果吗?
22 security  ethics 

2
关于在我的网站上使用的双重许可(MIT / GPL)JavaScript的困惑
我已经阅读了所有可以找到的帖子,但仍不确定答案。 我想在我的网站上使用jQuery插件,该插件在MIT和GPL下获得了双重许可。 双重许可是否意味着只要一个或另一个满足我就可以了,还是必须两者兼而有之? 我已经读到,在某人的浏览器上加载的GPL javascript不会算作重新分发,因此,我不必在我的网站的其余部分使用GPL许可证(提供源代码)。这是真的? 我的搭档认为我应该完全删除版权并更改变量名称,因为这将在商业网站上进行。这是道德的吗?我尊重花时间编写代码的人。我应该联系他们,看看该插件是否可以通过商业许可获得? 预先非常感谢您帮助澄清。因为这是我的第一个网站,所以我认为问这些问题比在黑暗中开枪更好。

5
我该怎么做才能防止进行不道德的发展项目?
规范指出,在我自谋职业的日子里,我曾经从事一个小型且报酬丰厚的项目:“新闻通讯系统”。 一切都很好,在达到每个里程碑时都支付了发票,我是一个快乐的开发人员……直到Client先生开始要求邮件标头欺骗和其他一系列功能,最终使我得出的结论是,我正在构建相当复杂的垃圾邮件。 简而言之:财务方面的考虑使我完成了刚开始的工作。到目前为止,我一直很讨厌最初担任这份工作–如果我打扰了google我客户的名字,就会被警告。 我可以使用什么策略来避免编写不想在别人手中看到的东西?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.