程序员被老板发现从网上抄代码,后果是怎么样?

李晖


老板的态度无非是要么是置之不理,要么是批评开除。从老板的态度上可以折射出很多东西来。

置之不理:老板要么不懂程序要么懂程序,老板不懂程序置之不理也正常,如果老板懂程序,那他应该明白这是正常现象。这种态度属于明智之举。

批评或者开除:那老板肯定是不懂程序的,既然不懂程序,就不要在那瞎指挥。团队里自然会有总兼把关恒量。老板的职责是统筹大局,如果这些细小之事也要插手的话,不要留恋立即走人。这里绝对会限制你的发展。


项目本来就是以结果为导向的,任务急,工期短,尤其在创业型公司里,从头到尾从零开发,要耗费多少精力多少人力?我们就要学会“拿来主义”啊,去除糟粕,取精华!

作为码农,将别的功能代码拷过来稍作修改,完成了自己的工作,这样的方式简单快捷,好用,bug少。

能抄到代码,还能知道到哪里抄代码,知道应该抄什么代码,哪段代码,抄完之后怎么融入进去,并且还能解决问题,结果代码还真跑起来了!这也是本事!这也是励练自己的一个方式!


所以自己要对抄代码也要保持清醒的认识,我能故我抄!


独绽2018


俗话说的好,“天下文章一大抄”。我们在工作时,新闻稿、会议纪要等等也是有一定的模板,我们只需要比着葫芦画瓢就行了。那么,程序员从网上抄代码这件事情,如果被发现,会面临什么样的处置结果呢?

实际上,编写代码时最重要的一条,就是学会怎样利用其他程序员的代码和思路来解决问题。程序员写程序抄代码这件事情,也可以视情况分为三种:抄算法、抄框架、抄整个项目。


其实,简单的算法可以自己写,复杂的,比如一个大型游戏,代码多到足以让全公司的程序员怀疑人生。而且一般这种复杂的代码需要和大型的算法公司合作,也不是简单的在网上随便抄一抄就能抄到的。


抄一个应用或者是功能的的框架这件事情,好处也是显而易见,减少了自身这个项目前期的重复工作,节省大量的人力物力,同事还能在现有的而基础上做一些自己需求上的改进,何乐而不为呢?而且应该很少有程序员去真的从最基础的时候一个字母一个字母的敲一整个程序的代码吧。


但是!整个项目不做丝毫改动地把别人的代码抄过来,这就涉及到一个版权和隐私的问题,严重的话是要负法律责任的。


所以说针对程序员从网上抄代码这件事情,要面临的结果无非下面两种,要么老板置之不理,要么被批评开除。


程序员要做的是在能抄到代码的情况下,还能知道到哪里抄代码,知道应该抄什么代码,哪段代码抄完之后能融入进去,并且还能解决问题,才是最重要的。


决胜网


老板会怎么样

if(老板对程序开发有了解){ //有了解,一点点的了解即可

认同,见怪不怪;

}else if(老板很开明){ //一无所知,但是开明

信任,尊重程序员的做法;

}else{ //不仅一无所知,还要胡乱猜想

可能需要一个合理的解释;

}

程序员为什么会从网上抄代码

我们程序员不把这个叫做抄,一般称之为“代码复用”。

当程序员需要使用到一个新的框架、类或者方法的时候,一定会做到有迹可循、有理可依,也就是不要乱用。

例如我们一个Spring Boot的项目,现在想用到Rabbit MQ,但是之前没有用过,怎么办?程序员一般会通过这么几种方式:

  • 打开Spring Boot的官方文档,看看如何和Rabbit MQ做集成。

  • 问一下同事,“你们项目有用到Spring Boot集成Rabbit MQ么?”如果有,代码拿过来参考。

  • 使用搜索引擎搜一下相关资料,看一下网上的代码,或下载个demo。

这些方法,在外人看来,都算是抄代码吧...

一些建议

  • 方案一,我觉得最好,因为官方文档一定是最全面的,但是对于大部分程序员,这个方案是最慢的;

  • 方案二,如果能找到的话,这个是最理想的。因为网上的资料不一定适用,还需要筛选。(比如软件环境、版本的差异)

  • 方案三,这个一定是最常用的,我了解程序员小哥哥喜欢万事不求人,能在网上解决的事情,就不问别人。

我建议,先试试方案1和3,自己解决不了的话,再去请教其他的同事。

我将持续分享Java开发、架构设计、程序员职业发展等方面的见解,希望能得到你的关注。


会点代码的大叔


第一,一般公司老板从来不懂技术,也根本看不懂你是不是在搜资料还是copy。第二,就算发现你抄,那也是正常,初级程序员抄代码已是常态。关注一下再看下面的精彩哈。



文|科技黑洞宇文笑

本人是在某世界五百强企业,公司的老板肯定是见不到的,部门总经理也几乎从来不会在我们这些普通程序员这边逛 ,而且不懂技术。至于所谓的老板,应该是那些技术总监,可惜技术总监一般情况也不会碰你的答案。而技术总监下面一般是技术经理,普通程序员就归技术经理管管,跟着做项目,即使他发现你抄代码,也不会说什么,只要你能完成自己手头上的任务,无论你用什么方法实现。甚至他会教你“抄”哪的,其实这是叫你借鉴代码,这样你才能完成你的左右。

现在程序员抄代码,是比较普遍的,抄网上的,或者复制同事的。复制同事的函数直接不改,就有些无脑,而复用别人的代码,反而是正确值称赞的,这往往能提高代码的整洁度。如果你抄网上的,一般是没有现成可以用的代码,只能借鉴其思路,然后结合自己的业务,写一套自己的代码,这种做法往往还需要程序员有不错的基础,不然你连别人的代码都不懂利用。



程序员宇文笑一句话:

善“抄”代码,反而是一种编程美学,不过请你优雅。觉得说的好赏个关注呗。


科技黑洞宇文笑


给你说个真事,某公司因项目需要,需要招聘外包开发人员。面试的时候提了一个具体的需求,问面试者怎么实现。程序员A回答说,这个简单,在网上随便就能找到类似代码,改吧改吧就行了,3天交差。程序员B长篇大论的从底层说到前台,需要半个月能初步完成。结果A被录用了。


knightserrant


抄代码分为三种。

一,整个项目抄过来,不做丝毫改动地把别人的代码照搬过来。这种情况很罕见,一是涉及版权问题,二是网上的代码都是烂大街的,抄过来也没什么意义,也获得不了什么收益。

二,抄框架,这点是比较常见的。拿盖楼来举例,就是把别人打好的地基,搭好的脚手架直接拿来用,省去了基础设施搭建的工作。盖房子就直接开始砌砖,编代码就直接开始写业务逻辑。好处是显而易见的,减少了项目前期的重复工作,节省大量的人力物力。老板家里要没有矿的话,一般不会反对用别人的框架。

三,抄算法。简单的算法可以自己写,比如求2个数的和,很简单,一行代码就搞定了。复杂的,人脸识别算法,没有几百万也有几十万行代码,倾注全公司资源都未必搞的出来,科技含量非常之高。这种时候,往往会寻求与专业的算法公司进行合作,通过付费的方式获取到相关的代码。


非著名程序猿


大家好,我从事嵌入式软件开发十多年,欢迎关注和交流。我不是老板,只是一个传统软件集团公司的总工程师,带过很多人,开发过无数量产过百万级别的电子产品。对于软件开发中的从网上抄代码,略表己见,怡笑大方。



首先表明,我们不提倡不鼓励从网上抄代码。但从整个软件行业来看,抄代码似乎很流行,尤其是今时今日,互联网如此发达与便利,开源代码如此丰富完善。

网抄,首先要注意,代码的Licence是什么,能否商用,能否修改,用后是开源还是闭源,有没有专利,等等都必须了解得清楚明白,这是原则上的问题,也是法律上的问题。



网抄,其次要注意,有没有能力搞明白代码的意义,使用方法,效率优劣,维护,完善和扩展的可能性,千万不能一无所知,糊涂使用,胡乱修改,否则后患无穷。

网抄,最后要注意,从网抄这事情上,除了解决需求之外,员工能否受益。比如,有没有学到一些知识,有没有学到一些代码思想甚至是编码习惯,有没有拓宽认知面和认知深度。




我们鼓励学习和借鉴网络资源,鼓励向开源社区贡献个人权属代码,鼓励用真金白银去购买优质代码或第三方商用库。

谢谢大家。


宏思微想


程序员主要是实现功能需求,至于怎么实现的,是不是从网上抄袭得又有多少关系,现实中又有多少程序员不是从网上直接复制代码然后应用在自己模块中,把优秀的代码看明白然后灵活应用写在实际代码编写过程中特别常见,现在的开源社区不就是典型嘛,拿到源码然后搞明白,进行各种定制,很多公司都会正大光明的这么去做,在当今的技术领域特别正常。

如果真是老板发现了代码和网络上接近,但是功能用起来没有啥问题,如果因此找到程序员说事,那这老板才是有问题,正常来讲代码的审核主要还是在于直接的技术主管,老板都操心到代码是不是从网上找的了,方向估计该处问题了,老板正常来讲关心的是结果有没有达成,如果进一步拓展自己的业务圈子,把产值最大化。

很多程序员的代码很少有直接全部自己去原创,毕竟软件行业发展这么多年已经积累了相当多优秀的模块代码,实在没有必要重复造轮子,进步都是站在别人肩膀上,这也符合实际需要,当然如果从网上抄录的代码自己本身不明白,侥幸用上了结果还没出错,那么就该好好反思自己了。别人的代码可以用但必须要明白,要不真做不长久。

希望能帮到你。


大学生编程指南


产品功能产出流程:

一、产品经理:需求调研、产品需求文档、原型图的产出。

二、商讨需求可行性(移动端、前端、后端、UI、测试、产品)。

三、根据各个职能岗位意见以及需求产出时间成本等等条件因素,修改需求。

四、需求文档、原型图交由UI、后端、测试

1.UI根据需求文档、原型图设计效果图、标注图、切图。

2.后端根据需求文档、原型图设计数据库表结构、接口数据结构、接口文档;

3.测试根据需求文档、原型图写测试用例;

五、如上所产出(计效果图、标注图、切图)(接口文档)交由移动端和前端开发人员开发。

六、开发人员开发完成自测之后交由测试人员进行功能测试以及性能测试。

1.测试人员根据《测试用例》进行功能测试形成报告反馈(移动端、前端、后端、UI、测试、产品)进行BUG修复,需求完善,交互优化等。

2.性能测试包括后端压力测试,移动端的内存等等。

七、最后进行灰度测试或者内部众测。

八、最终产品更新上线。

如上表述,程序员在一个功能开发过程中,最重要的是保证产品功能稳定性、扩展性。至于怎么实现如果没有意外。领导不会关心你怎么实现。而且在程序员这个行业工作要的是思路具体怎么实现复制粘贴代码是很经常的事情。so。。。你这个问题其实并不是问题。



程序猿王大胆


其实这根本就不是问题。

因为如何去构建代码,在项目一开始就决定了。

比如,一开始分析项目需求,觉得可以利用现成已有的代码实现,并且公司或者项目经理认可了,那么基本上你就下载别人的源码改就好了。

这种就无所谓抄不抄了,一般山寨野鸡外包公司比较容易发生这种现象,项目也是几万的小项目。

第二种是要从零开始开发,这种情况一般都是比较大的项目或者业务公司自己的开发团队。

这种情况是一个团队来共同开发的,程序的构架,用什么语言,什么框架已经由团队中的构架师或者其他主程序员决定好了。

这种情况一般一个人只负责一块的内容,也就根本不存在所谓抄袭代码的情况了,因为网上根本不可能有适合做的项目和代码让你抄。团队协作的项目中,你很多开发工作都需要依赖其他同事,你怎么可能直接复制粘贴呢?

最多是你找一找实现相似功能和代码,照着写。但是代码最终还是要你转换成适合自己的项目写。

当然,有一些最基础的代码有可能直接复制,比如递归算法,到哪里都基本一样。但是类名,方法名,变量名你总要自己改吧。

所以这种是根本不可能存在抄袭代码的情况,只要你能完成你自己的模块,那肯定是你自己写的。别人不可能预先知道你做的项目,然后写好了放到网上让你抄的。

但是除非是你不懂技术,不知道怎么得就混好了技术总监或者项目经理和职位上了,然后你欺骗公司或者客户,说你独立开发的程序,结果你随便网上找点源代码改吧改吧就给人家了。

我觉得这就不叫程序员抄袭,这属于诈骗行为。


分享到:


相關文章: