专栏名称: 纯洁的微笑
分享微服务实践与Java技术干货、偶尔讲讲故事。在人工智能的时代,一起学习微服务架构演进和大数据治理。
目录
相关文章推荐
国家知识产权局  ·  数码产品国补“满月” 超2671万名消费者参与 ·  9 小时前  
知识产权界  ·  年薪60-100万!广州嘉权专利商标事务所诚 ... ·  2 天前  
上海知识产权  ·  【动态】奉贤区知识产权局召开2025年度知识 ... ·  2 天前  
51好读  ›  专栏  ›  纯洁的微笑

交付程序不给钱,程序员一怒之下开源客户项目代码

纯洁的微笑  · 公众号  ·  · 2019-06-16 10:10

正文

作者 | 小智
国外一名自由职业的开发者在客户不给结款以后,将其开发的项目开源到了 GitHub 上,两天不到收获了超过 3000 个 star。除了此事引发的技术细节大讨论以外,背后问题不得不引人深思:开发者的职业道德与法律上的漏洞引发的事故,该如何看待?
不给钱就开源

最近,外国一位名叫 Jason Werner 的程序员小哥过得很闹心。

事件的起因是自由职业的他接了个外包需求,给一位客户开发一个名为 OneFraction 的平台。在跟客户沟通好需求后,他开始写这个项目,结果项目完成后客户摆了他一道,最后也没给他钱。于是他一怒之下把这个平台开源到了 GitHub 上,短短两天时间不到,这个项目的 star 数就已经超过了 3000 个,更是登上了 GitHub 的 Trending 榜单的榜首。项目地址:

https://github.com/TrillCyborg/onefraction

”I always wanted to be at the top of trending“

按照 Jason 小哥的说法,OneFraction 的设计初衷是作为一个平台,让用户通过平台支付租金而不是支票或银行转账。其价值来自于利用平台产生的数据最终创建一个租赁市场,用户可以通过其找到完美的公寓。

他的技术选型是这样的:Server 端用 Node.js 写就。服务器使用 GraphQL 和 apollo-server 在客户端和服务器之间传递数据,并以类型友好的方式键入以与 Mongo 交互。账户系统则选用 accounts.js。

Jason 的情况在外网引起了热议,在队形表达对 Jason 的同情以后,大家愉快地聊起了 OneFraction 背后的技术细节,不得不说中外程序员们一大相同点就是对技术的热情和兴趣,一群可爱的技术宅。

这样一个闹心的事件逐渐演变成了一场有关技术的 Party 让人忍俊不禁,但这背后的一些问题却值得我们深思。Jason 没有取得相应的报酬,对其创造的代码自然有全权处理的资格,但如果取得了报酬或者部分报酬,这样的问题该如何处置?当开发者面对道德选择与法律困境时,又该作何取舍?

这事儿是职业道德问题?

跟 Jason 相类似的情况在国内也有发生过,但更多的是一些私自开源公司代码、删库跑路的相关新闻,这背后,折射的是开发者的职业道德问题吗?

程序员私自开源公司代码,如何定责?

还记得不久前的哔哩哔哩后端源码泄露事件吗?

上线 6 小时 star 数突破 5 千,fork 数一路狂飙冲过 6 千,知乎、微博、朋友圈等各大程序员聚集地都在讨论这个相同的问题:究竟是主动开源还是被黑了?

后来官方回应确认了这是事故,不是故事。

源码的重要性不言而喻,有了源码,黑产不用再通过逆向工程的手段猜测运行原理和漏洞位置,直接通过阅读源码就可以找到很多还未公开的漏洞,这对系统的安全性是个巨大的威胁。不管源码发布者是何人、出于何种目的,这种行为本身既无职业道德,也触犯了法律。

根据极客时间《白话法律 36 讲》专栏作者周甲德律师的观点:

这要看程序员是不是具有主观故意,如果具有主观故意,轻则可能会被开除,并赔偿公司损失;重则可能构成刑事犯罪,代码在公司没有开源前应当属于公司的商业秘密,根据我国《刑法》第 291 条之规定,其可能涉嫌侵犯商业秘密犯罪。这里面主要是看此行为给公司造成了什么后果,如果给公司带来的影响小损失不大,公司可根据公司规定进行处理。如果程序员只是失误失职,没有主观故意,则可能会受到公司内部处理。

删库跑路,当笑谈成为新闻

“rm-rf”应该是你非常熟悉的命令行,也是删库跑路梗常用的背锅侠。但其实删库跑路这样的事情,真的发生过很多次。荷兰一家云主机厂商 Verelox,就曾被离职工程师删除了客户数据库,几经修复也不能完全恢复,最后造成巨大损失的。

新华社之前也曾报导过类似的新闻,某软件工程师徐某,离职后半年公司仍然不给结清工资,于是其一气之下,利用自己当年开发网站写代码时留下的后门文件,把程序源码全部删除,造成几十万损失。

这样恶意删库的行为,触犯了破坏计算机信息系统罪,将要受到法律的制裁。

本部分案例援引自极客时间《白话法律 36 讲》专栏

开发者是保护代码道德的最后防线?

2018 年 3 月,Stack Overflow 发布了他们的开发者调查报告,并首次提出了有关道德的问题。对于“开发人员是否有义务考虑代码的道德影响”这个问题,有近 80%的人回答“是”。不过,只有 20%的人认为他们最终在为不道德的代码负责,40%的人会在被要求的情况下写不道德的代码,只有 50%的人表示在发现不道德的代码时会举报。

如果代码对世界的影响不大,那么这也许就不成问题。打个比方,如果你写了一个对 100 个人不利的算法,虽然这事不怎么光彩,但产生的影响也是有限的。但是,如果你在拥有数亿用户的 Facebook、Google、微信上做同样的事情,结果就会很严重。

但对于开发者来说,光是每天写业务代码就已经让人心力交瘁了。更何况不管在国内还是国外,技术在大部分时候都是为业务服务,开发者的话语权是拗不过盈利的这条大腿的。遵守程序员的职业道德已经不容易,又如何去捍卫代码的道德?







请到「今天看啥」查看全文