频频曝出程序员被抓,我们该如何避免面向*编程?

过去几年,频频有程序员被抓的消息刷爆技术圈,无论是技术高手、公司合伙人还是普通程序员,甚至整个科技公司,都有因为违法被抓的案例。


案例


比如:


1、著名的Nignx之父Igor Sysoev的前东家Rambler集团就对Nginx提出了侵犯版权的诉讼,声称Igor Sysoe在任职期间所有的开发成果均属于Rambler集团所有,因此也造成Igor Sysoev被警方带去。


频频曝出程序员被抓,我们该如何避免面向*编程?


2、百度网盘破解版Pandownload的开发者实现以非会员权限突破百度网盘官方设定,实现高速下载的功能,同时建立QQ群,向进群人员收取1至10元不等的进群费,群内提供更稳定的“Pandownload”内测版本,最终起诉被抓。


频频曝出程序员被抓,我们该如何避免面向*编程?


3、深圳的某文化科技有限公司,九名开发人员,长期从事赌博软件的开发业务,服务于多个赌博集团。仅仅两年的时间,他们就制作了50余款赌博APP,一款便能卖出8万元的价格,他们从中非法获利500万元。最终被警方一举抓获,判刑数年。


频频曝出程序员被抓,我们该如何避免面向*编程?


  • 某达科技的程序员,写了一段爬虫爬取招聘网站简历被起诉;
  • 某博士程序员自制游戏外挂并出售被起诉;
  • 某程序员因为离职纠纷删库被起诉。


分析


随着科技进步,社会发展,程序员群体也在急速扩大,每年发生的种种“面向*编程的事件”,都为我们敲响了警钟。


有些案例是不懂法:比如Nginx之父,利用工作之余的开发的成果,获利后被起诉,判决表明确系违法;比如自制爬虫获取简历,可能单纯为了好玩或者秀秀技术,结果违法。

有些案例是发展中变为违法:比如百度网盘破解版Pandownload,起诉GitHub上有很多类似的软件,但引发刑事判决的关键是后期使用量大了,开发者自建群聊,收取进群费用,性质马上变的不一样。本身是百度收费的功能,破解之后自己去低价收费,但开发,存储、维护等都是百度来做,你去摘桃子,这很难不被起诉。


有些案例是自食恶果:为赌博集团提供赌博APP开发、维护;因为公司纠纷一气之下删库,清空数据;破解热门游戏,推出外挂非法盈利。这些从出发点来看就是心知肚明,知道自己违法了,但或为了自己泄愤、或为了牟取暴利,还是去做了,坐牢是最终归宿。


如何做


1、底线决不能碰


要彻底和黄赌毒划清界限,涉黄、涉赌、涉毒(这个很少)的软件及公司,无论许诺多大的收入,有多么丰厚的利润,坚决不去做,伸手必被抓,被抓也不值得同情。


2、爬虫需要谨慎


爬虫技术本身无罪,一些公开的内容爬取也合法,爬虫用得好可以节省很多时间,提高效率。但爬虫一定要使用得当,关键领域、特殊行业、内部数据坚决不碰。


前些年,新颜科技与魔蝎科技的CEO被查、公信宝被封、聚信立也宣布暂停爬虫服务。这些都是教训,如果你正在从事爬虫开发,那么请在空余时间多阅读国家网信办发布的《数据安全管理办法(征求意见稿)》、《网络安全法》等有关爬虫及信息安全的内容,提前预防比事后教训来的更重要。


另外,国家事务、国防建设、尖端科学技术领域系统,坚决不爬,如果被要求宁可辞职,另外金融领域需要格外谨慎,小心辨别。


频频曝出程序员被抓,我们该如何避免面向*编程?


3、个人隐私不能碰


爬虫获取个人隐私,数据隐私,并且贩卖的必然获罪。


经典案例还是百度网盘破解版Pandownload,其中一条定罪理由就有“突破用户的隐私权限,使付费会员可以下载他人的文件”,这个也是获罪的关键点之一。他人的用户信息、用户数据或者存储了一些什么,只要对方没有公开,哪怕是别人存储的公开的、到处可见的学习资料,你也不能在未经允许的情况下获取,贩卖。


4、盈利软件不可破解


对于一些盈利的网站、APP、游戏等,不要制作非法外挂,绕过对方收费限制直接使用,哪怕你做了,不要去贩卖获利,我国的《网络安全法》对于非国家单位的相关案件,主要的判断依据还是是否营利。如果破解了对方的收费功能,你自己去收费,那一定是违法的。


5、绝不做恶意攻击(DDOS)


无论是对你的竞争对手、看不惯的网站、APP等,决不能利用对方漏洞去进行攻击,这也是违法的,最次也是让你赔偿造成的损失,在网络如此透明的背景下,做了基本就会被发现,伤敌一千,自损八百,非常不明智。


6、不要侵犯著作


比如对已经申请著作权的软件,不要去反编译直接拿来用,更不要去获利。比较典型的非法获取某游戏的代码,搭建一套私服,自己运营,这样是违法的。


“竞争公司新出了一款软件,小王,你去反编译一下,明天咱就上线。”,对于这种要求要坚决说不。


7、工作之余研发成果


这个要辩证看待,我作为一个程序员,认为私人时间,自己去开发一些东西,还能赚点钱,又不耽误工作,有何不可。但Nginx之父的案例我们要重视,加入公司之前,一定要了解公司各项条款,如果有合同期成果物归公司所有,那你就要有取舍。如果签了合同,享受了合同带来的权利,那你就要担负合同规定的义务。


总结


对于大部分程序员来说,“面向*编程的风险”在于爬虫,如果你从事行业有爬虫行为,那么请仔细认真学习相关法律,对于明确违法的爬虫行为,要明确拒绝,哪怕丢失工作,避免出事被牵连。


另外就是非法破解获利、开发涉及黄赌毒等违法行为、破坏计算机系统、攻击网站等行为很好辨别,如果你做了,基本不是因为不懂法,我们这里不讨论。


技术无罪,但要多了解法律风险,更要设置底线,不能为了获利,明知违法还去做。


同时对于一些公开、半公开的信息爬取,数据统计且有获利的情形也需要格外注意,这个可能不涉及刑事追责,但容易被巨额罚款。

上一篇:Java并发总结(一)


下一篇:工作中常用到的 Spring 依赖管理技术盘点(上)