Gadgetory


All Cool Mind-blowing Gadgets You Love in One Place

Why GPL violations are bad - Gary explains

2018-02-06
hello I'm Gary Sims from Andrew authority now you may have heard of open source you may even know that Android is based on open source and you may have heard of a license called the GPL sadly you may also over learned that some companies don't respect the GPL license so what is all this about on what does it mean for us well please let me explain now whenever a program at writes a program for any platform they start by typing in the programming language into a text file and this text file is known as the source code and the source code then goes through a compiler and out the other end pops an executable the program that she sort of double-click on or you tap on to run inside of your PC or your laptop or your smartphone or whatever now there are two ways of which software can be developed one is a proprietary closed system which means that you have programmers they write all the code and everything remains closed everything remains private and secret to that company and they just ship the binary the final executable so if you think about companies like Microsoft and Apple and Adobe when you run their programs when you run office when you run Premiere Pro you're only just running the executable they've given you and that's plays an important part in the ecosystem that we have today but there's an alternative way to developing software which is called the open source model and with the open source model after you ship the final executable to the user you also ship the source code and say here is the source code that we use to create this product now just because you ship the source code doesn't mean it goes into the public domain it means that you can attach a license to it saying these are the conditions for this source code that we have put out there for you to see now there are two main types of licenses that govern how this source code is controlled the first one is called the good new general public license the GPL and basically the GPL is a social contract between the users those who actually use this software and the developers those who develop the software and the contract is this will give you the source code you can run it you can modify it you can study it you can you can ship it and develop it and send it off to other people you can do what you like but with one condition and that condition is that the changes you make to the code also has to be shipped on in the next stage and what that basic as it protects the developers that their work remains always out there under the GPL and it will always be under the GPL because every project that is based on that that continues that the develops that also remains under the GPL now there is an aspect of the GPL that sometimes catches people out and that's this if I write a million lines of my own proprietary code I have rip put a lot of effort into it and I want to ship a final product but I include GPL code inside of it then actually under that license all my code has to be released under the GPL you can't mix proprietary software and GPL software together now because of this it's actually sometimes come under quite an attack in fact in 2001 Steve Ballmer who was then the CEO of Microsoft said that Linux because of the GPL was like cancer and everything it touched was infected now actually that's not really true but the point he's trying to make is that you can't mix GPL code and proprietary code together it's just unfortunate that he use those kind of terms now mainly when developers have mixed the code either by mistake the suit is pointed out they remove the GPL code and write the code themselves so they can continue shipping their product in a proprietary fashion and that's absolutely fine now there's a second type of license which is much more permissive license and the most popular one is called the BSD license and BSD for Berkeley software distribution which comes from the University of California Berkeley map was used one of the original versions of Unix that was shipped now under the BSD license he says you can do whatever you like in this code you can modify it you can change it you can improve it you can run it the only condition is that if you distribute it my further on you need to maintain the notices that say this was originally developed by this user and that you have modified it that basically means you just have to keep the copyright notices intact inside of the program and in fact because of its permissive use you find BSD license source code all over the place it's included in Mac OS is including the iOS it's including lots and lots of places in fact if you open up the knowledge moves file inside mac OS there are pages and pages and pages of acknowledgments that are basically just reproductions of this bsd license code that acknowledges that some of it was written by this person's eyes ribbon and it's pages and pages and pages of it but the point is this permissive license allows you to do whatever you like you can mix it with proprietary software code and it there's no consequence just as well as your knowledge where you got that code from now the other license to be aware of is the Apache 2.0 license and that's because the majority of the Android open source product is licensed under the Apache 2.0 license it is a permissive license like the BSD license and basically says you can do whatever you want with it but it also grants the everybody a worldwide royalty-free right to use that software and because Android is based on that that's why companies like Samsung and LG and Sony and whoever can take the Android source code and produce their own version of Android and nobody comes knocking on their door saying hey give us the source code for how you tweaked Android give us the source code for how you implement that feature because I don't have to because that is the license that Google intentionally chose for Android now while the android framework is under Apache 2.0 the Linux kernel that runs at the heart of Android that interface between the hardware and the rest of the framework is actually licensed under the GPL now if you want to sign what role a kernel plays I have a video all about kernels which I recommend you watching I'll link it just up here now because it under the GPL it basically means that any company that uses Android with Linux has to publish their changes also under the GPL now what happens is sometimes there are OMS who ship Android handsets which means they have developed a handset they're using Linux they're using Android and they are selling these for a commercial gain for profit and they're not publishing their changes to the limits kernel which means they are a GPL violator now of course there are a whole bunch of legal reasons why this is not good because it is a license that they accept when they start to ship these products but actually the more important thing is that this is a social contract and the social contract is simple the companies have stood on the shoulders of giants people who before them have developed for 20 years now the Linux kernel and they have sweat in sometimes I'm sure they've cried and they have banged their head and they have worked on this Linux kernel and they have developed this amazing system that we use today and the majority of the contributions have not been paid living in their own free time doing it because they wanted to do it and when an OEM comes along and starts building a handset building a product and start selling it for profit and the Chairman's getting rich and the shareholders are getting rich and everybody's doing what they're doing from a commercial point of view and they're not shipping back their changes they are breaking a legal contract yes but they are breaking a social contract and when you break a social contract you are eating away at the very fabric of society you're eating away they're a fabric of community it becomes a social injustice how come a guy who worked ten years ago writing a piece of Linux kernel in his own free time how come they get to stand on his shoulders and they don't even bother to respect the license that he freely or she gave that source code into the open source community so companies that break the GPL are actually companies that are unethical and immoral it's not a big thing all they're asking is you've got all of the android framework for free you've got all of that software for free you could always compatibility with the Play Store and all these things for free all they're asking is that the changes you made of the kernel at the very bottom get published and if you can't sum up the energy just to publish those changes then there's something seriously wrong with you so to sum up then open source is a model whereby people who write code publish it out there for people to see but that publication is governed by a license and there are different types of licenses GPL BSD apache2 there's other ones like Netscape and Mozilla and MIT there's a whole bunch of them but the main principle is that if you're using the GPL the requirement is that you publish your changes we could put it another way freely you have received so freely you must give and a company that can't even respect that one ethic needs to take a long hard look at who they are on what they're doing my name's go since Ryan Groth wrote it and I hope you enjoyed this video if you did please do give it a thumbs up also don't forget to subscribe to and Roy Rogers YouTube channel it's better if you hit that Bell icon there so you get a notification every time we release a new video and last but not least please to go over to andrew authority comm because we are your source for all things Android
We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.