 So thank you everyone for coming This software is a free soft this session is free software and you Yeah, the software is free. The session is free. Well kid sessions not free My name is Larry Garfields. I'm a developer with talents here dotnet, and this is Peter O'Lanon Peter introduction I'm on the journey team with aquia and And Peter waylaid me into doing this presentation with him since I'm also on the board of directors for the Drupal Association dealing with legal matters Neither of us is an attorney. We just talk about it a lot. So we'll put that caveat out there to start with Before we actually get started, let's have a just quick poll here who here considers themselves primarily a developer Okay, who here is a consultant of some kind freelance consultant Who here owns their own consulting shop of some kind? Who works for a large company that happens to use Drupal internally? So what are the rest of you do? I think we hit everyone at least once. Yeah, okay So free software, what are we talking about so let's set the way back machine for 1960s computers are still you know big honking piles of expensive metal and Any software on them pretty much has to be compiled for that machine If you have to provide software to someone else You're providing them with source code for it because it doesn't work otherwise And they usually have to modify it to get it to work on a new piece of hardware anyway so in a sense all software is freely distributed because there's no value in it the values in the hardware and it doesn't occur to people to Charge separately for the software because well, it's useless without the hardware anyway That began to change in the late 60s early 70s as you started to have computers that could run software that wasn't custom compiled for that particular box and You quickly had a business model spring up of selling software licenses and selling software as if it were a product And this got kind of popular But also annoyed an awful lot of people especially people from academia who were used to the idea of just sharing information And one of the people that this really annoyed is a man named Richard Stallman who at the time and the early 80s worked at MIT in the United States and famous story he had a problem with his printer driver and As any good geek dug into the code and figured out the problem and made a fix for it and Sent a patch back to the company and said I found a bug. Here's a fix for it. It's a great. Thanks Please sign this 10-page document saying that you will not tell anyone about this bug And you will assign all copyright over to us and he said what? And well, why would I have to do that? Well, how else are people gonna get the code unless we give it to them and you've given us complete license to do So and he said well screw that I'll give it to them and you know you can go away and Being a stubborn person He started the GNU's not Unix projects or GNU GNU being the world's first recursive acronym because Stallman has a very weird sense of humor Basic idea being at this point most Unix like operating systems were proprietary expensive closed source You know all those things that he didn't like and so he founded the free software foundation in 1985 with the express purpose of Creating a completely free operating system From the ground up called GNU Now when we say free we're talking about Free isn't speech not free isn't beer not that there's anything wrong with free beer mind you most of us rather like it but free in this case we're talking about liberty in non-English languages free is usually translated as Libre or Libre You know we're whatever language you're translating into And when we say free here we specifically are talking about These four criteria that the free software foundation considers to be the definition of free in this case for our freedom There's freedom zero because Geek start counting at zero Which is the freedom to just run a program for any purpose Whatever that purpose is whether the person who wrote the code morally proves of it or not You get to run the program to do whatever it is you're going to do Freedom one freedom to study the program and change it to suit your needs the freedom to share copies with others to help your friends and The freedom to improve it and to share those improvements with others as well so that everyone benefits Not just you not just the original developer, but everyone benefits And I actually like to resummarize these four freedoms as the freedom to use learn improve and share These are all really nice concepts, you know you do what you want with this software Let yourself learn, you know make the world a better place share with your friends You know this is what we tell our children is the correct moral way to behave is share your toys and Free software is based on that same concept. It's morally correct to share your toys and to this end the free software foundation published the Canoed general public license, which is a software license that's when you strip away the legalese basically says here's this code You have these four freedoms from me On condition that if you redistributed to someone else if you share it with someone else You give them the same freedoms and that includes if you have a modified version with cool new features You share those features of them too, so it's a share alike license and that's basically the concept behind free software and Okay, the free software foundation and a team of developers started working on this completely free operating system and by 1990 or so they had almost everything you need for an operating system except for a kernel which handles the actual device drivers It said okay Almost there. Let's start working on a kernel and then in 1991 Some Finnish student dumped a Unix like kernel on the internet and said hi I've got this little toy project that probably won't go anywhere, but if I thought was fun to write and People said hey, this thing is great. Now if only you had the rest of the stuff to put on top of a kernel Hey, look here's this cool stuff that you can put on top of a kernel that the GNU project is written so now we've got this great working Linux operating system and The free software foundation said no 90% of this code we wrote it's GNU And so you'll find a lot of people who'll say you know, it's GNU Linux versus Linux They lost that fight. Just you call it Linux Yeah Okay, I was gonna say one thing if you look today the GNU project still has a kernel Underway called GNU heard which has yet to actually they've been writing it since about 1990, right? It doesn't work yet So, you know, they had this Linux or GNU Linux operating system And application software on top of it that was all distributed for free And you know if it has freedom software And but there's still other stuff to do with That software and there's still money to be made there in services in training in consulting And so forth and there are companies that built a pretty decent business model around this And over time people observed as in particular a man named Eric Raymond In his Paper called the Cathedral in the Bazaar that you know what this share like philosophy on software It works really well for making good code Because when you're able to collaborate and share code rather than wasting effort competing with each other and keeping things hidden You get a better product out of it at the end At the same time a lot of businesses were really turned off by this word free And you can blame the English language for this completely Like I'm saying this in England. So I'm not sure that their joke would go over as well as it would in Copenhagen And yet the idea of free software turned off a lot of businesses free for that I want to charge money, you know So they coined the term open-source software To be more like a business-friendly marketing version of that and You know the open-source initiative, which is falling off the side of the screen here. I apologize for that According to some open source and to find it this way There's I think ten different points here for what something has to you know What a license has to be to qualify as open source and these are in fact slightly different than free software In particular you could have and something that is open source where you're allowed to distribute the original Code and your change is a separate patch, but you're not allowed to combine them That's legal under open source definition not under free software 99% of the time something's gonna be both But not always for more information on this open source org It's the home of the open source initiative and I'm happy to say it's a Drupal site and I'm not happy to say it's still running garland But open source is primarily a development model that makes better code free software is a philosophical model of sharing is the right thing to do and of course this pissed off this Free software people again because you know if you're saying this is morally correct Then the fact that it produces better code is beside the point. Maybe it's true. Maybe it's not but that's beside the point in Practice both are true in most cases. I would argue And in the case of a Drupal in particular You get all of them Drupal is developed in open source fashion. It is free software It's under the GNU general public license or GPL There's no cost for it. So it is free as in Drupal beer. We do in fact have our own Drupal beer and free as in freedom So with that I'm gonna hand it over to Peter to talk a bit more about the nitty-gritty details of You know what you should know about free software licensing So thanks Larry. So that was kind of the history of How these licenses developed where the free software movement came from What I want to talk about was a little bit more of a practical approach So if you're a developer your consultant your business owner there's some things that that you know We've sort of struggled to communicate to people use Drupal about What Drupal light the Drupal license is how Drupal should be used how the code should be shared and As we'll talk about that you don't have to share the code is an important point The most important thing to sort of keep in mind is a broad Underlying principle is that all software licenses are based on copyright So if you write code generally you own the copyright or your employer owns a copyright And your permission to use the code Drives from that copyright. It's a license from the copyright holder And if you go and buy something like a Microsoft product some other commercial software to run on your machine You'll see what you're actually buying is an end-user license. You're not buying the software You're buying a license to use the software on one computer or two computers or whatever the terms the license are And that's important to keep in mind. It's important to keep in mind that as a developer so speaking to other developers If you're writing code and you want other people to be able to use your code You need to apply a license to it. You need to be apply a free software license so other people can take your code reuse it Rather than being if you don't apply any license, they can't use your code at all legally And People often when they hear this say well, you know what I just want everyone to have it I just want to give it away. I want it to be for the public. I don't you know I don't want to think about licensing Unfortunately in the legal framework we live within that doesn't work. There's no effective way For you as an individual to dedicate a particular piece of code to the public domain to really give it away It's it's pretty hard. You have to probably have a lawyer help you with that So instead it's much much easier and really the same thing in terms of the end effect If you apply very liberal license to that code a liberal open source or free software license to that code That lifts anyone who wants to has a license to take the code use it change it and give it to other people That's what you want, right? So just again if you're writing code Make sure that you always include some kind of licensing statement with it So the people know what terms that can use the code under and I'll talk In a minute about what some of those licensing options are But so we have a copyright as the basis of all licenses and one of the things that term the Salman came up with is Sort of the basis of the GNU general public license is a term called copy left And this is where he had the insight that he could use the rights of the copyright system And instead of enforcing restrictions on other people he could use copyright to enforce freedoms He uses the GNU general public license is written so that it enforces Sharing you don't have any choice. You're only the only way you're allowed to use the software Under the license from the copyright holder is if you also share it with if you share it Then you're giving the person you share it with the same freedoms Salman sometimes refers to it as a clever hack of the legal system that actually works pretty well pretty darn well Right so this I mean and there have been court cases testing the terms of the general public license and not extensively but in general it is held up that this system of enforcing sharing Does work in the cases where it's been challenged or things where people for example have used Linux as a basis of like a set top box Right and if they forgot to give everyone the source code or didn't know they needed to or decided not to and they were Taking the court and they had to go ahead and give everyone the source code That ran on their set top box Which was based on Linux So if you're a developer or a business owner or someone who's out looking at different software projects, not just Drupal you will typically run into a Bunch of different licenses and really the three that I want to talk about are the most common Both that you'll encounter and that you might want to apply to your own code The first is the GNU general public license represented by the GNU of course the Sometimes called the BST license more properly the modified BST license is a very simple license This is used for for example the open BSD or free BSD Operating system, so that's their little mascot there the devil is the free BSD mascot Technically, it's a demon as in a background process on a computer again open source people have a very bad sense of humor, right? And the third is the feather which is the symbol of the Apache foundation Apache Software Foundation So Apache Software Foundation has a license that they apply to all their code So for obviously you guys know the Apache web server So the code for the Apache web server is licensed under the Apache Software Foundation license actually version 2 and So all three of these licenses are Basically free software licenses. They give you the rights to modify the code and redistribute it But they're not only the general public license the GNU one Is the only one of these three that's copied left So that's the only one that says if if you receive the source code You must give everyone else the source code when you distribute the software If you want something that's very close to public domain You can use the modified BSD or something like that and that's a such a simple license It basically just says more or less do what you want with this And there's no warranty. Don't sue me. That's basically what the BSD license says If you're interested in finding out more about the philosophy as Larry said There's sort of a philosophy of free software in addition to the practical implications. I Have a link here so you can actually download an entire book by Richard Stallman and If you're interested in the sort of the philosophy philosophical underpinnings or how this movement developed, but I'd recommend it It's really a kind of fun reading just to see the thinking process that that led To this general public license, which is now really an important part of our lives Given that it's licensed for Linux licensed for Drupal licensed for a lot of the software that we use So again Because it's the only copy left license, I would argue that the GPL is the only license that really preserves your freedom And the good news is that Drupal itself uses the GNU general public license if you look at the FAQ that Larry wrote with input from legal minds you'll see that We say that you can use Drupal under version 2 or any later version of this general public license And that's actually has important implications. I don't want to go into them here We can talk about them in the Q&A if people have questions But remember so the GPL is a share alike license and One of the implications that is if you write a module or a theme The the legal framework says that module or theme really depends on the Drupal core It's it's derived from the Drupal core right here if you wrote a module on its own It doesn't do anything if you wrote a theme on its own It doesn't do anything therefore it really has to integrate has to be derived from a particular version of Drupal core And therefore that code is covered by the same license as Drupal core, which is the GNU general public license So you don't if you write Drupal code if you write a module or theme you don't have any choice This is important to be aware of you have to Distribute have to license that code under the GPL Now that might Scare people you're thinking wait, you know, I'm writing this software from my site and I don't want to share it Well, that's okay The GPL only says if you share it these are the terms. There is no requirement that you share Your code whatsoever You can keep you know You can go off and you can write as many Drupal modules as you want Use them to run Any number of websites and you don't have to share that code with anyone So you can keep your website code private That's well within that's within your rights at AQUA We certainly have projects where you know, we have a few modules custom special modules. We're not Distributing those those are just you know for our own internal use and everything else Goes to the community and in fact you have the more we share and Larry will talk about this later the more you the more we share though The more we benefit From the system where everyone else can see the code everyone can help us fix the problems with it So really while you can keep code private you should think about really it's to your benefit to share as much as you possibly can One important point on sharing there with PHP code or JavaScript the source form and the usable form are the same thing but if you're doing something in C or Java or flash then there's a separate compiled version and a source version What the gpl says is if you distribute the compiled version to someone they have a right to the source version as well So and you have to tell them that they have acts they have a right to that They have access to the source version of the code doesn't matter in the case of PHP code because it's the same thing But if you work in other languages as well That's an important thing to keep in mind that if you distribute the compiled version you have to distribute the source version as well So I'm one of the reason that I wanted to Right you're not distributing the software so there is a version of The gpl called the afero general public license And this is the license actually used by MongoDB by yeah, and by civi CRM and some other projects and That has a clause that says if you put it on like on a public site if it's accessible then you have to share the code right, so that's that kind of Closes what we call the web service loophole so the gpl Even in version 3 decided to maintain this web service loophole that you can run a Public service with the code and you don't have to give people the the software right, yeah Just because you have some custom module you wrote for a client site or for your site The fact that someone visit your website does not count as them getting having the code distributed to them They're just visiting your service So, you know what in addition to? You know wanting you to know about how Drupal his license You know this is sort of a philosophical thing as Larry said it's it's almost a moral question that you know To be a good community to be a healthy community where we help each other we need to support sort of these values of freedom of sharing and part of that is that we need people to be aware of actually what the gpl is and what those values are and how it works and Again, you know just to sort of re-emphasize the gpl Even though it's a free software license is actually somewhat restrictive and it's more it's more restrictive than the BSD license more Restrictive than the Apache license in the sense that you are required to share alike You're not allowed to distribute the binary form without the source form So it's really freedom for the users Not so much for the developers, but for Drupal. We're all both right There's none of us that is a Drupal user and are a Drupal developer not also a Drupal user You're always some combination of both so for us Yeah, this is the sort of the basis of our whole community is our ability to share all this code so freely Another sort of side note that I don't want to go into a lot of detail is that you should be aware in in the broader Field of software. There's a lot of sort of noise and concern and lawsuits regarding software patents Software patents can be a problem for you whether or not you use free software whether you use So basically anyone involved in developing a software product could be at risk of Being sued for violating a software patent But using free software doesn't make that more likely and in fact the version three of the gpl and the Apache Software Foundation license version two has some clauses in them to try to penalize anyone who sues someone Building on open-source software So we can talk about that a little more later. You can research it. It's probably for most Drupal people It's not that important to clarify it penalizes people who Make patent lawsuits against someone using free software if they're also using that code It doesn't penalize someone just using free software, right? Sorry. Yes It attempts to penalize the person initiating a patent lawsuit This is sort of I think rather untested in practice, but it's just worth being Aware of and there are other challenges to freedom The sort of free software freedom aside from software patents One of the sort of interesting ones both from a sort of philosophical and technical standpoint is the Tevo Do people know about to volatilization as a term so this was coined by Stallman and He was very upset about this so what Tevo did And still does as far as I know is that they use Linux as the basis of the Tevo So they're distributing Linux and they distribute the source code of Linux with it because they must But they also have a chip in the Tevo and the chip checks Signatures digital signatures basically hashes of all the software in the Linux Distribution and if those don't match the thing that Tevo thinks it should match it won't boot So you have the source code you can modify the source code you can recompile it But you can't actually run your modified version on the hardware because it has the chip That prevents you from running a modified version so this upset Richard Stallman very very much and he coined the term Tevozation Though he admitted that this was not violating the terms of the GPL. It's you know kind of in a practical term Taking away your freedom, but you know in terms the license he'd written it was okay So in version three of the GPL this is specifically prohibited Yeah, so he fixed the bug the The practical effect of this has been very low though because very few projects have switched to GPL version three The Linux kernel is still GPL version two only I most the you know GNU software still the GPL two so Well, you know Stolman did fix the bug. It's this this practice of devolization is still you know Something you should be aware of it you can actually think of cases where this is useful So if imagine this was not a Tevo for TV But imagine this was a voting machine Running software right and we don't want the voting machine to run modified software So the GPL three actually includes a funny exclusion for this that it's okay. It's still okay to do this if it's commercial hardware and not sold to Private citizens basically so that it for exactly the case where you know you're running a voting machine You're running an air traffic control system something where it's really important that that's the right code And it's like a commercial thing But again, you know so be aware that there are there are ways you have the GPL is not sort of bulletproof and in every legal sense In terms of your freedoms, but is really the best tool That we have out there and to sort of show you the flip side So if we think about those other licenses I mentioned the modified BSD in the Apache license Those aren't reciprocal licenses So they don't enforce this share a like principle on you or on people who use the software and I've experienced this myself. So I have contributed a little bit to a open-source software project this license under the Apache software foundation license And you know those weren't big improvements, but you know, okay I'm happy to be a contributor to another project and then I found that okay You know commercial company took a version of this software It's a Java project as many of the Apache projects are and they come you know I have a compiled version where they made some other enhancements that looked really interesting They're like well, I'm like this is a great feature. I want to know how it works But I can't Because it's under the Apache software foundation license. They have no requirement to distribute the source code So I can get the software in the compiled form I could you know run it under a trial license or I could pay for a commercial license But there's no way for me to get the source code and see how that feature Actually works or use it for myself even though I'm one of the contributors to the software that they're selling right, so that was very frustrating for me and You know again, I think as as a developer you know think about where you want to invest your time with Drupal This is never gonna happen to you as Larry said a little bit because it's PHP. It's hard To make a closed version of PHP, but it's possible There are there are software that will make you know obscured or compiled versions PHP where you can't actually see the source That's not something anyone could ever do with Drupal And just a side note again though on on business friendly as Larry said the open-source movement is sort of a reaction to to Business community not understanding the implication of the word free in free software So there's sort of ability to close source the product to sell it even though it has you know Community contributors to it is in in many circles considered an advantage So the patchy software foundation says that this is why their license is actually better than the GPL Because people can do this they can make money off it by selling you a proprietary version And that encourages them to contribute to the open-source one. I Don't really agree with that point of view, but you know, it's worth being aware of that argument and why you know, that's That's sort of a get attention you might say between people who advocate free software versus people who advocate open-source software Another point You know, that's important for Both contractors developers business owners think about is when you have some code written that you write Or you have written on your behalf who owns the copyright? That's a really important question because if you remember at the beginning I said licensing drives from the copyright So if you don't you have to know who owns the copyright in order to know who can license the software and who really has The right to distribute the software So if we're in the US the law is pretty clear that if you pay someone to write Something for you a novel or a piece of software The person who paid owns the copyright In the EU I'm not as clear on the situation I think in some cases you may actually retain the copyright even though someone else paid you to write the work So I would if you're in the you may know the answer to this question already if you're not sure I would You should investigate it if you're working though as a full-time employee The copyright almost always belongs to the company you work for So the code that I write the code that Larry writes Potentially, you know belongs to our employers and this is in terms of your Drupal contribution something to think about because it's not Your willingness to contribute back to the community that matters It's you may also have to convince your boss your CEO someone that it's to the advantage of you It's to the advantage of the company. It's to the advantage of the community for the company to Contribute this code that's under their copyright You know and once they contribute it once they distribute it. It's automatically into the GPL But they have the choice as I said before they could keep that soft that code in-house There's no requirement that they send it out and you as an employee don't necessarily have the right to share it Because you don't own the copyright Another thing to keep in mind there at some companies. I think this is more common in the US than in Europe Code that you write on your own time may or may not be owned by your employer depending on your employment contract check it I I would personally recommend not signing a contract that gives your employer Ownership of code you writes on your own time, but some employment contracts do say that so be aware of that and look into that Not really copyright questions more of a contract law question, but something to bear in mind So another thing to think about you know again as a developer is a contractor as a business owner is Questions about You know when you do a project Who ends up owning the copyright? What is the license? How is the code going to be distributed or not distributed at the end of that project? So in particular you should think about when you're signing contracts Does that contract specify who owns the copyright? So what I mentioned before is that you have the general overriding law You know in the ES and you may be different But you can really write a contract that specifies those terms and that Contract then overrides whatever the general law is in the absence of the contract So when you sign contracts or someone you may want to go ahead and say you know the code I write You know will be you know I will retain the copyright to the code I write for you as part of this project You know now people may push back and not be willing to do that But it's an option and I know some companies like Larry's actually require that of their clients They require their clients to give the copyright back to Palantir so the Palantir can then reuse the code or share it with the community We've had that policy for 15 years now Palantir owns code that we write for a client and license it to the client For the past several years. It's when we license the client under the GPL Some clients have a hard time swallowing this concept once the their legal department doesn't get it But we have been able to convince them that no, this is not a threat to you. Yes, it's okay No, you can't own the copyright to all of Drupal. Sorry Not everyone's legal department is fully clued in As a developer as a consultant part of your job is to educate your clients on you know Why not just Drupal is right for them But the GPL is right for them because that is part and parcel of using Drupal So in addition to actual contracts When you're an employee when your contractor depending on who you're working with you may also have nondisclosure agreements So you should if you have such an agreement sign you should look at it because that again may end up restricting you from distributing code even though you own the copyright you may have a nondisclosure agreement and your Person working with say may say no, that's actually confidential information And I'm going to sue you if you put it on Drupal.org So again, you know if you sign those kind of agreements think it you know think a little bit about okay How does this actually affect code? I write how does it affect? You know my ability to contribute back or release things that aren't really secret It's just you know part of this project that I'm working on a client with Another option that I know some shop steak I believe four kitchens does is that they don't ask the copyright to the code But they put a term in their contracts requiring the clients to license back the code to them under the under the GPL I mean it obviously has to be GPL So the client then ends up with a copyright which maybe makes their legal department feel better But because they have then agreed to license the code Back to poor kitchens or to you know, whoever there the shop is That shop is then free to continue to redistribute that code because it's GPL it's share alike They have that freedom so that's sort of a workaround if if you know you can't in for you know Can't get the copyright assignment if you can ask The code to be licensed back to you you effectively have the same end result in terms of your ability to share the code A final thing is as if you're a developer and you're going out and you're looking you know Sort of in the broader world you look at github you look at various you know code sharing sites and you see some code You want to use you need to stop and think of a little bit about what? Licenses that code being shared under hopefully it has a license statement at all so github doesn't require people to put a license statement on that code and You know that means by default you can't actually use the code you can read it But you can't you can't take it and use it for anything If code is licensed under something very liberal like the modified BSD You can combine it freely with gpl code and that's great So if that's sort of why I said at the beginning if you want something to be used most widely You want it to be essentially free The modified BSD is fine because then someone can then take that and combine it with let's say Drupal code And then it will be under the gpl, but they've at least you know, they haven't been inhibited from reusing it It gets a little more Complex with some other licenses like the Apache license. It's compatible with version three of the gpl, but not version two So if again if you're doing your own projects, I would recommend sticking with either gpl or something like the modified BSD That's a very very simple license Thank You Peter So, you know all this is great. This is wonderful. It's a lot of fun rules and legalisms and contract law and Oh boy, so what's in it for me? what is it that is you know what benefit to you actually get out of Doing using free software aside from it's the only way you're allowed to use Drupal What benefit is there to you to actually participating in a free software project? you know what value do you get out of that and The key question here is there are lots of different ways of defining value most people define value in terms of money But that is not the only way to define to define value Vance You can define value in a number of different ways depending on what your goals are in An open-source project and a free in the free software world The primary currency is not money But karma and we don't mean karma in the you know hand-wavy spiritual you know rebirth sense we mean karma in terms of You know reputation good deeds building You know good good street cred essentially Because that's what leads to a kind of come on You know you scratch my back I'll scratch yours type of environment You know good case and point here when I first got involved in Drupal six years ago I had a hard time getting Drupal installed and I posted in the forums and you know ask a question and some guy Answered my question and helped me get Drupal installed He didn't have to he didn't get paid for it, but Five years later six years later. We now have a new Totally awesome database layer in Drupal seven that can do way more than the old one that he now gets the benefit from and He didn't have to spend a dime on it because You know me and a team that I led managed to write that instead Another case in point when my company Palantir first started getting involved in Drupal We had some trouble you with the views module just figuring out how to do things with it everyone knows the views module like some okay and so I started talking to Earl Miles the maintainer and He spent a fair amount of time walking me through how to do some particularly complex things with views that he had given away for free to us and You know we didn't pay him for that. I eventually bought him dinner But you know he actually didn't make any money off that What he got though was new features added to views that I wrote later on on future projects at a Palantir And then went on and gave several presentations at Drupal cons on using views And pushing those kind of architectural changes. So he is getting something back for that time He invested in helping me because then working with the project I'm then helping him the database layer working on views itself and so forth in that collaborative model The best way to get what you want is to give other people what they want This is and any successful business is built on this concept as is any successful open-source project Because you know this is how you build up this how you demonstrate that you are a good person to work with And that's what you really want Now isn't this, you know, you're still giving away what you what you the value you bring to the table your code not true Because your code is useless. No one hires you for your code They hire you because you're smart at Palantir You know our intellectual capital is the experience and expertise and problem-solving we bring to the table not code People don't hire Palantir because of the code you've written the higher Palantir because of our brains that we've demonstrated By releasing code and giving it away for free because we've demonstrated our expertise in using Drupal in working with Third-party systems and tying those into Drupal and the various other things that we do Yeah, that is what we are demonstrating is our expertise in Drupal and that's what people pay for and That kind of participation demonstrating your expertise is how you get people's attention and These days where so many things are dirt cheap We're living we're moving into an attention-based economy as a society in the Western world where you know attention is measured in time time is the currency of attention and They're not making any more of it. It comes at the exact same rate. There's no inflation on time and Getting people's attention gets you new customers Getting people's attention gets you job opportunities if you're looking for work Demonstrating that you are a good developer and play nicely with the community helps your resume It gets you influence. Let me ask you raise your hand if you're actually from the UK right quick Because I have your attention right now. I have now compelled you to take an action That's power. That's the value you get out of participating in open source You know because I've contributed so much to the project I'm now one of the initiative owners for Drupal 8 that gives me an enormous influence into the direction of the project Because I've been working with it for so long That I've gotten the attention of other developers. That's value What you you're building Come on is your reputation and reputation in open source is everything Reputation is marketing If you want to be you know economic about it Reputation allows you to do things like be selective with your clients At Palantir, you know, we have our high enough profile that we can be selective in who we work with You know, we can say, you know We don't need to take every client that walks through the door We can pick and choose these the clients we find interesting. This is the work We want to do these are the clients we want to work with that matters. That's valuable and That's something you get by building good reputation in the community allows you to be selective in your employees It's hard to find good Drupal talent. There's a way more demand for Drupal people than there are Drupal developers but if you Have that kind of reputation Then you're more likely to be able to attract top talent whether you're a consultant like Palantir whether you're a services company like aquia whether you are One big site like examiner comm or the New York Times both of whom run Drupal You know having that kind of reputation not just of having a big site But playing nice with the community will attract the kind of people you want to attract I'd let you know your employees beforehand too because reputation is also your resume At the Palantir I've frequently been in the position of Hiring new developers and we get a resume in for someone I don't look at the actual resume The first thing I do is I go to Drupal org and see what they've done What modules are they written? Can I look at their code and see if it's good code? What are they like in the issue queues? Are they polite? Are they jerks? Do they work on a whole bunch of models of the state of one little area? What's their expertise in a given area? Are they helping people out in the forums? What are they like in IRC? These are the kind of things that you can build by working in an open-source project this gets you clients this gets you hired Yeah, so For a time reasons to skip this this worked out really well for Palantir back at Rupal Khan San Francisco We hired a whole bunch of new people because we had our pick of really good candidates This is also a business philosophy free software is a business philosophy Not just a software philosophy that is based in trust and by trust I mean, you know, it's just the basis of how you do business When you're dealing with proprietary software, you're dealing with fear you're dealing with The fear that your client is going to go elsewhere You're dealing with the fear that the consultants you're working with is going to stab you in the back You're dealing with the fear that Someone else is going to come along and do something better than you can and you won't be able to compete You're dealing with fear that you're not good enough So to compete in the market was also going to say and proprietary companies also use fear against open-source and Particularly even against Rupal and you will see this in the broader world and should be aware of it that people say Well by our product it is More secure because it's commercial. It is more secure. It has less bugs It goes faster. Yeah, I can't see your code. How do I trust you that it's actually more secure, right? So you can't see the code, right? You don't know you don't know how many bugs there are how secure it is but but big software vendors will use this argument and You know sort of this trust model is your defense against that Because free software is at the end of the day based on trust trust that You know your client Is not going to go elsewhere because you're good enough Trust that your reputation is good enough that it'll get you new clients Trust that when you're working with the rest of the community you will get back as much as you put in It's based on you know trusting in The community review process that lots of eyes working on code is going to make better code Great quote from Chris Tabana from Google at Drupalcon Boston several years ago Popular open-source software tends to be secure because insecure open-source software becomes unpopular fast It's a good line you know with free software you're trusting in yourself in your clients and in your community and Personally I am more comfortable Working in an environment and a culture that is based on trust than on fear as both a business and as a society I think that trust model also helps you make business pitches Because you can go to a client and say You can go to anyone else with this project if I'm not good enough You know that I'm gonna satisfy you but you're not locked in by choosing Drupal You have the freedom to choose any you know these hundred consulting firms To finish the project if it doesn't work out between you and me and that that pitch of trust me because you're not locked in I think helps win business if you can use it effectively and that doesn't mean you're that clients are going to wander off on a regular basis It means that they can sleep at night knowing that they're not wholly dependent on this one developer Or on this one company and vice versa and that builds a trusting relationship between you and your client or you and your vendor Where you're working together rather than one of you having the other by the balls and That's just a better environment to be in side note so tomorrow afternoon, there's a session called having an open relationship with software is that right? so which Jacob presenting so if He's gonna focus even a little bit more on the business aspects of this how how to make money how to run a business in an open source Project that's part two so So for the recording that's practical techniques for engaging Obviously people watching the courting. It's not going to help you much, but everyone in the room I do encourage you to go to that session. So we've got about ten minutes. So questions so For Drupal beat the question. I'm sorry. You're right. The question is Marking code files as what the licensing terms are them are on them for Drupal what we recommend is Don't put that in the code file because when you package it when the system packages a tar ball Or a tar GZ file or a zip file it adds a license txt file That is a copy of the gpl version 2 and it says this applies to this module But the copyright statement I mean Drupal court itself has a separate file true saying all this code is copyright I think that you're asking about the license of the copyright Okay That's okay. The caveat is If you're getting lots of patches from different people then unless you're having them sign some kind of agreement There's lots of people who own copyright. There are probably around 2,000 people who hold copyright on various pieces of Drupal core And tracking that you know this function this line and so forth is copyright this person is very impractical In a project like Drupal. I'd recommend having a major contributors list That is these are people who have done large work on the system They may have been maintainers at some point But you don't say these are all the people who hold copyright. It's these are the major contributors All of whom are going to also hold copyright, but that's not you're saying it you're not saying it's an exclusive list Yeah, yeah, it might be easier just have that set one separate file So if you have 20 code files right if you get a new major contributor You don't necessarily want to have to remember to update every single code file one text file is probably sufficient I mean we really haven't had challenges But it's useful just at least note who the major contributors are now if if it's code that you're not putting on Drupal.org And you just you know custom module for your client you've given to your client I would put a dock block on there saying copyright my company license under the GPL There's a standard header that the GPL suggests you use so if you're not distributing it on Drupal.org I would recommend doing that other questions All the way in the back Not so the question is you know license compatibility. You know, what does that mean essentially? For example the Apache 2 license Says in essence here's the code do what you want to have fun but if you have any patents software patents that apply to this code and You sue someone Over those software patents you lose any license to use this code that other people own so like if you if I hold a software patents and I You know add some code to the Apache web server and that gets distributed and then I go and sue Sony who's using Apache over that software patent Then I lose the right to use Apache at all From the various other people who have written code for the Apache server That's kind of their mutual the mutual short destruction kind of approach to software patents So that that's incompatible with GPL version 2 Because that's an additional requirement and part of the GPL is you may not add additional requirements and restrictions To the code it's you know, you must share a like and you cannot add any new restrictions like you know You can't say you can't use this for government or you can't use this for some political party or whatever That's an extra restriction GPL version 3 has essentially the same patents defense clause in it So you're not adding a new restriction by mixing Apache 2 and GPL 3 code. So that's okay So that's what we mean by compatible It mostly applies to the GPL family of licenses because of the you cannot add any restrictions clause So that's that answer your question And yeah, if you go to the the GPL site, they actually have a long list I mean, there's many many licenses you can go to open source Dot org you can go to the the GPL site and they list, you know, there's 50 different licenses But you know, there's really, you know Don't pick a random license pick one of these like basically three licenses I picked up here because it really well understood how they work and how they interact with each other But if you if you find some project license under something you can go there, especially the GPL site And I'll tell you yes You can combine this with the GPL because it doesn't have any other restrictions or no it has some strange clause The important thing to note is that it's always okay for you to use both of those together The restriction on combining is basically distributing to other people a combined Software that uses both of that and giving the code to your client at the end of a project may or may not count as Distributing depending on your contract So it's generally best to only mix things that would be legal for you to distribute if you're going to Yeah Questions why is Drupal GPL 2 and not 3 when Drupal has started there was no GPL 3 and At the time most projects just said GPL and didn't really consider the version Since then we have clarified that Drupal is a GPL 2 and later. So we are GPL 3 compatible We really haven't had the discussion of whether or not Drupal should move to GPL 3 Personally, I would like to do so at some point not necessarily right now, but I would like to do so at some point but That you know there are people who would say the opposite because of things like the patent protection clause There are some companies that don't want to deal with GPL 3 at all that we may scare off and that that conversation just hasn't happened My own personal feeling is if they're going to get scared off by that then I don't want them But I freely understand that I'm not necessarily the only opinion there Is this Can you can release a Drupal module under GPL 3? But you cannot upload it to Drupal org unless it is GPL 2 and later Right now you cannot put anything on Drupal org software wise unless it is GPL 2 and later the same license as Drupal core Were we to switch to GPL 3 at some point? That would be a blanket statements across everything and so all can trip modules and core itself would all just as they come off Drupal.org would go up to GPL 3 at the same time, but again, there's no immediate plans to do so So the point is that the new project may actually have a working kernel now Yeah, I heard Debian was talking about doing a herd based version at some point I never actually saw it in the wild. They're saying end of 2012 now Okay, so we may or may not have a working new herd kernel at some points in the near future you heard of here first Other questions, I think we have time for one maybe two more. I guess not. Alright. Okay. Thank you all for coming and enjoy the rest of the conference