WEBVTT - TechStuff Tidbits: The One About APIs

0:00:04.440 --> 0:00:12.239
<v Speaker 1>Welcome to tech Stuff, a production from iHeartRadio. Hey there,

0:00:12.280 --> 0:00:16.239
<v Speaker 1>and welcome to tech Stuff. I'm your host, Jonathan Strickland.

0:00:16.239 --> 0:00:19.800
<v Speaker 1>I'm an executive producer with iHeartRadio. And how the tech

0:00:19.840 --> 0:00:23.800
<v Speaker 1>are you? You know, when I was a kid, we

0:00:23.960 --> 0:00:28.960
<v Speaker 1>called applications programs, or sometimes we called them software, but

0:00:29.040 --> 0:00:32.640
<v Speaker 1>mainly we called them programs. Heck, it's what the digital

0:00:32.720 --> 0:00:35.800
<v Speaker 1>characters in the film Tron referred to one another, as

0:00:35.840 --> 0:00:39.800
<v Speaker 1>they would say, greetings, program. But then again, when I

0:00:39.880 --> 0:00:42.800
<v Speaker 1>was a kid, hardly anyone even had a computer. If

0:00:42.840 --> 0:00:45.720
<v Speaker 1>you did have a computer, you know, it was its

0:00:46.120 --> 0:00:49.519
<v Speaker 1>own device. It was air gapped because there was no

0:00:49.600 --> 0:00:52.200
<v Speaker 1>such thing as a public internet yet. I mean maybe

0:00:52.240 --> 0:00:55.240
<v Speaker 1>if you were working with you know, arpinnet or something,

0:00:55.480 --> 0:00:57.200
<v Speaker 1>you had a system that was connected, but most of

0:00:57.240 --> 0:01:00.440
<v Speaker 1>us didn't. Also, when I was a kid, the movie

0:01:00.440 --> 0:01:03.040
<v Speaker 1>ticket was four bucks and Disney World was just the

0:01:03.040 --> 0:01:05.600
<v Speaker 1>Magic Kingdom. Also had to walk to school and it

0:01:05.640 --> 0:01:08.280
<v Speaker 1>was uphill both ways, and you know, you get the drift.

0:01:08.800 --> 0:01:12.479
<v Speaker 1>But then things change, right, For instance, Disney went ahead

0:01:12.520 --> 0:01:15.200
<v Speaker 1>and built three other theme parks at Disney World, and

0:01:15.400 --> 0:01:18.560
<v Speaker 1>movie tickets got way more expensive, and we also started

0:01:18.560 --> 0:01:23.760
<v Speaker 1>calling programs applications and something else would emerge that would

0:01:24.000 --> 0:01:30.080
<v Speaker 1>change programming, the rise of the Application programming interface or API.

0:01:30.480 --> 0:01:34.280
<v Speaker 1>So we're doing a tech stuff tidbits about what APIs

0:01:34.319 --> 0:01:36.320
<v Speaker 1>are and where they come from. Now. To be clear,

0:01:36.920 --> 0:01:42.520
<v Speaker 1>the actual concept of the API is quite old. It

0:01:42.560 --> 0:01:45.920
<v Speaker 1>comes from way before my time. So arguably you could

0:01:45.959 --> 0:01:48.200
<v Speaker 1>say the earliest work that would evolve into what we

0:01:48.200 --> 0:01:52.000
<v Speaker 1>would later be called an API actually started back in

0:01:52.040 --> 0:01:56.320
<v Speaker 1>the nineteen forties. But the reason is because you had

0:01:56.320 --> 0:02:00.000
<v Speaker 1>all these different teams around the world making computer systems.

0:02:00.600 --> 0:02:03.960
<v Speaker 1>These systems were kind of you know, they were independent,

0:02:04.200 --> 0:02:09.120
<v Speaker 1>they weren't interoperable, they weren't compatible. So there were people

0:02:09.120 --> 0:02:12.520
<v Speaker 1>who saw the need to create tools that would allow

0:02:12.560 --> 0:02:17.639
<v Speaker 1>for at least some interoperability. Otherwise you're really limiting innovation,

0:02:18.000 --> 0:02:21.160
<v Speaker 1>right If you've got a brilliant programmer, a brilliant developer

0:02:21.520 --> 0:02:23.640
<v Speaker 1>who has come up with this great idea for a

0:02:23.639 --> 0:02:28.240
<v Speaker 1>computer program, but they're only familiar with one computer system,

0:02:28.880 --> 0:02:31.960
<v Speaker 1>you've really limited the utility of that program, at least

0:02:32.040 --> 0:02:34.760
<v Speaker 1>until someone who is familiar with a different computer system

0:02:34.760 --> 0:02:38.920
<v Speaker 1>can come along and then perhaps port that program to

0:02:39.000 --> 0:02:42.960
<v Speaker 1>other systems. So there was the recognition of a need

0:02:43.280 --> 0:02:46.520
<v Speaker 1>to create sort of a common ground that could work

0:02:46.560 --> 0:02:53.160
<v Speaker 1>across different computer systems. The actual term for API, at

0:02:53.240 --> 0:02:55.640
<v Speaker 1>least a version of this term, because back then it

0:02:55.680 --> 0:03:00.960
<v Speaker 1>was called application program interface rather than programming, shows up

0:03:01.000 --> 0:03:04.400
<v Speaker 1>in a paper that was titled Data Structures and Techniques

0:03:04.520 --> 0:03:08.520
<v Speaker 1>for Remote Computer Graphics. It was written by Ira W.

0:03:08.639 --> 0:03:13.639
<v Speaker 1>Cotton and Frank S. Great Rex, which might be the

0:03:13.639 --> 0:03:18.760
<v Speaker 1>best surname I've ever seen great Res Anyway, the paper

0:03:19.080 --> 0:03:23.520
<v Speaker 1>describes the technology needed to allow for a quote, providing

0:03:23.600 --> 0:03:29.640
<v Speaker 1>a remotely accessed interactive computer graphics system end quote. So

0:03:31.040 --> 0:03:33.360
<v Speaker 1>not an API as we would understand it today, at

0:03:33.440 --> 0:03:35.560
<v Speaker 1>least not the kind of API we typically talk about

0:03:35.640 --> 0:03:39.280
<v Speaker 1>when you see something about APIs in the tech news

0:03:39.320 --> 0:03:42.640
<v Speaker 1>these days. The authors were seeking to create a sort

0:03:42.680 --> 0:03:45.200
<v Speaker 1>of common ground that programmers could depend upon so they

0:03:45.240 --> 0:03:49.840
<v Speaker 1>wouldn't have to worry about the underlying hardware, because, like

0:03:49.880 --> 0:03:53.200
<v Speaker 1>I said, the underlying hardware was often unique to a

0:03:53.200 --> 0:03:57.800
<v Speaker 1>specific system. Sometimes even the same computer company might make

0:03:57.840 --> 0:04:01.680
<v Speaker 1>different models that are in aherently incompatible with one another,

0:04:02.120 --> 0:04:04.760
<v Speaker 1>which means you would have to relearn everything in order

0:04:04.760 --> 0:04:08.120
<v Speaker 1>to develop for the new platform. So yeah, an application

0:04:08.240 --> 0:04:10.720
<v Speaker 1>programming interface was kind of an approach to sort of

0:04:11.440 --> 0:04:15.080
<v Speaker 1>create almost like a universal translator just for computer systems,

0:04:15.280 --> 0:04:17.919
<v Speaker 1>not for people, but for computer systems, so that programmers

0:04:18.600 --> 0:04:22.480
<v Speaker 1>wouldn't have to specialize in something and potentially end up

0:04:22.960 --> 0:04:26.160
<v Speaker 1>becoming obsolete themselves. Right if you were a programmer and

0:04:26.200 --> 0:04:30.200
<v Speaker 1>you tied yourself down to a specific type of computer,

0:04:30.520 --> 0:04:33.640
<v Speaker 1>and let's say that that computer company goes out of business,

0:04:34.400 --> 0:04:37.200
<v Speaker 1>you would have all this knowledge and expertise that was

0:04:37.279 --> 0:04:40.839
<v Speaker 1>sunk into something that no longer was relevant. That would

0:04:40.880 --> 0:04:43.640
<v Speaker 1>be disastrous on your part. You would have to start

0:04:43.680 --> 0:04:48.040
<v Speaker 1>all over again. So APIs could help create a method

0:04:48.400 --> 0:04:53.680
<v Speaker 1>for creating bridging material between computer systems. In nineteen seventy four,

0:04:53.720 --> 0:04:58.039
<v Speaker 1>which is still technically before my time, only by a

0:04:58.040 --> 0:05:02.719
<v Speaker 1>little bit, a paper by CJ. Date titled the Relational

0:05:02.839 --> 0:05:07.960
<v Speaker 1>and Network Approaches Comparison of the Application Programming Interface would

0:05:08.000 --> 0:05:11.160
<v Speaker 1>not only add ing to programs, and now we got

0:05:11.200 --> 0:05:16.240
<v Speaker 1>application program Ming interface. This paper also expanded the concept

0:05:16.520 --> 0:05:21.320
<v Speaker 1>of an API, in this case involving databases. So not

0:05:21.400 --> 0:05:24.760
<v Speaker 1>just computer systems. Now now we're talking about databases and

0:05:24.839 --> 0:05:28.640
<v Speaker 1>ways to be able to create a bridging material so

0:05:28.680 --> 0:05:32.400
<v Speaker 1>that you could access different databases through the same application.

0:05:33.120 --> 0:05:36.920
<v Speaker 1>This led to the American National Standards Institute as well

0:05:36.960 --> 0:05:40.640
<v Speaker 1>as the Standards Planning and Requirements Committee to define and

0:05:40.720 --> 0:05:46.000
<v Speaker 1>adopt API for database management systems. What happened next was

0:05:46.080 --> 0:05:49.719
<v Speaker 1>that programmers and computer scientists began to develop APIs for

0:05:49.800 --> 0:05:53.760
<v Speaker 1>all sorts of computational tasks. We had seen it for

0:05:53.839 --> 0:05:56.440
<v Speaker 1>database management, and we would see it for other stuff too.

0:05:57.120 --> 0:06:00.839
<v Speaker 1>These APIs would support different programming languages, so that programmers

0:06:00.839 --> 0:06:03.600
<v Speaker 1>could make use of the API without worrying about which

0:06:03.640 --> 0:06:05.960
<v Speaker 1>programming language they needed to use when they were creating

0:06:05.960 --> 0:06:10.159
<v Speaker 1>the program because not all programmers are fluent in every

0:06:10.240 --> 0:06:14.599
<v Speaker 1>programming language, they typically specialize in a couple. In turn,

0:06:15.279 --> 0:06:19.120
<v Speaker 1>the API would become, as Carl Malamud put it, a

0:06:19.120 --> 0:06:22.800
<v Speaker 1>way to make quote a set of services available to

0:06:22.880 --> 0:06:27.559
<v Speaker 1>a programmer for performing certain tasks end quote. Which seems

0:06:27.640 --> 0:06:30.640
<v Speaker 1>vague in general, but that was on purpose, right. It

0:06:30.880 --> 0:06:35.880
<v Speaker 1>wasn't meant to pigeonhole API for specific uses, but rather

0:06:36.680 --> 0:06:41.080
<v Speaker 1>making it an umbrella term for a way of allowing

0:06:41.120 --> 0:06:45.919
<v Speaker 1>developers to access a set of services that were well

0:06:45.960 --> 0:06:49.200
<v Speaker 1>suited for performing certain tasks. It was all about kind

0:06:49.200 --> 0:06:51.680
<v Speaker 1>of removing some of the challenges to programming right That

0:06:51.800 --> 0:06:55.240
<v Speaker 1>whole thing about let's not reinvent the wheel. That's kind

0:06:55.279 --> 0:06:59.839
<v Speaker 1>of what API was all about, was creating these sort

0:06:59.880 --> 0:07:04.800
<v Speaker 1>of standardized approaches so that programmers could really focus on

0:07:04.960 --> 0:07:09.840
<v Speaker 1>making better programs with a shorter development process that and

0:07:09.960 --> 0:07:14.240
<v Speaker 1>not have to worry about reinvention all the time. Now,

0:07:14.280 --> 0:07:17.040
<v Speaker 1>I would argue that the types of APIs that we

0:07:17.160 --> 0:07:23.400
<v Speaker 1>typically talk about today really originate from a dissertation that

0:07:23.560 --> 0:07:25.960
<v Speaker 1>was made by a guy named Roy Fielding while he

0:07:26.040 --> 0:07:31.160
<v Speaker 1>was pursuing his PhD. He called his dissertation Architectural Styles

0:07:31.240 --> 0:07:35.440
<v Speaker 1>and the Design of Network Based Software Architectures. Now that

0:07:35.480 --> 0:07:38.560
<v Speaker 1>title doesn't scream API, right. If I just saw that

0:07:38.640 --> 0:07:44.560
<v Speaker 1>title listed on a citation list, I wouldn't immediately think, oh,

0:07:44.640 --> 0:07:47.920
<v Speaker 1>that that's a paper about APIs. But it is actually,

0:07:48.360 --> 0:07:51.800
<v Speaker 1>and Fielding also presented ideas about how APIs work in

0:07:51.840 --> 0:07:54.960
<v Speaker 1>the age of the Internet. So he wrote this dissertation

0:07:55.160 --> 0:07:59.080
<v Speaker 1>in two thousand. At that time, there was an emerging

0:07:59.120 --> 0:08:03.480
<v Speaker 1>technology that would shape the Web and later the mobile Internet,

0:08:03.520 --> 0:08:07.520
<v Speaker 1>and that was the Web API or the web AP

0:08:08.160 --> 0:08:09.760
<v Speaker 1>as I would prefer to call it, But then no

0:08:09.760 --> 0:08:11.360
<v Speaker 1>one would know what I was talking about, so I

0:08:11.400 --> 0:08:14.080
<v Speaker 1>won't do that again. But in two thousand, and that

0:08:14.160 --> 0:08:17.600
<v Speaker 1>same year, Salesforce would release what a lot of folks

0:08:17.600 --> 0:08:22.080
<v Speaker 1>would point to as the first modern API. In fact,

0:08:22.680 --> 0:08:24.800
<v Speaker 1>we even have a precise date for this, which is

0:08:24.960 --> 0:08:29.080
<v Speaker 1>unusual when I'm talking about the history of stuff. Often

0:08:29.440 --> 0:08:31.920
<v Speaker 1>you can't nail it down to even a specific year.

0:08:31.960 --> 0:08:34.880
<v Speaker 1>But in this case, we have a specific date February seventh,

0:08:35.360 --> 0:08:41.240
<v Speaker 1>two thousand. That's because Salesforce actually unveiled this API during

0:08:41.280 --> 0:08:46.600
<v Speaker 1>the IDG Demo two thousand conference. The Salesforce API allowed

0:08:46.640 --> 0:08:50.800
<v Speaker 1>its customers and Salesforce's customers or other companies. Right, Like,

0:08:51.360 --> 0:08:54.760
<v Speaker 1>you typically have small businesses that are customers of Salesforce

0:08:54.960 --> 0:09:03.079
<v Speaker 1>and they are essentially offloading certain business needs to Salesforce. Well,

0:09:04.160 --> 0:09:07.360
<v Speaker 1>in this case, the API would allow these businesses to

0:09:07.440 --> 0:09:10.280
<v Speaker 1>create an ecosystem in which the businesses could share data

0:09:10.320 --> 0:09:14.559
<v Speaker 1>across their different applications. So you know, a business can

0:09:14.600 --> 0:09:16.880
<v Speaker 1>be really really complicated, right. You can have all these

0:09:16.880 --> 0:09:20.160
<v Speaker 1>different departments. You can have each department having its own

0:09:20.240 --> 0:09:26.040
<v Speaker 1>systems you dedicated for that department, which is cool, but

0:09:26.120 --> 0:09:28.240
<v Speaker 1>it also means that you have the danger of each

0:09:28.280 --> 0:09:31.920
<v Speaker 1>department becoming a silo so that you can't easily share

0:09:32.520 --> 0:09:36.360
<v Speaker 1>information from department to department, and that can really end

0:09:36.440 --> 0:09:40.920
<v Speaker 1>up inhibiting innovation and advancements, and it can be a

0:09:40.920 --> 0:09:44.680
<v Speaker 1>big hit on efficiency. So what Salesforce was doing was

0:09:45.120 --> 0:09:48.040
<v Speaker 1>releasing this API where its customers could make use of

0:09:48.080 --> 0:09:53.560
<v Speaker 1>this and be able to share across different applications all

0:09:53.640 --> 0:09:58.840
<v Speaker 1>the same information and make better tools. That would allow

0:09:59.000 --> 0:10:04.000
<v Speaker 1>for these businesses to operate more efficiently and effectively, and

0:10:04.440 --> 0:10:08.120
<v Speaker 1>that would be a better end experience for the user,

0:10:08.240 --> 0:10:13.400
<v Speaker 1>and that philosophy would become sort of an underlying element,

0:10:13.880 --> 0:10:18.360
<v Speaker 1>a foundational element for APIs moving forward. We're going to

0:10:18.440 --> 0:10:20.840
<v Speaker 1>take a quick break. When we come back, i'll explain

0:10:20.880 --> 0:10:24.680
<v Speaker 1>a bit more about how this would develop over the

0:10:24.679 --> 0:10:38.199
<v Speaker 1>following years. Okay, we're back, So not too long after

0:10:38.480 --> 0:10:42.559
<v Speaker 1>Salesforce launched its API, like you know, half a year later,

0:10:42.720 --> 0:10:46.439
<v Speaker 1>a little more than half a year, eBay would follow suit.

0:10:46.559 --> 0:10:50.320
<v Speaker 1>It launched its API in November of two thousand. This

0:10:50.360 --> 0:10:54.200
<v Speaker 1>would let licensed eBay partners access a framework that would

0:10:54.200 --> 0:10:58.439
<v Speaker 1>allow the developers to incorporate eBay services into other websites,

0:10:58.760 --> 0:11:01.440
<v Speaker 1>and technically it would also allow for applications as well.

0:11:02.320 --> 0:11:05.640
<v Speaker 1>So now like if you were a licensed eBay partner,

0:11:05.679 --> 0:11:10.080
<v Speaker 1>you could incorporate some of ebase functionality into your own website.

0:11:11.080 --> 0:11:14.600
<v Speaker 1>This was a pretty limited version of the API in

0:11:14.640 --> 0:11:17.360
<v Speaker 1>the sense that you had to be a licensed partner first,

0:11:17.400 --> 0:11:21.120
<v Speaker 1>and that was not the easiest thing to do, so

0:11:21.200 --> 0:11:25.760
<v Speaker 1>it was limited in the number of organizations that can

0:11:25.840 --> 0:11:29.600
<v Speaker 1>make use of the API, but the concept was a

0:11:29.600 --> 0:11:33.120
<v Speaker 1>strong one. Amazon would follow behind in two thousand and

0:11:33.120 --> 0:11:37.240
<v Speaker 1>two and it launched its own API as well as

0:11:37.320 --> 0:11:41.320
<v Speaker 1>it launched Amazon Web Services. Now this was not the

0:11:41.400 --> 0:11:44.800
<v Speaker 1>fully fledged Amazon Web Services we would talk about today.

0:11:45.600 --> 0:11:47.840
<v Speaker 1>That would happen a few years later when we would

0:11:47.880 --> 0:11:50.680
<v Speaker 1>get introduction of a couple of other big tools, but

0:11:50.760 --> 0:11:55.040
<v Speaker 1>it was the beginning of a massive move for Amazon,

0:11:55.120 --> 0:11:59.200
<v Speaker 1>one of the most profitable moves that Amazon would ever make.

0:11:59.840 --> 0:12:02.400
<v Speaker 1>If you were a developer, this meant you could actually

0:12:02.440 --> 0:12:06.839
<v Speaker 1>include Amazon functionality on say your web page, and this

0:12:07.040 --> 0:12:09.679
<v Speaker 1>mud give people a chance to search for products and

0:12:09.720 --> 0:12:12.360
<v Speaker 1>do some window shopping right from the comfort of your

0:12:12.520 --> 0:12:16.120
<v Speaker 1>web page. Maybe you even have your web page dimn't

0:12:16.200 --> 0:12:19.440
<v Speaker 1>you know, show off products that you're talking about or

0:12:19.480 --> 0:12:23.080
<v Speaker 1>that are related to whatever the web page is focused on,

0:12:23.120 --> 0:12:26.559
<v Speaker 1>that kind of thing. And it meant that by incorporating

0:12:26.640 --> 0:12:30.600
<v Speaker 1>that directly into your web page. People could access that

0:12:30.679 --> 0:12:33.760
<v Speaker 1>stuff without leaving your site, you know, and your bounce

0:12:33.840 --> 0:12:37.560
<v Speaker 1>rate would go down and your engagement rate would go

0:12:37.600 --> 0:12:40.400
<v Speaker 1>way up. Now, it would take a couple more years

0:12:40.400 --> 0:12:43.880
<v Speaker 1>for other companies to really push into API development. It

0:12:43.960 --> 0:12:47.840
<v Speaker 1>was a little slow. These companies were pioneers and others

0:12:47.840 --> 0:12:50.040
<v Speaker 1>took a bit of time to kind of catch up.

0:12:50.080 --> 0:12:52.760
<v Speaker 1>For one thing, you have to remember, like two thousand,

0:12:53.080 --> 0:12:55.520
<v Speaker 1>two thousand and one, that's when we're talking about the

0:12:55.720 --> 0:12:59.600
<v Speaker 1>dot com bubble bursting, especially in the wake of nine

0:12:59.640 --> 0:13:02.080
<v Speaker 1>to eleven and here in the United States, and so

0:13:02.320 --> 0:13:04.360
<v Speaker 1>that would end up taking a lot of the wind

0:13:04.400 --> 0:13:07.280
<v Speaker 1>out of the sales of companies that otherwise were innovating

0:13:07.400 --> 0:13:10.720
<v Speaker 1>in the web space. So that I think slowed down

0:13:10.840 --> 0:13:14.559
<v Speaker 1>API development. But one of the things we did see

0:13:14.920 --> 0:13:18.359
<v Speaker 1>in the mid two thousands was the emergence of widgets,

0:13:18.520 --> 0:13:23.680
<v Speaker 1>which were largely possible because of APIs. Do you all

0:13:23.679 --> 0:13:27.280
<v Speaker 1>remember widgets? I mean, there's still technically a thing. It's

0:13:27.320 --> 0:13:30.000
<v Speaker 1>not like they went away, it's just they were really

0:13:30.040 --> 0:13:33.280
<v Speaker 1>being pushed really hard in the mid to late two

0:13:33.360 --> 0:13:37.880
<v Speaker 1>thousands on everything from early social media platforms to really

0:13:37.960 --> 0:13:40.720
<v Speaker 1>like I remember seeing them everywhere at cees. Right, you

0:13:40.720 --> 0:13:43.840
<v Speaker 1>would see a refrigerator and it would have widgets, or

0:13:43.880 --> 0:13:47.840
<v Speaker 1>a television and it had widgets. Everything had widgets on them,

0:13:48.080 --> 0:13:51.000
<v Speaker 1>and they were always these little icons that linked to

0:13:51.040 --> 0:13:55.360
<v Speaker 1>some sort of basic functionality. Right. It was usually very specific,

0:13:55.440 --> 0:13:57.640
<v Speaker 1>like it might be a weather report widget, so you

0:13:57.679 --> 0:14:01.240
<v Speaker 1>could get a very quick run down on what current

0:14:01.960 --> 0:14:05.440
<v Speaker 1>and predicted whether conditions are or we're going to be.

0:14:06.720 --> 0:14:08.559
<v Speaker 1>Or it might be a stock ticker, or it could

0:14:08.600 --> 0:14:11.440
<v Speaker 1>be a news headline ticker. You get the idea. It

0:14:11.480 --> 0:14:14.840
<v Speaker 1>was very specific and purpose built, and it was largely

0:14:16.520 --> 0:14:20.120
<v Speaker 1>thanks to APIs that it was possible. Right. The widgets

0:14:20.120 --> 0:14:24.600
<v Speaker 1>were typically tapping into some other platforms information and then

0:14:24.640 --> 0:14:27.640
<v Speaker 1>presenting that information to you in the form of the widget.

0:14:28.640 --> 0:14:32.000
<v Speaker 1>In two thousand and four, Flicker introduced It's API that

0:14:32.080 --> 0:14:34.520
<v Speaker 1>gave people the chance to embed their images that they

0:14:34.520 --> 0:14:38.760
<v Speaker 1>had been storing on Flicker on other platforms, including things

0:14:38.800 --> 0:14:42.520
<v Speaker 1>like web pages or social media. That was incredible, Right,

0:14:42.640 --> 0:14:47.000
<v Speaker 1>You could have Flicker act as your repository of images,

0:14:47.440 --> 0:14:50.040
<v Speaker 1>and then you could use the embed feature to share

0:14:50.040 --> 0:14:53.040
<v Speaker 1>those images on other platforms without having to upload the

0:14:53.040 --> 0:14:56.400
<v Speaker 1>same picture to all the different places you wanted. And

0:14:56.480 --> 0:15:00.560
<v Speaker 1>it really streamlined things, and it really pushed Flicker into

0:15:00.640 --> 0:15:03.240
<v Speaker 1>becoming a leader for online images for quite some time

0:15:03.280 --> 0:15:06.320
<v Speaker 1>because they really got ahead of things. In two thousand

0:15:06.320 --> 0:15:10.440
<v Speaker 1>and six, we had a couple of big APIs that emerged.

0:15:10.960 --> 0:15:15.000
<v Speaker 1>One came from Twitter, you know, Rest in Peace. I guess,

0:15:15.080 --> 0:15:17.200
<v Speaker 1>you know, we could refer to it as X now,

0:15:17.240 --> 0:15:20.600
<v Speaker 1>but it was Twitter back then and Facebook they both

0:15:20.720 --> 0:15:24.000
<v Speaker 1>introduced APIs in two thousand and six, and this gave

0:15:24.080 --> 0:15:26.960
<v Speaker 1>developers a chance to tap into the functionality of those

0:15:27.000 --> 0:15:30.480
<v Speaker 1>platforms in new ways, and that's kind of what led

0:15:30.520 --> 0:15:33.920
<v Speaker 1>to third party Twitter feed readers, for example, like tweet deck.

0:15:34.120 --> 0:15:37.680
<v Speaker 1>In fact, tweet deck became so useful and popular that

0:15:37.760 --> 0:15:40.680
<v Speaker 1>Twitter actually acquired it and now it belongs to X

0:15:41.800 --> 0:15:44.520
<v Speaker 1>And honestly, I'm curious now what it's called, because I

0:15:44.520 --> 0:15:48.240
<v Speaker 1>imagine it's not called tweet deck within X anymore since

0:15:48.240 --> 0:15:49.920
<v Speaker 1>they got rid of all the Twitter and tweet stuff

0:15:50.320 --> 0:15:52.080
<v Speaker 1>and I didn't look it up, so I don't know.

0:15:52.720 --> 0:15:55.840
<v Speaker 1>I no longer access tweet deck because it's behind a paywall.

0:15:56.200 --> 0:16:00.440
<v Speaker 1>But yeah, so developers were able to add in new

0:16:00.520 --> 0:16:05.040
<v Speaker 1>functions in these new services that tapped into these platforms,

0:16:05.400 --> 0:16:08.440
<v Speaker 1>and they were functions that you wouldn't find on the

0:16:08.560 --> 0:16:11.720
<v Speaker 1>vanilla version of the service. So, for example, let's talk

0:16:11.720 --> 0:16:16.200
<v Speaker 1>about Twitter and tweet Deck. With tweet Deck, a user

0:16:16.240 --> 0:16:21.360
<v Speaker 1>could create a single view that would incorporate multiple Twitter accounts,

0:16:21.400 --> 0:16:24.120
<v Speaker 1>separated by columns. So if you were someone like me,

0:16:24.840 --> 0:16:26.640
<v Speaker 1>you would have one column that would just show you

0:16:26.680 --> 0:16:30.200
<v Speaker 1>the incoming Twitter feed, like all the posts from the

0:16:30.240 --> 0:16:33.000
<v Speaker 1>folks that you follow. You could have a column that

0:16:33.080 --> 0:16:37.240
<v Speaker 1>shows your own personal Twitter messages as well as the

0:16:37.320 --> 0:16:39.920
<v Speaker 1>replies and quotes and that kind of stuff, so all

0:16:39.960 --> 0:16:43.760
<v Speaker 1>the engagement with your own Twitter messages. A third column

0:16:43.920 --> 0:16:47.960
<v Speaker 1>might show, say, your podcasts tweets and replies and stuff,

0:16:48.000 --> 0:16:49.880
<v Speaker 1>so it's the same thing as your own personal account,

0:16:49.920 --> 0:16:51.760
<v Speaker 1>but for your podcast account and so on. Like, you

0:16:51.800 --> 0:16:55.320
<v Speaker 1>could have multiple columns stretching across the screen, each one

0:16:55.760 --> 0:16:59.480
<v Speaker 1>focusing on something separate on Twitter, but all incorporated into

0:16:59.520 --> 0:17:02.800
<v Speaker 1>a single so you have a very easy way to

0:17:02.960 --> 0:17:06.200
<v Speaker 1>monitor this. This was really useful for social media managers,

0:17:06.280 --> 0:17:09.720
<v Speaker 1>right who might be monitoring multiple accounts. Let's say that

0:17:09.760 --> 0:17:12.680
<v Speaker 1>you're a manager and you have several clients. You could

0:17:12.680 --> 0:17:15.760
<v Speaker 1>have a tweet deck set up with all the different

0:17:15.840 --> 0:17:18.280
<v Speaker 1>client columns there and in a one view you can

0:17:18.359 --> 0:17:22.920
<v Speaker 1>quickly see what's going on. It's such a useful suite

0:17:22.960 --> 0:17:25.480
<v Speaker 1>of features that Twitter would buy it, and now Elon

0:17:25.600 --> 0:17:27.560
<v Speaker 1>Musk has locked it behind a paywall. You have to

0:17:27.600 --> 0:17:33.280
<v Speaker 1>be a subscriber to access those features. So yeah, bumber.

0:17:33.320 --> 0:17:37.440
<v Speaker 1>It's why I don't really check tech Stuff's Twitter feed anymore,

0:17:37.480 --> 0:17:42.080
<v Speaker 1>because I had it incorporated into tweet Deck, and now

0:17:42.119 --> 0:17:44.159
<v Speaker 1>I can't access tweet Deck because I'm not a subscriber,

0:17:44.600 --> 0:17:49.920
<v Speaker 1>So yeah, it's kind of lost. I could technically log

0:17:50.000 --> 0:17:53.400
<v Speaker 1>into x and tech Stuff's account and check it that way,

0:17:54.280 --> 0:17:59.159
<v Speaker 1>but y'all, it's just the mental energy needed for me

0:17:59.200 --> 0:18:03.160
<v Speaker 1>to do that just doesn't exist in me anyway. Facebook's

0:18:03.200 --> 0:18:05.720
<v Speaker 1>API would let developers create all sorts of stuff that

0:18:05.720 --> 0:18:07.879
<v Speaker 1>could be built on top of Facebook, including things like

0:18:08.040 --> 0:18:11.359
<v Speaker 1>games and surveys and all that sort of stuff. This

0:18:11.400 --> 0:18:14.600
<v Speaker 1>is what eventually led to the Cambridge Analytica scandal, in fact,

0:18:15.000 --> 0:18:20.280
<v Speaker 1>because a developer created a survey tool that was paying

0:18:20.320 --> 0:18:23.440
<v Speaker 1>people to take the survey. But what the people didn't

0:18:23.480 --> 0:18:26.480
<v Speaker 1>know is that by agreeing to the survey, which was

0:18:26.520 --> 0:18:32.520
<v Speaker 1>all based integrated into Facebook using Facebook's API, then the

0:18:32.560 --> 0:18:35.280
<v Speaker 1>actual survey could gather information not just about the person

0:18:35.359 --> 0:18:38.240
<v Speaker 1>taking the survey in the first place, but all the

0:18:38.280 --> 0:18:42.560
<v Speaker 1>people they connected to through Facebook, like if their friends

0:18:42.600 --> 0:18:46.359
<v Speaker 1>had public Facebook profiles, the app could then access all

0:18:46.400 --> 0:18:49.439
<v Speaker 1>of that information as well. So that's what led to

0:18:49.680 --> 0:18:54.120
<v Speaker 1>a big scandal, because it meant that the app developer

0:18:54.160 --> 0:18:57.680
<v Speaker 1>was able to access information from people who never consented

0:18:58.080 --> 0:19:01.520
<v Speaker 1>to share that information in the first place. Facebook ultimately

0:19:02.000 --> 0:19:05.320
<v Speaker 1>changed its API to restrict apps so that they could

0:19:05.400 --> 0:19:09.440
<v Speaker 1>only request access to info that was relevant to whatever

0:19:09.720 --> 0:19:12.240
<v Speaker 1>the app was doing. So that way, if you were

0:19:12.280 --> 0:19:15.480
<v Speaker 1>to download or install an app that was like a

0:19:15.520 --> 0:19:19.160
<v Speaker 1>fun horoscope app, it wasn't for some reason getting access

0:19:19.520 --> 0:19:23.080
<v Speaker 1>to all your messages and stuff like that. That would

0:19:23.119 --> 0:19:26.320
<v Speaker 1>not be necessary for that particular app. But back in

0:19:26.320 --> 0:19:30.000
<v Speaker 1>the old days there were fewer restrictions, and we saw

0:19:30.119 --> 0:19:34.280
<v Speaker 1>what happened as a result of that. In two thousand

0:19:34.280 --> 0:19:37.800
<v Speaker 1>and seven, we had another huge development that would have

0:19:38.000 --> 0:19:42.200
<v Speaker 1>a big push on APIs, and that was the introduction

0:19:42.440 --> 0:19:46.640
<v Speaker 1>of the iPhone. So I've said this before, the iPhone

0:19:46.680 --> 0:19:50.119
<v Speaker 1>was not the world's first smartphone. It had followed behind

0:19:50.200 --> 0:19:55.160
<v Speaker 1>lots of other smartphones. But before the iPhone, particularly here

0:19:55.160 --> 0:19:59.240
<v Speaker 1>in the United States, smartphones were not really a consumer product.

0:19:59.640 --> 0:20:02.600
<v Speaker 1>They were sort of a prosumer product. It was the

0:20:02.680 --> 0:20:05.600
<v Speaker 1>kind of thing you would expect a business executive to own,

0:20:06.000 --> 0:20:10.040
<v Speaker 1>like a BlackBerry, something like those types of smartphones. But

0:20:10.080 --> 0:20:13.360
<v Speaker 1>your average person didn't have a smartphone. That's not how

0:20:13.359 --> 0:20:15.760
<v Speaker 1>they accessed the web. If they were accessing the web

0:20:15.800 --> 0:20:18.040
<v Speaker 1>at all, they were doing so on a desktop or

0:20:18.119 --> 0:20:21.720
<v Speaker 1>laptop computer, maybe a web TV if they were one

0:20:21.720 --> 0:20:25.280
<v Speaker 1>of those folks, but otherwise you were accessing it on

0:20:25.920 --> 0:20:29.639
<v Speaker 1>like a computer. The iPhone would change that, right, and

0:20:29.720 --> 0:20:32.320
<v Speaker 1>that would mark the beginning of what would become a

0:20:32.440 --> 0:20:37.080
<v Speaker 1>massive shift in web development and web design, this migration

0:20:37.480 --> 0:20:42.000
<v Speaker 1>to the mobile web. As more people adopted smartphones, there

0:20:42.119 --> 0:20:46.280
<v Speaker 1>was this need to make it easier for those folks

0:20:46.320 --> 0:20:49.840
<v Speaker 1>to view and interact with online content. Right, Like, you

0:20:49.880 --> 0:20:53.840
<v Speaker 1>couldn't just present a web page to a smartphone the

0:20:53.880 --> 0:20:56.719
<v Speaker 1>same way you would to a PC or laptop because

0:20:56.880 --> 0:21:01.840
<v Speaker 1>the landscape was to different, right, the size of the

0:21:01.840 --> 0:21:06.040
<v Speaker 1>screen was different. It would make it very challenging to

0:21:06.119 --> 0:21:08.879
<v Speaker 1>read or interact with stuff that was on a web page.

0:21:09.160 --> 0:21:11.160
<v Speaker 1>You had to come about it in a different way.

0:21:11.800 --> 0:21:16.520
<v Speaker 1>But that also meant that there were new opportunities to

0:21:16.600 --> 0:21:21.760
<v Speaker 1>develop applications that were built on top of APIs that

0:21:22.040 --> 0:21:26.679
<v Speaker 1>could work specifically for smartphones, that could lay things out

0:21:27.000 --> 0:21:31.239
<v Speaker 1>in a way that made it easier to interact with

0:21:31.359 --> 0:21:35.160
<v Speaker 1>the content that was on the web. So the mobile

0:21:35.240 --> 0:21:40.879
<v Speaker 1>web really created a huge, huge change in the approach

0:21:40.920 --> 0:21:43.160
<v Speaker 1>to APIs. And there was another one that was going

0:21:43.200 --> 0:21:45.159
<v Speaker 1>on at the same time, and that was the shift

0:21:45.560 --> 0:21:48.639
<v Speaker 1>to the cloud. This was happening more in the background,

0:21:49.119 --> 0:21:51.560
<v Speaker 1>but you had more and more companies that were taking

0:21:51.600 --> 0:21:56.800
<v Speaker 1>advantage of cloud services in order to offload things that

0:21:56.920 --> 0:22:00.199
<v Speaker 1>traditionally would have to all happen in house. Right, So

0:22:00.240 --> 0:22:03.679
<v Speaker 1>in the old days, if you had a company that

0:22:03.760 --> 0:22:06.679
<v Speaker 1>had its own databases and computer systems and stuff, you

0:22:06.720 --> 0:22:10.159
<v Speaker 1>had to keep all of that stuff on premises. You

0:22:10.240 --> 0:22:14.200
<v Speaker 1>were responsible for keeping up with all the hardware, maintaining

0:22:14.200 --> 0:22:17.639
<v Speaker 1>the software, updating features, that sort of stuff. That's a

0:22:17.680 --> 0:22:21.359
<v Speaker 1>lot of work. But cloud services offloaded a lot of

0:22:21.359 --> 0:22:25.080
<v Speaker 1>that and really made it possible for software as a

0:22:25.160 --> 0:22:28.119
<v Speaker 1>service to emerge. I'll talk a little bit more about

0:22:28.160 --> 0:22:30.280
<v Speaker 1>that in just a second. We're going to take another

0:22:30.480 --> 0:22:42.760
<v Speaker 1>quick break and we'll be right back. So, yeah, I

0:22:42.840 --> 0:22:46.720
<v Speaker 1>mentioned before the break the emergence of cloud services. Now,

0:22:46.720 --> 0:22:51.119
<v Speaker 1>they did exist before the mid two thousands, but it

0:22:51.160 --> 0:22:53.639
<v Speaker 1>was right around that time where they started to really

0:22:53.680 --> 0:22:55.959
<v Speaker 1>take off, and in fact, we could point to two

0:22:56.000 --> 0:22:58.040
<v Speaker 1>thousand and six as being a huge year for that

0:22:58.080 --> 0:23:02.840
<v Speaker 1>because that's again when Amazon would introduce some new features

0:23:02.840 --> 0:23:07.440
<v Speaker 1>in the cloud, like Amazon Compute and Amazon Storage services

0:23:07.960 --> 0:23:11.920
<v Speaker 1>that would become hugely influential in the space. In fact,

0:23:11.920 --> 0:23:16.440
<v Speaker 1>it made Amazon become the dominant player in the cloud

0:23:16.520 --> 0:23:20.920
<v Speaker 1>computing space in many ways. So now you had the

0:23:20.960 --> 0:23:26.080
<v Speaker 1>ability for businesses to tap into functionalities that otherwise they

0:23:26.480 --> 0:23:30.120
<v Speaker 1>would have to develop all in house and it might

0:23:30.160 --> 0:23:32.640
<v Speaker 1>take them years to do or it might be such

0:23:32.920 --> 0:23:35.840
<v Speaker 1>a big investment that they never would be able to

0:23:35.880 --> 0:23:40.760
<v Speaker 1>do it. Now, by becoming customers of these cloud computing companies,

0:23:41.320 --> 0:23:45.640
<v Speaker 1>they could end up offloading the compute and storage stuff

0:23:45.720 --> 0:23:49.480
<v Speaker 1>to another company and get their developers to create new

0:23:49.600 --> 0:23:54.240
<v Speaker 1>applications that tapped into that ability and leverage the information

0:23:54.720 --> 0:23:57.760
<v Speaker 1>that the business was gathering. So it became possible to

0:23:57.800 --> 0:24:00.879
<v Speaker 1>create entirely new services. And this is really when we

0:24:00.880 --> 0:24:04.879
<v Speaker 1>started to see software as a service explode as a

0:24:04.920 --> 0:24:08.680
<v Speaker 1>business model, because developers could create a tool that would

0:24:08.680 --> 0:24:12.320
<v Speaker 1>meet the needs of their customers and then charge their customers,

0:24:12.359 --> 0:24:16.560
<v Speaker 1>maybe even setting up a subscription service for their software,

0:24:17.160 --> 0:24:21.359
<v Speaker 1>and that would turn an application into an ongoing revenue generator.

0:24:21.680 --> 0:24:23.520
<v Speaker 1>Like in the old days. Let's say you made a

0:24:23.560 --> 0:24:27.120
<v Speaker 1>word processing program. You would sell that in stores and

0:24:27.160 --> 0:24:31.160
<v Speaker 1>you would get a portion of every sale that was made.

0:24:31.400 --> 0:24:34.359
<v Speaker 1>Right that was the old day of days of programming.

0:24:34.920 --> 0:24:37.320
<v Speaker 1>You'd make a program, people would buy a copy of

0:24:37.320 --> 0:24:39.920
<v Speaker 1>the program, you hope that not too many people pirated

0:24:40.000 --> 0:24:43.399
<v Speaker 1>your stuff, and you made money. Software as a service

0:24:43.480 --> 0:24:47.439
<v Speaker 1>is totally different. You would make an application and you

0:24:47.440 --> 0:24:51.679
<v Speaker 1>would sell access to that application, which would be based

0:24:51.680 --> 0:24:55.000
<v Speaker 1>in the cloud, built on APIs, tapping into all these

0:24:55.040 --> 0:24:59.800
<v Speaker 1>powerful other platforms, and your customers would pay you an

0:24:59.800 --> 0:25:03.840
<v Speaker 1>on going subscription fee to access that tool, and you

0:25:03.840 --> 0:25:06.399
<v Speaker 1>would be able to make money off the same application

0:25:06.520 --> 0:25:08.919
<v Speaker 1>with the same customer over and over again, as opposed

0:25:08.960 --> 0:25:11.000
<v Speaker 1>to doing it that one time and that one point

0:25:11.000 --> 0:25:14.800
<v Speaker 1>of sale. So it really was a truly enormous change

0:25:14.800 --> 0:25:18.760
<v Speaker 1>in business. These days, APIs allow developers to make tons

0:25:18.760 --> 0:25:23.600
<v Speaker 1>of new products and services by building on various foundations. Typically,

0:25:23.640 --> 0:25:27.359
<v Speaker 1>the developers are also paying for the use of APIs.

0:25:27.400 --> 0:25:30.480
<v Speaker 1>I mean it depends. The platform may have a tiered

0:25:30.720 --> 0:25:35.359
<v Speaker 1>list of API access with a free tier at the bottom,

0:25:35.400 --> 0:25:39.119
<v Speaker 1>which might limit the features that developers can tap into,

0:25:39.840 --> 0:25:46.040
<v Speaker 1>or maybe a charge based upon how frequently the app

0:25:46.600 --> 0:25:49.960
<v Speaker 1>that the developers working on is going to reference the

0:25:50.200 --> 0:25:53.040
<v Speaker 1>underlying platform. So when we say reference, what we're talking

0:25:53.040 --> 0:25:58.400
<v Speaker 1>about is the app itself, the end app how frequently

0:25:58.440 --> 0:26:03.399
<v Speaker 1>does it have to access the underlying platform. So if

0:26:03.400 --> 0:26:06.679
<v Speaker 1>you've built a Twitter based app, for example, or X,

0:26:06.720 --> 0:26:09.880
<v Speaker 1>I guess we should say an X based app. How

0:26:09.960 --> 0:26:14.640
<v Speaker 1>frequently is that app referencing X? How quick? How many

0:26:14.680 --> 0:26:17.080
<v Speaker 1>times does it have to pull information from or post

0:26:17.080 --> 0:26:21.920
<v Speaker 1>information to the underlying platform? That would be a reference.

0:26:22.720 --> 0:26:27.000
<v Speaker 1>And one way that companies will charge developers is by

0:26:27.040 --> 0:26:30.119
<v Speaker 1>adding up the number of times their apps are referencing

0:26:30.160 --> 0:26:34.720
<v Speaker 1>the underlying platform and saying, all right, you are putting

0:26:35.119 --> 0:26:38.760
<v Speaker 1>X demand on this platform. Shouldn't use X since that

0:26:38.880 --> 0:26:42.720
<v Speaker 1>is a platform. You're putting this specific amount of demand

0:26:42.760 --> 0:26:46.000
<v Speaker 1>upon our platform. In turn, we are going to charge

0:26:46.040 --> 0:26:51.919
<v Speaker 1>you this amount because you are putting this load on

0:26:52.200 --> 0:26:57.439
<v Speaker 1>us in order to power your application. So this has

0:26:57.440 --> 0:27:00.440
<v Speaker 1>actually led to some issues recently which I've td about

0:27:00.440 --> 0:27:03.240
<v Speaker 1>on this show, but you've probably also just heard out

0:27:03.240 --> 0:27:05.840
<v Speaker 1>and about which is that A couple of different companies,

0:27:05.880 --> 0:27:11.680
<v Speaker 1>specifically x formerly known as Twitter and Reddit, have alienated

0:27:11.760 --> 0:27:15.359
<v Speaker 1>some developers by changing up their API. So by doing

0:27:15.400 --> 0:27:18.480
<v Speaker 1>things like getting rid of free tiers of service and

0:27:18.560 --> 0:27:23.760
<v Speaker 1>hiking up the cost of other tiers, these companies have

0:27:23.840 --> 0:27:28.640
<v Speaker 1>really upset a lot of developers and users. So these

0:27:28.680 --> 0:27:32.520
<v Speaker 1>companies are charging developers based on essentially how frequently the

0:27:32.760 --> 0:27:38.159
<v Speaker 1>apps are referencing those underlying platforms. So Reddit is a

0:27:38.160 --> 0:27:41.719
<v Speaker 1>great example. Reddit did this thing where they changed how

0:27:41.760 --> 0:27:46.040
<v Speaker 1>much they were charging developers for really popular apps. So

0:27:46.560 --> 0:27:49.720
<v Speaker 1>let's say that you've made a Reddit app, and really

0:27:49.760 --> 0:27:51.720
<v Speaker 1>this let's just say, this app is just a way

0:27:51.840 --> 0:27:55.280
<v Speaker 1>to browse and post to Reddit. Right, we're not reinventing

0:27:55.280 --> 0:27:58.080
<v Speaker 1>the wheel. We're not making anything spectacular. What we're making

0:27:58.160 --> 0:28:03.160
<v Speaker 1>is a Reddit tool that lets you, you know, access subreddits,

0:28:03.520 --> 0:28:06.320
<v Speaker 1>read posts, and make posts. And that's it. But it's

0:28:06.320 --> 0:28:09.199
<v Speaker 1>got a really good user interface, it's really well organized,

0:28:09.840 --> 0:28:13.240
<v Speaker 1>easy to use, its attractive. Uh, it's got you know,

0:28:13.359 --> 0:28:15.840
<v Speaker 1>things in places that make a lot of sense, and

0:28:16.200 --> 0:28:19.080
<v Speaker 1>a lot of users see it as being superior to

0:28:19.359 --> 0:28:24.200
<v Speaker 1>the official Reddit app, So they gravitate toward this third

0:28:24.240 --> 0:28:27.080
<v Speaker 1>party app that you have developed because they just like

0:28:27.160 --> 0:28:30.680
<v Speaker 1>the way that you've approached this, but your app has

0:28:30.760 --> 0:28:33.240
<v Speaker 1>become really really popular and people are using it a lot.

0:28:33.359 --> 0:28:36.359
<v Speaker 1>It's not just that a ton of people have downloaded

0:28:36.400 --> 0:28:38.960
<v Speaker 1>and installed your app, it's that they're on the app

0:28:39.480 --> 0:28:43.320
<v Speaker 1>all the time, and so your app is referencing Reddit

0:28:44.200 --> 0:28:49.120
<v Speaker 1>a lot. Every single day. Reddit is tallying up those references,

0:28:49.400 --> 0:28:51.960
<v Speaker 1>and then it sends you a bill, and that bill

0:28:52.080 --> 0:28:55.240
<v Speaker 1>is truly massive, like we're talking like millions of dollars

0:28:55.280 --> 0:28:58.960
<v Speaker 1>a year massive, And meanwhile, your app is not really

0:28:59.000 --> 0:29:01.880
<v Speaker 1>generating that much revived Like maybe you built this app

0:29:01.880 --> 0:29:03.680
<v Speaker 1>and maybe you are making some money off of it,

0:29:03.720 --> 0:29:06.400
<v Speaker 1>but it's nothing compared to the bill that's coming in.

0:29:06.800 --> 0:29:10.479
<v Speaker 1>So you literally cannot afford to stay in business because

0:29:10.520 --> 0:29:12.680
<v Speaker 1>the bill you have to pay to Reddit is greater

0:29:12.760 --> 0:29:15.760
<v Speaker 1>than what you're making in revenue, so you have to

0:29:15.800 --> 0:29:19.280
<v Speaker 1>shut down. This is what happened over at Reddit. Some

0:29:19.400 --> 0:29:23.400
<v Speaker 1>very popular Reddit third party apps had to close up

0:29:23.400 --> 0:29:26.880
<v Speaker 1>shop because they couldn't afford to stay in business, and

0:29:27.480 --> 0:29:31.320
<v Speaker 1>a lot of the Reddit community got extremely upset about

0:29:31.320 --> 0:29:35.680
<v Speaker 1>this and felt that Reddit was pricing out third party

0:29:35.680 --> 0:29:38.680
<v Speaker 1>developers and trying to force people into using the actual

0:29:38.760 --> 0:29:41.440
<v Speaker 1>Reddit app, which a lot of people did not like,

0:29:42.200 --> 0:29:46.040
<v Speaker 1>and as a result, we saw lots of protests on Reddit.

0:29:46.120 --> 0:29:49.200
<v Speaker 1>Subreddits went dark for a couple of days, some longer

0:29:49.240 --> 0:29:52.080
<v Speaker 1>than just a couple of days. Now there's this ugly

0:29:52.120 --> 0:29:55.040
<v Speaker 1>business of Reddit coming in and removing moderators of certain

0:29:55.120 --> 0:30:00.600
<v Speaker 1>subreddits who were refusing to give up on protesting this change,

0:30:01.080 --> 0:30:04.040
<v Speaker 1>and it's continuing to this day. It's still ugly. There

0:30:04.040 --> 0:30:07.800
<v Speaker 1>are still some subreddits that are feeling the effects of this.

0:30:08.960 --> 0:30:11.880
<v Speaker 1>The leadership at Reddit haven't really budged on the issue,

0:30:11.920 --> 0:30:16.040
<v Speaker 1>and meanwhile, the users are just as angry now as

0:30:16.040 --> 0:30:19.080
<v Speaker 1>they were earlier this summer when the changes were first

0:30:19.360 --> 0:30:24.760
<v Speaker 1>kind of coming to light. So APIs can be a big,

0:30:24.880 --> 0:30:27.640
<v Speaker 1>big deal, right. They can be a big revenue generator,

0:30:27.680 --> 0:30:31.360
<v Speaker 1>They can be a big way to build loyalty in

0:30:31.400 --> 0:30:34.040
<v Speaker 1>a customer base. But they can also be at the

0:30:34.040 --> 0:30:37.640
<v Speaker 1>heart of great controversy if a company decides to make

0:30:37.760 --> 0:30:41.960
<v Speaker 1>changes to its policies and at least in the eyes

0:30:42.040 --> 0:30:46.240
<v Speaker 1>of the public, disproportionately hurt the developers who are making

0:30:46.360 --> 0:30:51.280
<v Speaker 1>use of those APIs. So I hope this episode helps

0:30:51.280 --> 0:30:55.200
<v Speaker 1>clear up what APIs are, what they're for, and why

0:30:55.480 --> 0:30:59.120
<v Speaker 1>they are important. They are the thing the gateway that

0:30:59.240 --> 0:31:04.160
<v Speaker 1>allows into developers to tap into the massive features that

0:31:04.200 --> 0:31:09.280
<v Speaker 1>are found in really important platforms and to create new

0:31:09.320 --> 0:31:12.480
<v Speaker 1>experiences for people that we have. If I were to

0:31:12.480 --> 0:31:16.320
<v Speaker 1>do an episode just on a list of apps that

0:31:16.400 --> 0:31:19.880
<v Speaker 1>companies bought because the apps that were developed by third

0:31:19.880 --> 0:31:22.920
<v Speaker 1>parties were better than the stuff that was coming directly

0:31:23.000 --> 0:31:26.320
<v Speaker 1>out of the company itself, that would be an epic

0:31:26.520 --> 0:31:30.760
<v Speaker 1>episode because there are countless versions of that, and it

0:31:30.800 --> 0:31:34.200
<v Speaker 1>really just shows that, you know, innovation is not something

0:31:34.240 --> 0:31:37.840
<v Speaker 1>that you can just contain within four walls. Innovation comes

0:31:37.840 --> 0:31:42.000
<v Speaker 1>from entire communities and people who are only tangentially connected

0:31:42.400 --> 0:31:47.880
<v Speaker 1>to the actual underlying you know thing, and it's much

0:31:47.920 --> 0:31:52.520
<v Speaker 1>better to allow that kind of innovation to flourish because

0:31:52.520 --> 0:31:55.960
<v Speaker 1>we get the best tools and best experiences that way.

0:31:56.800 --> 0:31:59.960
<v Speaker 1>And I don't think it really profits anyone for love

0:32:00.400 --> 0:32:03.200
<v Speaker 1>that down too much. I mean, I get the need

0:32:03.240 --> 0:32:07.200
<v Speaker 1>to generate revenue to an extent, but I feel like

0:32:07.800 --> 0:32:15.720
<v Speaker 1>the extent we have seen has far outstretched creduelty, let's say.

0:32:16.960 --> 0:32:19.040
<v Speaker 1>In other words, I don't necessarily believe it when Reddit

0:32:19.120 --> 0:32:22.560
<v Speaker 1>says that they have to put in these exorbitant fees

0:32:22.600 --> 0:32:25.360
<v Speaker 1>in order to pay their Internet bills. I don't know

0:32:25.440 --> 0:32:28.760
<v Speaker 1>that that's really that. I'm sure there's some truth to that,

0:32:28.800 --> 0:32:32.840
<v Speaker 1>but I don't know that it necessitates charging a developer

0:32:32.960 --> 0:32:35.640
<v Speaker 1>millions of dollars a year because their app is so popular.

0:32:35.920 --> 0:32:39.240
<v Speaker 1>I hope you are all well. I hope you enjoyed

0:32:39.280 --> 0:32:42.280
<v Speaker 1>this tech Stuff Tidbits episode, and I will talk to

0:32:42.280 --> 0:32:53.000
<v Speaker 1>you again really soon. Tech Stuff is an iHeartRadio production.

0:32:53.320 --> 0:32:58.320
<v Speaker 1>For more podcasts from iHeartRadio, visit the iHeartRadio app, Apple Podcasts,

0:32:58.440 --> 0:33:00.479
<v Speaker 1>or wherever you listen to your favorite chops