WEBVTT

00:00:00.000 --> 00:00:03.240
Welcome back to the deep dive So today we're

00:00:03.240 --> 00:00:05.900
focusing on a specific little rectangle on your

00:00:05.900 --> 00:00:09.800
screen a button. I think Pretty much every single

00:00:09.800 --> 00:00:12.759
person listening has clicked a thousand times

00:00:12.759 --> 00:00:15.359
Maybe more it is almost muscle memory at this

00:00:15.359 --> 00:00:17.199
point. Isn't it? It really is It's that button

00:00:17.199 --> 00:00:19.460
that says download and usually right next to

00:00:19.460 --> 00:00:23.260
it. There's that magic word Free we love that

00:00:23.260 --> 00:00:26.179
word. We do we see a tool we need maybe a text

00:00:26.179 --> 00:00:29.120
editor of a video player something we see free

00:00:29.359 --> 00:00:32.719
and we click, it feels like a victory. Like you

00:00:32.719 --> 00:00:34.420
beat the system, you got something for nothing.

00:00:34.579 --> 00:00:36.960
It is the ultimate consumer win, or at least

00:00:36.960 --> 00:00:38.679
that's how it feels in the moment, that little

00:00:38.679 --> 00:00:40.979
dopamine hit of getting a tool without opening

00:00:40.979 --> 00:00:43.119
your wallet. Right, but that is exactly what

00:00:43.119 --> 00:00:45.340
we need to pause today. Because I want to start

00:00:45.340 --> 00:00:48.200
with a question that might ruin that feeling

00:00:48.200 --> 00:00:49.979
of victory just a little bit. When we download

00:00:49.979 --> 00:00:52.100
that free software, are we actually just saving

00:00:52.100 --> 00:00:54.859
20 bucks? Or are we stepping into a much more

00:00:54.859 --> 00:00:58.740
complex web of philosophy, law, and digital ownership?

00:00:58.969 --> 00:01:02.030
It is definitely the latter. And I think most

00:01:02.030 --> 00:01:03.549
people don't realize that when they click that

00:01:03.549 --> 00:01:05.930
button, they aren't just receiving a product.

00:01:06.069 --> 00:01:08.109
They are, I mean, they're entering into a legal

00:01:08.109 --> 00:01:10.290
agreement. An agreement that, let's be honest,

00:01:10.430 --> 00:01:13.530
nobody reads. Do you read them? I do, but only

00:01:13.530 --> 00:01:16.829
because it's my job. I mean, normal, healthy

00:01:16.829 --> 00:01:19.329
people do not read the Terms of Service. They

00:01:19.329 --> 00:01:22.459
just scroll to the bottom and hit Accept. Well,

00:01:22.519 --> 00:01:24.159
today we are reading the fine print so you don't

00:01:24.159 --> 00:01:27.099
have to. We are diving into a breakdown of open

00:01:27.099 --> 00:01:30.200
source licenses from a brand new article by Gary

00:01:30.200 --> 00:01:32.719
Ackerman over at hackscience .education. And

00:01:32.719 --> 00:01:35.920
this just dropped yesterday, January 24, 2026.

00:01:36.019 --> 00:01:38.379
So it's super fresh. It is. And Ackerman does

00:01:38.379 --> 00:01:41.099
a fantastic job of taking what is usually incredibly

00:01:41.099 --> 00:01:44.879
dry, dense legal jargon and stripping it back

00:01:44.879 --> 00:01:47.340
to the actual human philosophy underneath. He

00:01:47.340 --> 00:01:49.659
really does. So here's our mission. We aren't

00:01:49.659 --> 00:01:51.819
just going to list acronyms. We want to understand

00:01:51.819 --> 00:01:54.739
the invisible rules that run our world. We want

00:01:54.739 --> 00:01:56.939
to figure out who actually owns the code on your

00:01:56.939 --> 00:01:59.620
computer, how it gets shared, and what freedom

00:01:59.620 --> 00:02:02.819
really means in a digital sense. Because, as

00:02:02.819 --> 00:02:05.560
the article points out, free is a remarkably

00:02:05.560 --> 00:02:08.479
complicated word. If you're listening and wondering

00:02:08.479 --> 00:02:10.580
why this matters if you aren't a programmer,

00:02:11.259 --> 00:02:14.849
here's the headline. There is a massive fundamental

00:02:14.849 --> 00:02:17.530
difference between software that is free to use

00:02:17.530 --> 00:02:20.750
and software that is free to change. And the

00:02:20.750 --> 00:02:23.129
specific license attached to that code determines

00:02:23.129 --> 00:02:25.430
the future of that software, whether it stays

00:02:25.430 --> 00:02:28.129
open for everyone or whether it gets locked up

00:02:28.129 --> 00:02:30.330
behind a paywall five years from now. That is

00:02:30.330 --> 00:02:31.930
a distinction I don't think I've ever really

00:02:31.930 --> 00:02:33.810
considered. I just look at the price tag. If

00:02:33.810 --> 00:02:37.300
it is zero, it is free. Right. But Ackerman argues

00:02:37.300 --> 00:02:39.520
there are actually two totally different types

00:02:39.520 --> 00:02:42.259
of free operating here. He breaks it down into

00:02:42.259 --> 00:02:46.500
cost versus code. Or freeze as in beer versus

00:02:46.500 --> 00:02:48.840
free as in speech. I've heard that one. That's

00:02:48.840 --> 00:02:50.879
the classic saying. So let's start with the beer.

00:02:51.319 --> 00:02:53.620
The cost. Because that is the one we all know.

00:02:53.800 --> 00:02:56.479
This is the surface level. Free as in zero dollars.

00:02:56.879 --> 00:02:59.199
You download the software, you don't pay a subscription

00:02:59.199 --> 00:03:02.030
fee. And Ackerman notes something interesting

00:03:02.030 --> 00:03:04.969
here. He points out that with true open source

00:03:04.969 --> 00:03:07.629
software, this transaction is often completely

00:03:07.629 --> 00:03:10.409
frictionless. Frictionless how? You often don't

00:03:10.409 --> 00:03:12.590
even have to enter your email or create an account.

00:03:13.030 --> 00:03:15.430
Which is actually rare these days. I feel like

00:03:15.430 --> 00:03:19.110
most free tools online are just traps to get

00:03:19.110 --> 00:03:21.650
my data. Yeah. I have to give them my email,

00:03:21.750 --> 00:03:25.370
my phone number. Exactly. That is free as a marketing

00:03:25.370 --> 00:03:27.389
tactic. You're paying with your data. But in

00:03:27.389 --> 00:03:29.969
the open source world, the free cost is often

00:03:29.969 --> 00:03:33.009
just a byproduct of the philosophy. It is free

00:03:33.009 --> 00:03:35.270
because there is no gatekeepers. OK. So that

00:03:35.270 --> 00:03:37.889
is the money side. But then we get to the second

00:03:37.889 --> 00:03:40.550
definition, which the source argues is the more

00:03:40.550 --> 00:03:44.060
important one. Free as in freedom. Yes. This

00:03:44.060 --> 00:03:46.259
is the core of the open source concept. It means

00:03:46.259 --> 00:03:48.219
the user is free to open up the hood and look

00:03:48.219 --> 00:03:50.719
at the engine. You have access to the source

00:03:50.719 --> 00:03:52.780
code. I want to make sure we nail this concept

00:03:52.780 --> 00:03:54.819
of source code for the non -coders listening.

00:03:55.400 --> 00:03:58.460
Ackerman calls it the DNA of the program. That

00:03:58.460 --> 00:04:01.620
is the perfect analogy. It's the set of raw instructions

00:04:01.620 --> 00:04:03.879
written by humans that tells the computer what

00:04:03.879 --> 00:04:06.240
to do. When you use a normal app, you aren't

00:04:06.240 --> 00:04:08.919
seeing the code. You are seeing the shiny exterior.

00:04:09.120 --> 00:04:11.629
The buttons, the interface. Right. The source

00:04:11.629 --> 00:04:14.150
code is compiled, hidden away. You can't see

00:04:14.150 --> 00:04:16.250
it, and you certainly can't touch it. So if I

00:04:16.250 --> 00:04:18.750
buy a standard piece of software, I'm basically

00:04:18.750 --> 00:04:21.550
buying a car with the hood welded shut. Precisely.

00:04:21.649 --> 00:04:23.930
You can drive it, but you can't fix it. You can't

00:04:23.930 --> 00:04:26.310
see how it works. With open source, they hand

00:04:26.310 --> 00:04:29.050
you the keys, the blueprints, the materials,

00:04:29.170 --> 00:04:30.990
and the right to change them. OK, here's where

00:04:30.990 --> 00:04:33.930
I get a little stuck, though. I can download

00:04:33.930 --> 00:04:37.110
a piece of proprietary software, let's say a

00:04:37.110 --> 00:04:40.240
fancy photo editor, and I can customize it. I

00:04:40.240 --> 00:04:43.300
can change the interface, set up hotkeys. Isn't

00:04:43.300 --> 00:04:45.939
that freedom? How is that different? That is

00:04:45.939 --> 00:04:48.180
a really crucial distinction, and Ackerman spends

00:04:48.180 --> 00:04:51.139
some time on this. When you customize that photo

00:04:51.139 --> 00:04:53.259
editor, you are effectively just rearranging

00:04:53.259 --> 00:04:55.019
the furniture in a house someone else built.

00:04:55.100 --> 00:04:57.279
Okay. You can paint the walls, you can move the

00:04:57.279 --> 00:05:00.420
sofa, but you cannot move the doors, you cannot

00:05:00.420 --> 00:05:02.620
take down a wall, you certainly can't check the

00:05:02.620 --> 00:05:05.220
foundation to see if it is cracked. Because I

00:05:05.220 --> 00:05:07.790
am just the tenant. You are the tenant. You are

00:05:07.790 --> 00:05:09.829
living there subject to the landlord's rules.

00:05:10.610 --> 00:05:13.290
With open source, because you have the DNA, you're

00:05:13.290 --> 00:05:15.290
the architect. If you don't like the way the

00:05:15.290 --> 00:05:17.189
house is built, you can knock it down and rebuild

00:05:17.189 --> 00:05:20.089
it. But play devil's advocate with me here. I

00:05:20.089 --> 00:05:22.750
am not an architect. I don't know how to code.

00:05:23.170 --> 00:05:25.569
So why does that freedom matter to me? Because

00:05:25.569 --> 00:05:28.149
even if you aren't the architect, someone else

00:05:28.149 --> 00:05:31.500
is. If that proprietary software has a bug that

00:05:31.500 --> 00:05:33.519
deletes your files, you have to wait for the

00:05:33.519 --> 00:05:36.399
company to fix it. And hope they do. Right. In

00:05:36.399 --> 00:05:38.600
an open source world, anyone in the community

00:05:38.600 --> 00:05:41.040
can find that bug, fix it, and share the fix

00:05:41.040 --> 00:05:43.740
with everyone, including you. You benefit from

00:05:43.740 --> 00:05:45.779
the freedom of others. That makes sense. It's

00:05:45.779 --> 00:05:48.420
a community safety net. But this brings up a

00:05:48.420 --> 00:05:51.120
massive question about ownership. If I can take

00:05:51.120 --> 00:05:53.930
this code and rewrite it, Does that mean nobody

00:05:53.930 --> 00:05:58.009
owns it? Is open source just code that was abandoned

00:05:58.009 --> 00:06:00.250
in the woods? That is probably the number one

00:06:00.250 --> 00:06:02.430
misconception about this whole topic. This idea

00:06:02.430 --> 00:06:06.189
that open source means public domain or no rules.

00:06:06.730 --> 00:06:09.610
Ackerman is very clear. Open source titles do

00:06:09.610 --> 00:06:12.389
have copyrights. So someone still owns it? Absolutely.

00:06:12.889 --> 00:06:15.350
The creators, whether that's an individual or

00:06:15.350 --> 00:06:17.689
a huge foundation, still hold the copyright.

00:06:18.310 --> 00:06:21.009
But here's the twist. In the traditional world,

00:06:21.509 --> 00:06:24.129
Copyright is used to say, stop, you cannot touch

00:06:24.129 --> 00:06:26.529
this. Right. In the open source world, they use

00:06:26.529 --> 00:06:29.170
the copyright license to say, please come in,

00:06:29.610 --> 00:06:32.209
but here are the rules for how you behave while

00:06:32.209 --> 00:06:34.610
you are here. So they aren't waiving ownership.

00:06:34.930 --> 00:06:36.949
They're using their ownership to grant permission.

00:06:37.250 --> 00:06:39.939
Precisely. It is not a free for all. It is a

00:06:39.939 --> 00:06:42.160
free for some things, provided you follow the

00:06:42.160 --> 00:06:44.379
rules. And I guess that leads us to the meat

00:06:44.379 --> 00:06:47.199
of this deep dive. Because if there are rules,

00:06:47.300 --> 00:06:50.000
we need to know what they are. And it turns out,

00:06:50.199 --> 00:06:52.519
not all rules are created equal. No, they're

00:06:52.519 --> 00:06:55.620
not. Ackerman categorizes the licenses into two

00:06:55.620 --> 00:06:57.939
main families, and these families have very different

00:06:57.939 --> 00:07:00.459
philosophies. It is almost like a political divide

00:07:00.459 --> 00:07:03.040
in the coding world. The Hatfields and the McCoys

00:07:03.040 --> 00:07:07.000
of software? In a way, yes. Or maybe the idealists

00:07:07.000 --> 00:07:09.699
versus the pragmatists. On one side, you have

00:07:09.699 --> 00:07:11.680
the copy left licenses. Yeah, on the other. You

00:07:11.680 --> 00:07:14.699
have the permissive licenses. Copy left. I assume

00:07:14.699 --> 00:07:17.759
that is a pun. It is a play on copyright, yes,

00:07:17.759 --> 00:07:21.379
but it's a pun with a very serious legal weight

00:07:21.379 --> 00:07:24.709
behind it. Think about it this way. Copyright

00:07:24.709 --> 00:07:28.470
restricts the right to copy. CopyLeft uses the

00:07:28.470 --> 00:07:31.870
law to guarantee the right to copy. That is clever.

00:07:32.230 --> 00:07:35.170
So what is the catch? The catch is that it is

00:07:35.170 --> 00:07:37.550
viral. That word usually isn't good when we're

00:07:37.550 --> 00:07:40.189
talking about computers. Right, but in this context

00:07:40.189 --> 00:07:43.149
it just means infectious freedom. The core rule

00:07:43.149 --> 00:07:45.370
of CopyLeft is that the software must remain

00:07:45.370 --> 00:07:48.769
free. If you take a piece of copyleft code and

00:07:48.769 --> 00:07:50.930
you modify it to build something new, what the

00:07:50.930 --> 00:07:54.230
lawyers call a derived work, that new thing must

00:07:54.230 --> 00:07:56.310
also be open source. So I can't take your free

00:07:56.310 --> 00:07:58.790
code, improve it, polish it up, and then sell

00:07:58.790 --> 00:08:00.850
the improved version as my own secret product?

00:08:01.149 --> 00:08:03.649
No. You cannot close the door behind you. If

00:08:03.649 --> 00:08:05.949
you build on a copy left foundation, your house

00:08:05.949 --> 00:08:07.970
must also have its doors open to the public.

00:08:08.310 --> 00:08:10.410
You are forced to share your improvements back

00:08:10.410 --> 00:08:12.689
to the community under the same terms. It forces

00:08:12.689 --> 00:08:15.269
generosity. It says, I gave this to you for free,

00:08:15.329 --> 00:08:17.250
so you have to give your version to the next

00:08:17.250 --> 00:08:20.649
person for free. Exactly. It ensures the ecosystem

00:08:20.649 --> 00:08:24.290
stays open forever. It creates a protected commons.

00:08:24.569 --> 00:08:27.389
Now, contrast that with the second family, the

00:08:27.389 --> 00:08:29.730
permissive licenses. I'm guessing these are the

00:08:29.730 --> 00:08:32.519
cool parents of the software world. Very chill.

00:08:33.059 --> 00:08:35.360
Permissive licenses allow the original software

00:08:35.360 --> 00:08:37.679
to be included in works that eventually become

00:08:37.679 --> 00:08:40.460
proprietary. Wait, so I can take that code and

00:08:40.460 --> 00:08:42.279
close the door? With the permissive license,

00:08:42.399 --> 00:08:45.759
yes. You can take open code, modify it, wrap

00:08:45.759 --> 00:08:48.100
it up in a new package, and sell it as a closed

00:08:48.100 --> 00:08:50.779
source product. The original code stays free,

00:08:50.779 --> 00:08:53.379
but your new version doesn't have to be. That

00:08:53.379 --> 00:08:55.440
feels like a massive philosophical difference.

00:08:55.600 --> 00:08:57.539
One forces you to share. And the other gives

00:08:57.539 --> 00:09:00.440
you the choice to be selfish. Or, to look at

00:09:00.440 --> 00:09:03.019
it more charitably, one protects the community

00:09:03.019 --> 00:09:05.919
and the other enables business. It reduces friction

00:09:05.919 --> 00:09:08.559
for companies who want to use the code without

00:09:08.559 --> 00:09:11.179
revealing their trade secrets. That is a good

00:09:11.179 --> 00:09:14.080
way to put it. Let's dig into the specific examples

00:09:14.080 --> 00:09:16.580
Ackerman gives. Let's start with the strict ones,

00:09:16.740 --> 00:09:19.440
the copy left crew. First on the list is the

00:09:19.440 --> 00:09:22.879
GPL. The GNU general public license. This is

00:09:22.879 --> 00:09:25.399
the heavyweight champion of copyleft. If you

00:09:25.399 --> 00:09:27.820
know one license, it's probably this one. And

00:09:27.820 --> 00:09:30.840
this is the one that is strictly viral. Strict.

00:09:31.080 --> 00:09:33.580
The rule here is absolute. Any modified version

00:09:33.580 --> 00:09:35.799
of the software must be open source and distributed

00:09:35.799 --> 00:09:38.460
under the same license. It ensures the lineage

00:09:38.460 --> 00:09:41.399
of the software stays free forever. You cannot

00:09:41.399 --> 00:09:44.019
break the chain. Ackerman mentions a fun fact

00:09:44.019 --> 00:09:48.200
about the acronym GNU itself. Stands for GNU

00:09:48.200 --> 00:09:51.200
is not Unix. Yes, a classic recursive acronym

00:09:51.200 --> 00:09:54.879
from 1983. Computer scientists love their inside

00:09:54.879 --> 00:09:56.820
jokes. It is a bit of a tongue twister. It is,

00:09:56.820 --> 00:09:59.240
but it was actually a protest statement. In the

00:09:59.240 --> 00:10:02.539
80s, Unix was the big, expensive proprietary

00:10:02.539 --> 00:10:06.039
operating system. This project was created specifically

00:10:06.039 --> 00:10:09.059
to be the open alternative. So the name literally

00:10:09.059 --> 00:10:11.440
defines itself by what it is not. We are not

00:10:11.440 --> 00:10:14.440
the closed system. Exactly. And the GPL license

00:10:14.440 --> 00:10:16.679
is the shield that guarantees they never become.

00:10:16.649 --> 00:10:19.090
So the GPL is the strict parent. If you live

00:10:19.090 --> 00:10:21.190
under this roof, you follow these rules. Yay!

00:10:21.330 --> 00:10:23.409
But Ackerman lists another one in the copyleft

00:10:23.409 --> 00:10:25.950
category that seems a little softer. The MPL.

00:10:26.110 --> 00:10:28.889
The Mozilla Public License. Yeah, this one's

00:10:28.889 --> 00:10:31.870
interesting. Ackerman still categorizes it as

00:10:31.870 --> 00:10:34.889
copyleft, but it is often described as a middle

00:10:34.889 --> 00:10:37.570
ground. How does that work? Is it semi -viral?

00:10:38.199 --> 00:10:40.960
Sort of. The GPL is very infectious. If you touch

00:10:40.960 --> 00:10:43.919
it, the whole program becomes open. The MPL,

00:10:43.919 --> 00:10:45.820
on the other hand, allows for what they call

00:10:45.820 --> 00:10:48.899
combined works. What does that mean in practice?

00:10:49.120 --> 00:10:51.820
Give me an analogy. OK. Imagine you are building

00:10:51.820 --> 00:10:55.200
a car. If you use a GPL engine, the whole car

00:10:55.200 --> 00:10:57.860
has to be open source. the design of the seats,

00:10:58.100 --> 00:11:00.500
the dashboard, the GPS system, you have to share

00:11:00.500 --> 00:11:02.820
the blueprints for all of it. That sounds terrifying

00:11:02.820 --> 00:11:04.779
if I'm a car manufacturer who wants to sell unique

00:11:04.779 --> 00:11:07.600
seats. Exactly. That is why companies are often

00:11:07.600 --> 00:11:10.519
scared of the GPL. But with the MPL, it works

00:11:10.519 --> 00:11:12.940
more at the component level. If you take the

00:11:12.940 --> 00:11:15.059
MPL engine and modify the engine itself, you

00:11:15.059 --> 00:11:17.759
have to share those engine changes. OK. But you

00:11:17.759 --> 00:11:19.919
can bolt that engine into a proprietary car.

00:11:20.259 --> 00:11:22.259
You can keep your design for the seats and the

00:11:22.259 --> 00:11:24.720
dashboard secret as long as the engine code stays

00:11:24.720 --> 00:11:27.399
open. I see. So it separates the open ingredients

00:11:27.399 --> 00:11:30.419
from the secret sauce you might add on top. Exactly.

00:11:30.639 --> 00:11:33.779
It is a pragmatic compromise. It keeps the core

00:11:33.779 --> 00:11:36.620
tool free, but lets companies build business

00:11:36.620 --> 00:11:38.970
models around it. So those are the guardians.

00:11:39.409 --> 00:11:40.750
Now let's look at the other side. The do -what

00:11:40.750 --> 00:11:43.830
-you -want licenses. The permissive ones. The

00:11:43.830 --> 00:11:46.690
source starts with the MIT license. The MIT license

00:11:46.690 --> 00:11:50.070
is incredibly popular right now. It is the ultimate

00:11:50.070 --> 00:11:53.450
no -worrys option. It seems almost too simple

00:11:53.450 --> 00:11:55.389
when I read the summary. What's the rule? The

00:11:55.389 --> 00:11:58.909
rule is basically... You can do almost anything

00:11:58.909 --> 00:12:01.669
with this software. Use it, change it, sell it,

00:12:01.850 --> 00:12:04.049
merge it with your own code. The only catch.

00:12:04.110 --> 00:12:06.389
There's always a catch. A very small one. You

00:12:06.389 --> 00:12:08.950
just have to include the original copyright and

00:12:08.950 --> 00:12:11.450
license notice in your copy. That is it. Just

00:12:11.450 --> 00:12:13.210
keep the name on the label. That's it. It's credit

00:12:13.210 --> 00:12:15.669
where credit is due. But otherwise, have at it.

00:12:15.889 --> 00:12:18.360
I can see why developers love that. It is low

00:12:18.360 --> 00:12:19.960
friction. You don't have to hire a lawyer to

00:12:19.960 --> 00:12:21.899
figure it out. It is extremely low friction.

00:12:22.139 --> 00:12:24.500
It encourages widespread adoption because no

00:12:24.500 --> 00:12:27.200
one is afraid of accidental legal entanglements.

00:12:27.419 --> 00:12:30.039
Now, next on the permissive list is the Apache

00:12:30.039 --> 00:12:32.840
License 2 .0. This one sounds a bit more formal.

00:12:33.049 --> 00:12:37.289
It is similar to MIT in spirit use, modify, distribute

00:12:37.289 --> 00:12:41.070
freely, but Ackerman highlights a specific unique

00:12:41.070 --> 00:12:43.570
feature of the Apache license that is really

00:12:43.570 --> 00:12:46.289
important for businesses. What is that? It provides

00:12:46.289 --> 00:12:49.350
an express grant of patent rights from the contributors

00:12:49.350 --> 00:12:51.750
to the users. OK, we need to break that down.

00:12:52.129 --> 00:12:53.809
Why do I care about patent rights? I thought

00:12:53.809 --> 00:12:55.370
we were talking about copyright this whole time.

00:12:55.519 --> 00:12:58.840
We are, but software is messy. Copyright covers

00:12:58.840 --> 00:13:01.500
the written code, the text itself, but patents

00:13:01.500 --> 00:13:04.419
can cover the idea or the mechanism. So what's

00:13:04.419 --> 00:13:06.820
the danger? Imagine you build a product using

00:13:06.820 --> 00:13:09.120
open source code. You're happy, your customers

00:13:09.120 --> 00:13:12.179
are happy. Then, a year later, one of the original

00:13:12.179 --> 00:13:14.860
contributors to that code sues you. Sues me for

00:13:14.860 --> 00:13:18.149
what? They gave me the code. They claim the software

00:13:18.149 --> 00:13:20.990
infringes on a patent they hold. They say, sure,

00:13:21.070 --> 00:13:22.990
I gave you copyright permission to copy the text

00:13:22.990 --> 00:13:25.149
of the code, but I didn't give you patent permission

00:13:25.149 --> 00:13:28.029
to use the invention inside the code. That sounds

00:13:28.029 --> 00:13:31.049
like a trap. It is a nightmare scenario. A legal

00:13:31.049 --> 00:13:35.000
ambush. The Apache license 2 .0 closes that loophole.

00:13:35.240 --> 00:13:37.779
It explicitly says, if I contribute this code,

00:13:38.059 --> 00:13:40.480
I am also giving you a license to use any patents

00:13:40.480 --> 00:13:43.299
of mine that this code touches. It is like an

00:13:43.299 --> 00:13:45.759
insurance policy built into the license. Exactly.

00:13:46.179 --> 00:13:48.919
If you are a big corporation like Google or Facebook,

00:13:49.139 --> 00:13:51.620
you love the Apache license because it protects

00:13:51.620 --> 00:13:53.879
you from those surprise lawsuits. It makes the

00:13:53.879 --> 00:13:55.960
code safe for business. That makes a lot of sense.

00:13:56.340 --> 00:13:58.960
OK, the last one on our list is the BSD license.

00:13:59.259 --> 00:14:01.759
And the source gives us the origin. Berkeley

00:14:01.759 --> 00:14:04.500
software distribution from UC Berkeley. A very

00:14:04.500 --> 00:14:07.759
historic origin. The BSD licenses, and there

00:14:07.759 --> 00:14:09.860
are a few variants, are generally permissive.

00:14:10.019 --> 00:14:11.740
They come from the academic world, where the

00:14:11.740 --> 00:14:13.919
goal was just to share knowledge. The source

00:14:13.919 --> 00:14:16.419
mentions the three -clause BSD. Right. The three

00:14:16.419 --> 00:14:18.299
-clause is the most common one. And to be honest,

00:14:18.379 --> 00:14:21.259
for the average listener, it is very, very similar

00:14:21.259 --> 00:14:24.700
to the MIT license. You can use, modify, and

00:14:24.700 --> 00:14:27.779
distribute. So if it is so similar to MIT, why

00:14:27.779 --> 00:14:30.340
do we need both? There's a historical difference.

00:14:30.559 --> 00:14:33.480
and slight legal wording differences, but functionally.

00:14:33.980 --> 00:14:36.620
They both fall into that bucket of, take this

00:14:36.620 --> 00:14:38.779
code and build something cool. We don't mind

00:14:38.779 --> 00:14:40.779
what you do with it. So we've painted this picture

00:14:40.779 --> 00:14:43.379
of the landscape. We've gone from the strict,

00:14:43.740 --> 00:14:46.659
you must share everything of the GPL, to the

00:14:46.659 --> 00:14:50.159
just don't sue us of MIT and BSD. That is the

00:14:50.159 --> 00:14:52.399
spectrum. But here's what I'm wondering. We have

00:14:52.399 --> 00:14:55.220
talked about what these licenses say. Why should

00:14:55.220 --> 00:14:57.740
the listener, who might just be downloading a

00:14:57.740 --> 00:15:00.840
video player, care which one it is? Does it really

00:15:00.840 --> 00:15:03.059
change their experience? It might not change

00:15:03.059 --> 00:15:05.440
your experience today. I mean, the software works

00:15:05.440 --> 00:15:08.460
the same regardless of the license, but it absolutely

00:15:08.460 --> 00:15:10.879
determines the future of that technology. How

00:15:10.879 --> 00:15:13.820
so? Think about it. If you are a developer, choosing

00:15:13.820 --> 00:15:16.379
a license is choosing a philosophy, where you're

00:15:16.379 --> 00:15:18.220
trying to build a protected commons where everyone

00:15:18.220 --> 00:15:21.500
shares. That is the GPL. You are building a public

00:15:21.500 --> 00:15:24.019
park. No one can come in and build a condo on

00:15:24.019 --> 00:15:26.480
it. It belongs to the people forever. Right.

00:15:26.779 --> 00:15:28.860
And the permissive ones. What are they? That

00:15:28.860 --> 00:15:31.580
is providing free lumber. You are saying, here

00:15:31.580 --> 00:15:34.120
is some wood. If you want to build a park bench,

00:15:34.299 --> 00:15:35.820
great. If you want to build a private mansion

00:15:35.820 --> 00:15:37.860
that no one else can enter, that is also fine.

00:15:37.919 --> 00:15:40.019
And if you're just a user relying on that software?

00:15:40.360 --> 00:15:42.700
It affects the longevity of the tools you rely

00:15:42.700 --> 00:15:45.879
on. Is this tool guaranteed to stay free forever

00:15:45.879 --> 00:15:49.779
because it is GPL? Or... Could the next version

00:15:49.779 --> 00:15:52.440
be locked behind a paywall because it was permissive

00:15:52.440 --> 00:15:54.500
and a company decided to take it private? That

00:15:54.500 --> 00:15:57.240
is a really sobering thought. The software we

00:15:57.240 --> 00:16:00.399
rely on today might not be ours in the way we

00:16:00.399 --> 00:16:02.799
think it is. And that leads to a bigger question

00:16:02.799 --> 00:16:05.519
about where the industry is heading. Because

00:16:05.519 --> 00:16:07.620
Ackerman hints at a trend here. Well, lay it

00:16:07.620 --> 00:16:10.389
on us. What is the trend? If we look at the data,

00:16:10.690 --> 00:16:13.350
permissive licenses like MIT and Apache are becoming

00:16:13.350 --> 00:16:16.309
incredibly popular. They are dominating the new

00:16:16.309 --> 00:16:19.210
projects. And remember, the source explicitly

00:16:19.210 --> 00:16:22.070
says these licenses allow open code to become

00:16:22.070 --> 00:16:25.190
proprietary later. Right. So we're seeing a shift

00:16:25.190 --> 00:16:29.129
away from the strict guardians. We are. So here's

00:16:29.129 --> 00:16:31.379
the provocative thought to leave you with. If

00:16:31.379 --> 00:16:33.860
more and more developers choose permissive licenses,

00:16:34.720 --> 00:16:37.419
are we moving toward a future where open source

00:16:37.419 --> 00:16:40.799
is just a free R &D lab for corporations? Wow.

00:16:41.299 --> 00:16:44.580
Explain that. Well, if the code is MIT licensed,

00:16:45.139 --> 00:16:48.039
a giant tech company can take it, improve it,

00:16:48.100 --> 00:16:50.519
lock it down, and sell it. They get the benefit

00:16:50.519 --> 00:16:52.480
of the community's work, but they don't have

00:16:52.480 --> 00:16:54.500
to give anything back. So we're just creating

00:16:54.500 --> 00:16:56.779
free building blocks for commercial products.

00:16:56.980 --> 00:16:59.659
Are we transitioning away from a standalone ecosystem

00:16:59.659 --> 00:17:02.419
of shared freedom, which was the original dream

00:17:02.419 --> 00:17:06.779
of the GPL? The GNU is not Unix Dream, and instead

00:17:06.779 --> 00:17:09.299
just building those blocks. That is the question,

00:17:09.420 --> 00:17:11.819
isn't it? Are we building a library for the world,

00:17:11.960 --> 00:17:14.279
or are we just doing unpaid internships for big

00:17:14.279 --> 00:17:16.359
tech? That is exactly the tension at the heart

00:17:16.359 --> 00:17:18.640
of open source right now. It is a battle between

00:17:18.640 --> 00:17:21.640
the idealism of the early days and the pragmatism

00:17:21.640 --> 00:17:23.599
of the modern tech industry. That is something

00:17:23.599 --> 00:17:24.960
I am definitely going to be thinking about the

00:17:24.960 --> 00:17:27.160
next time I hit download. It turns out free is

00:17:27.160 --> 00:17:29.559
a lot more complex than I thought. Always a pleasure

00:17:29.559 --> 00:17:32.200
to explore the code behind the code. And thank

00:17:32.200 --> 00:17:34.539
you to you, our listener, for diving deep with

00:17:34.539 --> 00:17:36.640
us today. Check the show notes for the link to

00:17:36.640 --> 00:17:38.539
Gary Ackerman's article if you want to read the

00:17:38.539 --> 00:17:41.700
full source yourself. Until next time, keep asking

00:17:41.700 --> 00:17:42.180
questions.
