The Future of Mobile Content and What it Means for Publishers and Advertisers
Originally aired on February 24, 2021 @ 3:00 AM - 4:00 AM CST
Best of: Internet Summit 2016
Session 1 The Future of Mobile Content and What it Means for Publishers and Advertisers
- Brendan Eich - President & CEO, Brave Software
- Malte Ubl - Tech Lead, Google, The AMP Project
- Michelle Zatlyn - Co-founder and COO, Cloudflare
Session 2 What Can We Expect from the Internet in 2020?
- Ilya Grigorik - Web Performance Engineer, Google
- John Graham-Cumming - CTO, Cloudflare
English
Internet Summit
Transcript (Beta)
Happy Music Hey so today has been great but the one thing missing is disagreement.
Everybody has agreed on everything and that's a little bit boring and so I hope that we change that right now although Brendan and Malta promised me no fistfights so so so that's good.
So I'm gonna start to my far left introducing Malta. Malta has been at Google for six years.
He worked on something called Google Photos that you may or may not use and the people who use it absolutely love it.
I see people talking about it all the time so congratulations on that and for the last 13 months has been the tech lead for a new project, a new initiative at Google called AMP that we're gonna learn a lot about today.
AMP stands for Accelerated Mobile Pages and we're talking about the future of mobile so very excited to have you here Malta.
Brendan, well he's way back when started worked at a company called Netscape that you may have heard of and while he worked at Netscape he literally created JavaScript so he is the creator of JavaScript for any of you developers who love JavaScript.
You can thank Brendan and afterwards run up and find out where that whole the whole story behind it and its name and whatnot but that doesn't end there.
Then he went on to found Mozilla, another company you probably have heard of and most recently is now went back to the startup world after being at Mozilla for a long time, CTO, founder, CEO for a brief period of time.
He started a new browser company called Brave and they are about a year old so he's trying to create the next generation browser which is a really hard thing to do.
So welcome Brendan. Malta and Brendan know each other because Malta is also a big JavaScript expert and so they've known each other for many years but they kind of different points of view and the topic today so welcome welcome.
So I thought we'd start by talking a little bit about how the mobile world has changed just to set the context the last five years.
Yeah so we're talking about content and there's definitely the emergence of like social platforms driving a lot more traffic than they used to and there's billions of new users across the world and there's and Ilya earlier touched about this there's been also non-change so you know we all have like 4G phones but not everyone has a 4G connection.
Some things stay the same and that is latency is still a big thing and so websites are too slow, apps are feel too slow and that's kind of the thing we're looking at.
Brendan what's changed for you for mobile the last five years?
I used to be on a Gen 1 iPhone for too long and it got really slow but also at Mozilla we were from the era when the PC was big so I think five years ago is when we actually started seriously doing mobile work and websites still need to do a better job because like Malta said there's too much latency, there's congestion, there's packet loss and it's painful.
Okay so Malta tell us a little bit what is AMP?
What is your mission at AMP and what do you guys do? Yeah so we started a year ago and basically what we felt was in the mobile web really is too slow and we have to do something and when I say me obviously I work for Google but we early on like reached out to publishers who obviously produced many of these pages and then you were talking to them like what can we do together and AMP kind of grew out of this.
What it really is like at the very low level it's a web components library and it has one element of it that I think is pretty innovative which is a validator that you run and then it tells you you actually have a valid AMP page and if that is the case then we can kind of guarantee that it's going to be reliably fast.
I mean you can still mess it up but it's like it's very likely to be fast and what that solved I think was this issue that we kind of I think since about 2009 we kind of know how to make fast websites but we then tried to educate people and that kind of didn't work and so this gave it scale and that now everyone who is an engineer and you like knows how to run a compiler and the compiler gives error messages and I just fix it that's my job that's how AMP works so it becomes really easy to do that and the final thing I that we don't talk about that much because see there's such a performance story but there's a very interesting aspect it's so AMP is about putting content out there and let it be displayed inside of apps and self-platforms in a way that retains monetization control for the publisher and what it really does it gives an API to a website and a way for a platform to interact at runtime with a web page and that actually opens up a lot of possibilities that haven't been like used all that much but I'm really excited about.
So just for those of you who don't know exactly what AMP is take your cell phone out okay and if you open up the browser you go to google.com and type in something like Hillary Clinton and you scroll down you're gonna see a carousel come up and you start to click on these and the pages load super fast you can start scrolling through this is AMP you see down in the corner there's a little powered by AMP amplified symbol but this is what you and your team are working on.
Right and we're seeing basically like about under a second load time as opposed to about 19 seconds on other web page so it's a pretty like it's a very very very significant improvement.
Yeah, wow, 19 seconds. I wouldn't have imagined that but like it's it works.
That's great okay so now we know a little bit about AMP, Brendan tell us about Brave.
Why are you creating a new browser? I mean there's a couple of good browsers out there.
A few I did this already and over time browsers tend to get big and old happens to all of us.
They tend to also have their their owners take their eye off the ball in my opinion unless it's a rare bird like Opera for a time or Mozilla when I was there.
Usually they have up the owning business has other agendas like advertising or operating systems or making shiny devices just to pick three random examples and that's a problem because the browser quality starts to drop over time.
So Brave is based on Chrome but we take out all ads third-party ads and trackers by default because the system has become parasitic and toxic.
We realized that that hurts publishers so we are working on ways for Brave users to give money to publishers anonymously and in small amounts and we also proposed we haven't done this yet a better way of mediating third-party ads which already are done through script JavaScript my fault on the page.
It was totally accidental right there was the cross-site image which I think Tim Berners-Lee was against but Marc Andreessen and Eric Beene just said oh let's put it in a mosaic and he did it it was great you could hotlink to your friends cat pictures why not cross-site and then in Netscape 1 there was the first -party cookie through cashier logins so you didn't have to log in all the time when you restarted your browser or even went back and forward in history just the two of those together made third-party tracking.
You put a pixel on ESPN you put on New York Times it sets a cookie it checks the cookie first if it sees that you've been to ESPN it knows you went to New York Times.
This was totally accidental evolution and it led to with JavaScript pouring fuel on the fire this whole ecosystem of third-party advertising which is now conveying malware on the top publisher sites so Brave is it's trying to stop that but provide a way for publishers to be economically whole and we actually have a bigger vision which is that you should own your own data users aren't paid for their data right now they're the product you know if you look around the poker game and you can't spot the chump you're it if you look around and see who's not getting paid that person's product we think you should get paid it's not that money is everything it's that it at least shows that you're considered to have bargaining power and the only way to do that is to block trackers.
So Malta you work for Google that makes a lot of money selling ads a lot a lot most and so then we have Brendan here who's saying well ads are bad I'm gonna block the ads the future of the Internet is no ads I mean and what do you think?
So I agree with Brenton that there is a problem with display advertising on the Internet and I want to expand on the historical perspective so most of the ad tech you see today was created in the late 90s early 2000s and everything that we've done since it's essentially backward compatible and still fulfilling those old constraints and there wasn't someone at 1999 who was thinking like let me start by designing a security model and everything goes from there right that's they just didn't do that like they didn't anticipate that's being such a great thing and so I so I kind of agree with the like assessment in general but what I'm actually very optimistic about is that if you go in 2016 and say well how would we actually design this if we started today that you could build something that wouldn't have these problems so for example Brenton mentioned malware no one wants to read in the paper that there's malware on their site and there's no like actual technical reason that you can't have advertising on the web without also disrooting malware right there like that those actually don't have anything to do with each other so I think we can actually get to very very good state but we finally have to make the leap of breaking backward compatibility and really like make a big jump forward.
So you think that there's a security vulnerability in ads but if we fix that then users online will be okay with content next to ads.
Brendan what does that mean for your company? I'd like to see it happen because I don't think it can I think the web is an open system nobody owns it and the reason publishers use third parties is because they want to aggregate audience even the big premium publishers don't know who you are just from the context of the page around the ad or from your browsing on their site alone so they really do want third parties to track you and build profiles and try to predict and guarantee audience and yield and ad tech is this sort of constant hustle where everyone's saying oh yes we've got the latest you know header bidding or header bidder wrapping or you know online behavioral advertising was supposed to do it too.
Yields were supposed to go up but they didn't money just moved around to a different pocket and the system as a whole had these negative externalities like malware driving people to ad blockers which you know you could be a good person who converts on ads and helps publishers make money but suddenly you get a bad ad and you'd say I'm gonna use an ad blocker and now you're out you're you opt that out of the system and you're not supporting any sites even the ones you like.
This seems like a hard problem to solve Google doesn't control the whole web Microsoft Apple nobody does and there are a lot of publishers out there still buying ad tech every year and buying this hype so I think this is gonna be with us for a while.
And so what about apps I mean where does apps fit into the whole picture where you know what if you just don't need a browser and you don't need AMP because I just get it everything from my apps.
So I think people have described apps as these custom special-purpose web browsers and like it doesn't really make sense to read the New York Times in an app they also have a web page it does make sense to read the New York Times in the app you're already using and so I think what I'm really excited about is this going from like web versus native into like an integration between the two because people will like they are going to use these apps but the content I mean you know HTML turns out to be a pretty good way to encode content and you know if you just reinvent it if you probably arrive at something very like either very similar or having just different problems so I don't like I don't really buy that there's like either are apps are reality they're great but they serve a very specific like purpose and content works well on the web and I think we'll continue to do so.
I was looking at a comScore report on 2015 desktop mobile websites mobile apps and all through we're growing desktop the only real app is the browser so the browser is still growing it's not dying desktop which means laptops for a lot of us is actually growing though it's slowing and mobile is hot but there's still not only browsers on mobile that were growing according to this comScore report there's the big browser no one talks about it's not a great browser my view Facebook has an embedded web view a lot of people are reading articles in it so I think I agree with Malte on this we're probably like brothers in arms right I'm using Chromium code it's all great and we want progressive web apps that use you know service workers we want things that look like native apps we want to blur the line erase the line so the both of you spent a lot of time talking to publishers when you go talk to publishers about what's coming over the horizon in terms of mobile what do you hear from them why aren't they using that more I mean I don't hear from them I don't want to use amp I like what we hear from them is obviously they see challenges in their monetization they obviously have problems like publishing to all these different platforms and so I mean I can't really help with them like it's another one I'm sorry but on the other hand we've like definitely I mean we on the other hand we ask them like what are the problems you want to solve and try to like together with them come up with solutions and one thing we didn't mention is that AMP is an open source project and we like tightly work together with the people using it to make content to actually change and to be great for them Brendan what do you what a publisher say to you so I know some are using AMP too but I remember reading about the Daily Beast which floated with Facebook instant articles and AMP and then didn't use either and I've talked to publishers a lot of them maybe it's they get captured by their ad tech vendors but they want to have things that AMP doesn't support they want header bidding or header bidder bidders or wrappers or whatever this latest nonsense that's being sold is they really think that they're gonna get more yield from it and maybe for a time they do so I know publishers who generally even if they're big and have a tech team are a little bit easily bamboozled frankly by their vendors and part of that is this this constant third-party sales cycle of try the new thing for better yield which means you're putting another script from a different domain on your page you're probably leaving the old one behind or your contractors are because you didn't have the tech team you hired some contractors and they're afraid to touch it which is why some sites you know have integrations left over that slow them down so I don't want to be too mean to the publishers but I do think there's a problem of specialization where a lot of publishers just don't have the tech strength to really optimize things well to put it in a positive light what I'm actually seeing is that there's the engineers working for these publishers and they want to do a great job and we're talking and what we realized is there's what what I call and I think this is not the official way to put it the middle management problem right so I have this ad tech thing on my side or there's like interstitial and it makes me this much money right and then I realized maybe it's not such good idea I turn it off and then oh I'm making less money shit let's put it back right and and and so you need obviously like upper management support at these companies to go over this like hill where you where you agree we actually have to make substantial changes that are going to come back positive in the long term and we need to be able to live with short-term revenue impact it's the global optimization problem you're you climb the hill and you like the weather and there's a flood coming it's going to kill you and you don't want to go down and walk across the plains and get to a higher ground you just feel like every step in the wrong direction hurts your bottom line in the near term and so yeah not to bust on the publishers a lot of them are stuck on a hill got it okay just changing changing gears for a second so you both like JavaScript a lot maybe a little it's 21 years old it's out of the house it's gets cut off it's on its own so there's a lot of developers computer science students who are tuning in by live stream a lot of people here who want to learn you know what programming language should I really jump into and sink my teeth into what would you what words of advice do you have to a budding developer of is JavaScript a language that they should they should learn to become experts at I mean I typically say I guess a question asked a lot I usually say yes there's all these things you can do with it you know it runs on robots drones and rockets friendly they not NASA's using it for space their spacesuit now and then it's in and obviously there's a great technology called react native to build native apps so it's going all these places on the other hand like if you like in a cold camp today and you just want to make it like get a quick job maybe like you go for a Java Android or like you know C sharp but it's definitely a great option I definitely still enjoy it you know it's like now a drinking age in America yeah it started early JavaScript also has these like static checkers like amp is cool I think this is a good thing about it you can actually run this checker and I'll make sure it doesn't get slow JavaScript has typescript flow other languages that I could name long list that compiled a JavaScript or that add a little value by adding optional annotations or types to give you warnings and that's that's powerful I love languages we're in sort of the second golden age of programming languages I was a the executive sponsor of rust at Mozilla which is independent out Dropbox is using it and rust is more like a safe c++ than anything so it depends on what you're doing if you're writing systems code you want you know C C++ rust if you're writing something for a spaceship or an ad or a browser or a server you might want JavaScript or something like it and Java JavaScript is getting to the point because it's so wide widely distributed that it will become the compile target or the go -to runtime for a lot of languages and that's called WebAssembly it's a second way of loading code faster Brennan I love that you use the word rocket ships and ads in the same sentence when deciding the power of JavaScript that's exactly you know we use a lot of JavaScript here we have a big team that works on it we also use a lot of go and developed by one of your colleagues Rob Pike at Google Malta what do you think about go yeah I'm personally not a fan how come compare contrast again and there's a lot of people in the room that probably don't necessarily know what's good or pros cons compare contrast in your personal opinion yeah I think like Rob is our opinion in person I think it's the wrong opinion about error handling but but you know in in reality it doesn't matter all that much at the language level you can get you know pretty productive in all of them as long as there's curly braces which I think it's like that's you need well basically you need curly braces otherwise no one's going to use it so that's that seems to be a fundamental property okay I have one more question and then I'm going to go to questions for the audience so start thinking if you have some and we'll definitely continue the debate internally here at Cloudflare of JavaScript versus go I think that'll be some fun internal conversations so the the Internet we know today definitely has advertising on it and there's some companies who made a lot of money doing that what does it look like over the next two to three years what's over their horizon fewer ads I think here's what I think smartphone is such a category killer unlike going from mainframes to minicomputers just a scale down or PCs but smartphones like everybody has one it's an action device it's in your pocket you better trust it and it doesn't have enough screen space to really want a lot of ads so I think it's just not a great display let's say vehicle that's why you're seeing full screens videos and hiding auto collapsing videos silent movies are back because they mute I think Facebook's trying to make them play sound that's gonna be terrible so there's a problem that advertising is always trying to shotgun your attention across all the sites you might visit online advertising I actually think Google now is going in a better direction make something that can predict the information you need when you need it and not bother you otherwise I think that would be a better direction than what we think of as advertising Malta I think earlier to that I'm like very optimistic about going about it in a principled technical way and trying to solve the problems I posted this blog post the other day titled what about the ads because people are always asking me you know hey Malta you make like content fast with em but isn't it the ads are all like that are like the fault and you know I could say because it was really hard to change them and people wanted them so we had to kind of support them but so busy amp initially went this way of like mitigating the the issues and and then we realized and this is one of those moments where you like built some technology afterwards it seems there's better for something else so you know you can argue amping a good or bad thing but it it seems such a perfect technology for advertising because you have these like pure atoms of stuff that you can like argue reason about what they do that's not like currently third-party are advertising there run some random people's JavaScript on your side you don't really know what's happening and so if you if you just stop doing that and and have something that you can reason about and we can say I have certain invariance about how it interferes with user experience I can for example say it's always more important that I can stroll this page then it is important that this ad shows me video right and if you can reason about it in this way you can I think find a better compromise where you have the you know unquestionable benefit of free content that's paid for by advertising while still you know having a great user experience I think there is a compromise to be found that we not necessarily meeting right now and you know it's definitely worth trying to do a much better job so here's the rub I gave you grief on Twitter about this you've integrated like 50 or 60 I lost track it's on a github it's a github file you can go read it it's like a bunch of different third parties that are allowed to be amp third parties and they can stick and do tracking still right they can build a profile of the user from site to site that's that's their business so I mean as I said we amp right now supports legacy attack in a way that like reduces the effect on user experience so for example everyone knows this effect where you go to a web page and it's really slow and you start reading and then boom everything's down because there's an ad popping up right and so we can guarantee that this doesn't happen we we don't control we don't want to control what the ad in particular is doing there obviously are some better differences and that the ad is never a first party if you know about security systems and browsers that does make a difference but otherwise yeah I mean we're trying to find a compromise where we get better on security we get better on user experience while retaining existing monetization because you can't just go out and say we don't really have the new system yet but you all have to like stop making money now for two years it's not gonna be very good for the publishers and unrealistic yeah that's happening though with ad blocker adoption there's a real race here to the bottom right the more people get ad blockers the publisher has a smaller segment left to advertise to and the sometimes the ad targeting gets worse and it just drives them down to ad blockers and the quality goes down I I appreciate the echo ecosystem problem I call it and I think it needs to be solved systematically the problem is the users if they have a right to their own data profile their own attention they have to hold on to that data or they won't have any bargaining power and that's why brave is blocking third parties even if everybody were using AMP and it was all nice and fast I think we would still be trying to give the user leverage over their own data hmm I have a lot of questions about that but I want to change I want to go out to the audience does anyone here have any questions for for for Malta or Brendan how has the standardization of JavaScript contributed to either making it a more mature or a faster moving technology standards are slow I still work on the JavaScript standards body ECMA TC 39 we're meeting at Facebook in two weeks or Netflix I forget which Netflix then Facebook we've got everybody we've got Airbnb so we've got a unicorn on board we have all the browser vendors we have I'm pretty sure Netflix and Facebook are both unicorns too JavaScript's getting decent right it's it's got lots of nice affordances and it's getting stuff that people have to use tools for right now building the language but I think the level of discourse that amp works at is really more in the w3c and brave just joined w3c but I haven't had time in a long time for it we had to actually go around it back in 2004 to restart HTML 5 we went and formed the what WG so I have a somewhat skeptical view of standards bodies I think what we need is winning innovation and the ability to this is a good part of the standards bodies donate what might be intellectual property rights to the standards body and then you get something everybody can share it's like amp could be standardized well so I mean I think the the concept of the extensible web which actually comes to goes directly here right so you you do low-level things and then applications are built on top right so amp people ask about being standardized it doesn't really make sense like you know jQuery and react don't standardize their JavaScript libraries and we're JavaScript library it's it's an application layer thing which doesn't really make sense to standardize because it's just you know that's what applications are like what about semantic markup for ads that was something that we passed up a long time ago and people were doing either you know iframes they don't do them much they do images or divs or script on page sometimes you can't tell right I mean I think the obviously amp is using web components that which add a layer of semantics that are like is not standardized and it's always obviously I mean just because you say something is something that doesn't mean it's true but it doesn't in many ways you can say like here's a carousel or these are tabs right so there's definitely a layer of semantics and for it I mean one of the reasons why am can do better in the presence of ads for example is we know there's an ad right if you just load someone JavaScript file and they can do whatever they want to your site and they don't know there's an ad it's also hard for browsers to slow it down like for example like in the third party iframe now all the browsers kind of say that's not as important as the main page we're going to slow it down but if the ad runs in the main page is really hard right so and because at least amp knows there's an ad that can it can deal with it except instead of like knowing nothing basically yeah I think that would be good to standard I don't mean all of amp but the good parts right like Crockford said amp the good parts I promise disagreement it's definitely good to like obviously to just try things and say like what are the things that turn out to be actually a good idea here's another one what about isn't Google trying to make scripts that do document right be penalized somehow I mean they're launched a feature if you're like document writers technology where you can essentially delay loading a page forever and load an ad on the way I did it it turns out a very not the greatest idea it's used by Google it's so no so I mean well so Google we shouldn't get too deep there basically what Chrome is doing is saying if you're on 2g we're not gonna do it we just stop like it's called an intervention where you purposely violate the standard by saying this better for the user because this technology can lead to page load times in hundreds of seconds it's obviously better to load it in 10 seconds because otherwise they wouldn't have finished loading anyway and it's now being wrote out from 2g only to 2g like so if you're like on a bad Wi -Fi you would get the same benefit so I think I mean that's actually by the way I totally agree and if you just take that argument and change document that right to third-party ads same argument I'm with you to be honest like this is literally how third-party ads slow you down because we so strictly loads ads after the page is already done so the contents they're kind of like that so the ad we can busy tell you page load time will never be negatively impacted by the ad right I think that's a very nice promise and sure like there's still like I'm not obviously that's why we're working on it we haven't solved all the problems but I think that's a very nice first step like progress over the status quo you said 19 seconds down to a second yeah right that's that's a big improvement and I was totally I agreed like doing things like Chrome is doing for 2g connections to break the standards a little bit it fits within the I think the ambit of web browsers like users last question sir Tim oh let's just get you a microphone Dina thank you that's what I heard Andreessen told me right we had to be just one a different mock-up okay and the next and the next text objects didn't make it easy to put images in for a few general for a few releases so but what I was going to talk about was with the mic is is payments and if you're not going to get if you're creative person isn't going to be get paid for advertising and I must agree I think they'll actually a lot of people here they may not be in this room but there are a lot of people out there who feel that advertising is really it's really decreasing the value of their lives and their kids as well and they would love to have bring up their children without them just being having their lives possibly a lot of people I think would follow you but you have to get money to the creatives there's there's web payments hopefully with web payments maybe people get more creative of W3.org slash payments just saying so hopefully as we will standardization there and the whole browser experience about paying for things will mean that there will be and maybe people get creative about smaller amounts paying in smaller quantities randomly distributing tips you know so certainly I think it's good for people to think in general about alternative ways of getting money to the creative people the people who've played the songs and written the songs and so because that's important so so brave quickly 0-12-1 is out today it has brave payments you can automatically and anonymously micro tip your top sites you don't have to think about it and we think anonymity is important that's hard to do today with with money and Bitcoin we think micro is important people don't want to pay a lot per good article and you know the the fees even on the Bitcoin blockchain or the interchange charge from your credit card will kill you you don't want to give your credit card out we joined the W3C mainly to I think work on web payments though you know yonzu works for brave and she was on the tag so maybe so come back so you know the I feel like my mobile phone has made me a much more productive person and I think a lot of people in this room share that sentiment and so we have to find a way to continue to do business online and have the creators put content online and still make sure that people get paid for their work and so thank you for all the work you're doing and the debate and the conversation and looking forward to see the the results of your efforts thank you all right okay so after that couple of talks we're gonna get a little bit more technical I've got with me right now Ilya Gregorik who's from Google and he's very active in the world of web performance he's chairing the W3C web performance group and he he basically wrote the book on web performance so I have the book here so anyone who's got this will know all about web performance.
Ilya I wanted to ask you I just wanted to tell you a story and last week I was in London and a friend I've known for years who I'd never seen flew over from Australia and I said to him how's it going being in London and I expected him to say something about the weather and he said the Internet is so much better here and why is that why is Australian Internet so poor compared to the UK it's nothing to do with policy is it well I guess it depends on exactly what he meant but my guess would be and you can tell me if I'm right or wrong a lot of has to do with latency and the punchline there is physics damn it so we can talk about I guess more about why that's the problem and I'm actually curious what was his experience so his experience was that websites were snappy right they came up like this and so the problem is that Australia is far away right yeah so fundamentally physics damn it speed of light pretty fast but not fast enough and unfortunately we haven't figured out how to make it any faster so if you actually look at the distances and you say well I have I'm sitting in London or say New York and I need to travel to Sydney even if you take the fastest path between those two points one way it's roughly on the order of like 60 to 70 milliseconds now you're not gonna find any cable that's gonna be a straight path between those cities so you're gonna bounce around add some latency there also we can't actually approach speed of light we're pretty close for loop and then like a constant factor 1.2 1.3 ish you multiply all that out and that round trip to just say like hello is 150 milliseconds and turns out that like humans can perceive change on the order of 200 milliseconds right so you have to be incredibly responsive and if you happen to live in UK and you're contacting a UK server that's that's a huge difference and I'm guessing that's exactly what he observed right I think he was probably contacting websites that were hosted far away from Australia and what's strange though is that okay so it's 150 milliseconds or whatever and we can perceive that how does that add up into a problem when I'm browsing a website well it it's not just one round trip right so you have to you send it like I want to see this page the server has to do some bunch of stuff calculate compute what it wants to present to yourself and then it sends back basically a manifest of things saying like here's the here's the text that you were looking for and by the way there's also this beautiful video that you want to see you need to fetch this other information for the JavaScript that needs to run the CSS all of that needs to compose and by time you fetch that JavaScript that JavaScript file says I need to also fetch this other thing and then like 10 layers deep you're finally resolving that dependency graph and two seconds or three seconds that has passed and you finally see something on the screen and that's kind of the fundamental challenge of building efficient applications on the web today it's just understanding that graph making it as shallow as you can and maybe narrower in terms of the amount of data that you have to fetch and now over time right we've gone from sort of 28 8 kilobit modems to 56 and now maybe from San Francisco you've got a very very fast big fat connection to the right at the same time websites at some point they got usable they were unusable as I'm right and then they seem to have stopped getting faster what what's happened there why don't they why aren't they getting faster good question so networks are definitely getting faster right like that's a given I think our expectations have obviously changed as well the websites back when we loaded them 56 came autumn we're much lighter but we didn't expect rich video and 4k video and 60 frames per second and super high resolution images and all that stuff so I think you can confirm this as well anytime you deploy a new link that adds extra capacity into the network somebody else on the network notices that and says oh really I can double my bit rate and my beautiful videos turns out users like that and immediately that link is saturated right so what you thought is gonna be your extra capacity for the next year is like saturated the next day and it's just it just means that you had pent-up demand that was not being used yeah this is a bit like making a highway even larger in more cars say okay I can use that in your back right back to where we see that quite commonly where we add extra bandwidth thinking oh that's good we need the extra capacity and it instantly fills up and what's actually happening is someone goes to a website the website now operates more quickly because we have availability and therefore they click on more stuff right it instantly fills fills up there fills up the pot so users interact more which generates more traffic because users generate more traffic the sites are encouraged to build richer experiences they add more capabilities and this it's a positive reinforcement cycle right but we're always kind of bumping up against that demand and it seems to me that there's another thing going on which is that there's a world which is sort of bifurcating between let's say you're sitting here in Silicon Valley with a 4k monitor and a gigabit connection to the Internet and all the websites you want to visit are in San Jose versus someone who's elsewhere in the world even myself in London I typically on my phone get 3g access what's happening with that well actually most of Europe is still relying on 3g the chances of you being connected to a 4g network in Europe right now are basically a coin flip in big cities you have much higher chance in 3g not so much or sorry in in other areas not so much but I think maybe let's actually take a step back right so the the topic here is 2020 right I'm actually I suck at predicting the future I think predicting the future is really hard especially in technology given the rate of change so as far as I can tell 10 years out we're gonna have flying cars Singularity and IPv6 and in that order but five years out in before this but yeah so five years out it's kind of like it's something I can sort of reason about it's like you take some crazy technology that's kind of on the cusp and you like five years out I'm sure we'll solve all the problems by then right so five years out for networks unlike 5g yeah 5g will solve everything we'll have plenty of bandwidth a latency will be like zero everything will be awesome right and like you laugh but that like this is the sentiment that I oftentimes get from very well educated engineers which is just like there's a Moore's Law and things are getting faster we'll get more bandwidth so yeah my sides kind of slow today but if I just kind of sit on it you know in a year we'll get better networks and everything will be much better and they're not wrong except that they are in five years things will be a lot better but there will also be the same so and what I mean by that is we'll deploy more networks more more denser networks right so we'll work on the last mile connectivity so we'll bring more bandwidth to the edge if you will so you'll have more reliable experience we will also kind of clamp down the latency a little bit more as we already said we're already kind of at the cusp of what we can do with physics so there's not gonna be a dramatic change 4g is like gives you 50 to 60 percent or 50 to 60 millisecond latency with mobile networks we're gonna be in that range so those things are not gonna change that much that's all good that's gonna be improvements at the same time as we heard in a previous talk we're gonna bring in a lot of new users online depending on the reports you read or projections it's billion couple of billion users they're gonna be coming online in markets which are still dominated by 2g actually by 2020 many people don't realize this but 2g is still the most prevalent network type in the world by 2020 we're projected to have some turndown of those networks within the United States but a lot of the other markets will still heavily rely on 2g will also have balloons and planes and other cool and crazy projects flying and enabling connectivity in those areas but guess what those are gonna be high latency networks they're gonna be like your friend in Australia or worse with 300 millisecond RTTs right so 2020 is gonna be much better you're gonna have really good performance in some areas but you're also gonna have a lot of users which are gonna be subject to the same conditions that we have today and that's kind of the performance inequality guy right or and maybe another way to describe it as the dynamic range of performance it's like we keep pushing the high-end performance higher and higher and higher more bandwidth closer servers lower latencies but fundamentally we're still stuck like we're making advancements on the low end but due to cost reasons due to other reasons those things are not going to change due to physics unfortunately so we need to figure out how we're gonna build great reliable experiences that span that range where you're able to get really high throughput and you can view a really awesome video and then ten minutes later you're in some other location in the tube and the connectivity is not so great because now you're sharing it with a hundred fifty other people or or more and at the same time our expectations continue to get more and more difficult right where we all we expect to be able to you know get that uber to be on my in the app instantaneously and the websites to be rich right and I think that's the challenge of many modern applications because you deliver that great experience once the user season they're like this is straight I want more of it and once they've seen it it cannot be unseen right because like well I had that experience and I want it now and it's up to us to figure out the kind of the architecture both at the network layer and at the application layer right and the protocols in between for how to enable that so let's talk about this the protest get a little bit more technical let's talk about the protocol so recently HTTP the protocol used for the web has been upgraded to a thing called HTTP to yep tell us about that what does it do so HTTP 2 addresses a lot of the I want to say simple but maybe not so simple a lot of technical limitations in the previous protocol which was designed for an era where we were fetching documents and the document consisted of mostly text and maybe an occasional side resource like an image today we don't we still deliver pages but we deliver applications mostly and applications are composed of many different resources this comes back to our kind of that resource graph that you need to fetch and the protocol is inefficient and how it fetches that so as a browser we have to fetch anywhere between 60 to 100 to several hundred resources to compose your average page that requires making a lot of connections making a lot of handshakes doing a lot of round trips that are unnecessary so HTTP tries to address that by just kind of coalescing more of the things into fewer number of connections with a little bit better compression and it's an incremental improvement like as a user you wouldn't even see the difference as a as a technical user you have to update your server and the client and hopefully things work better and it turns out that now that this technology has been rolling out for about a year so the standard went to RFC in May of last year I believe right and so it's been it's been over a year and depending on your application you'll see improvements anywhere from a couple of percentage points to 30 or 50 percent so on some Google properties we've seen significant improvements in performance but just switching that protocol and how do you go about something like that I mean that's fundamentally a bit of the Internet being changed right right how does that sort of roll out occur well I think we're speedy ours so yeah so HTTP 2 and then there's a speedy for those of you that follow that whole kind of arc of development so at Google we started a project called speedy back in 2007 2008 those kind of early incubation and started working on ideas for how we could improve HTTP after about three years with some experimental experience we actually put it into Chrome we built the implementation we built implementation on our Google servers on our GFE's and we were able to gather data from out in the wild it turns out that for a lot of the stuff due to the complexities of the real world and the networks it's very hard to build a model it's easy to build a model but most models are incorrect because they don't capture the wide variety of weird and interesting behaviors on the web so once we have that data we saw that there's significant improvements so we engaged IETF and kind of through a collaboration there over the next couple of years we arrived at HTTP 2 so to answer your question I guess it's that incremental release and I guess the next step there is actually quick which is so Jana I think is going to talk about that later today it's effectively HTTP over UDP and we're following the same path there incremental deployments trying to learn and trying to accelerate that rate of learning that was another thing I think has gone on when we've gone from the 56k world to where we are today which is that during that modem world it was quite common for websites to fail because your Internet connection didn't work or someone picked up the phone and tried to have a phone conversation the modem dropped and then we got Internet connections that actually work most of the time and we got used to connectivity being there and then we moved to mobile yeah and now there's a strange thing going on where websites on a desktop machine might work perfectly because you're got a connection which is very good and then you go on the mobile device and you're in a kind of hairy environment where the Internet can disappear so what are we how are we gonna do with that because I think that's another web performance so there's two problems there right one is the variability in performance which comes back so then the dynamic range so how do I deliver an application that is reliable in terms of the experience that can provide to the user like when I click that icon on my launcher I want regardless of what my connection type whether I'm offline or offline I want some feedback I don't want to sit there for a minute and then for you to show me the dinosaur page terrible experience right and also even if you're connected so in Chrome we track failed navigations and I think we're talking about this backstage those numbers are really really scary to me so when we look at the field navigation rate we see about 10% field navigations for users that are on 2g networks so one in 10 times they go to one in 10 times he doesn't work right they just get that they may wait for a period of time anywhere from 10 seconds to a minute and they'll get a page saying they'll get the dinosaur page which is terrible on 3g it gets a little bit better it's somewhere between 3 and 5% depending on what kind of which region you're in but even on 4g it's 1% right so 1 in 100 so that's just the reality of the network sometimes you're just offline right and first time I saw these numbers I was shocked and you may be thinking like oh man those Chrome guys they don't know what they're doing 10% failure rate but then actually if you dig into the statistics for the reliability of the different networks so open signal if you guys are familiar does some really interesting reports into reliability of networks and can doing studies in different geographies they have really interesting data that shows the way they measure it is they have an app on your phone so you can install as a consumer and periodically they just wake up and they just ping their own server to see like am I up what's the RTT and they find that on say in UK in particular on 2g the for Vodafone and I'm not picking on Vodafone this is just the example that pops into my mind the reliability rate for 2g is about 89% so that's 11% of time the device says it's connected it's not that it's offline it says it's connected to a network but it was unable to make a connection right so being offline is not an exception it's the rule being slow is not an exception it's the rule and you have to design your applications to kind of work with that now I think that's an interesting point about designing applications to work for that because it seems to me that we've got a bit of a missing piece here which is how do the software developers who build web applications actually build stuff to cope with this situation yeah yeah and we've had a couple of attempts at this the some of the early incarnations were like Google Gears back in 2006 2007 then we had application cache which was another project and now we're kind of doing the third take which is service workers so the idea there is to enable kind of new primitives in a browser that will allow you to take control over each request as it flows out of the server sorry out of the client and implement your own logic to say hey I'm making a request for this image but I'm offline how do you want to that so today that would just fail and you would get the dinosaur page right but there now now that you can intercept that you can actually say well let me reach into my cache which I also have control over pull out maybe a meaningful error page or pull out a previous version of the article and just give you that and notify you that hey you're offline but you know next time you go off online I will sync new data so you can provide a resilient experience even despite that network and where it starts to get really interesting is not only just the offline case but also kind of the the timing case of the the latency tails so say you want to provide a reliable response within 500 milliseconds but you just so happen to be on an overloaded network you can actually observe that then that the request has gone out and just start a timer and just say after 500 milliseconds I'm just gonna say I'll let it proceed but I'm gonna respond to the user and say like taking a while here's a thing that I have right now I'll update it later so now you as a user have a predictable experience which is something that's been missing it's a critical piece so it seems if we try and project ourselves to 2020 we're gonna have very fast networks in some places still have the speed of light we haven't managed to break the speed of light yes that's still gonna be there and perhaps the big gap is that we if we do something today perhaps we should move all the developers from Silicon Valley into the boonies somewhere but they have bad Internet and they'll come up with a programming solution for making these applications the other thing is that there is hope for Australia because it's actually drifting northwards at a few so it is actually getting closer right to two inches a year two inches a year but still you know if we wait long enough it'll end in like 10,000 years will evolve a couple of seconds good Internet all right well thank you so much for chatting I would love to open it up to questions from the audience about the web performance do we have a question yes there's a question right in the back there that's a great question I'm curious to hear your thoughts here as well so I think IPv6 will actually be a thing like for real this time we've been saying that for 20 years now but I think it's true because first of all actually in the United States you know in North America I should say most of the mobile traffic is already IP over IPv6 more than 50% as of this year which is really encouraging so it turns out that mobile networks really want IPv6 so that's the primary source where that growth is coming from so I think that's going to continue also if you look at the projections or at the growth rate for IPv6 just in terms of overall adoption so at Google we track this and we have a public dashboard over the last three years it has doubled every year which is to say it went from like 0.5% to 1% but at this point it's actually a 10% and if you just project that out I think in five years we'll be in a pretty interesting different place and that will enable a new class of applications which is nice I'm really hopeful and optimistic about the efforts with QUIC and UDP in particular so TCP is great is with this foundation of the Internet but it was also somewhat of an ossified protocol that is not able to change as rapidly as we want and I think many people argue that work with mobile networks that we need to adjust faster and in a more interesting ways better better and more interesting congestion control algorithms and other things and I think that's what QUIC is bringing to the table if you look at the last two years of our work on QUIC within Google we've been able to deploy like 20 or 30 versions iterations of the protocol in the meantime there has been zero versions of TCP released right so we're able to innovate a much faster pace because the entire network stack lives in the client we're not dependent on the operating system which is the ossified layer to actually rev the whole thing so the rate of learning will be very interesting and I think those will enable more interesting real-time applications video certainly and all the rest so my quick answer to that would be that I think that in five years time people using unencrypted protocols will be pariahs basically so but why what are you doing why are you using HTTP now or why are you using something encrypted I think that's the big change we see it now we see about a quarter of the requests that go to our sites are encrypted and we believe that you know in five years time that will flip and you'll be it'll be unusual to not encrypt things yeah security is one theme that we have not touched on but that's definitely a big big area of focus for everybody yeah is there another question yes there's one down here I guess it does maybe it does come into more obvious question about you know not not being able to bribe God as Dave Clark would say about you know being stuck with the latency we have what if you look at applications becoming more interactive and I'm I'm thinking of you know within this 200 millisecond 100 millisecond twitch just AR you know so do did at what point do you expect that there's actually a distribution or refactoring of applications that have to take place and we just we just go accept that we've got to move to start moving things to an edge or more distributed and infrastructure which is I think it's already happening it's it's already a thing for like if you look at any large organizations I can speak for for Google right we have lots of users in Australia it's effectively unacceptable for us to incur that roundtrip to like Asia or to North America for it every TCP request so we move data closer and we then replicated we move data into Australia or as close as we can and that's exactly the service that any CDN will offer so I think that's already a best practice I imagine that it will continue to become hopefully easier for many other smaller applications to deploy and cloud players doing a lot of great work in that space I could it used to be a very complicated thing now it's basically a signup form and a button hopefully in the future it'll be even easier so yeah yeah thanks so much for coming joining us this morning it's great to have you on stage easy and affordable a simple drag-and-drop interface allows you to easily upload your videos for streaming Cloudflare stream will automatically decide on the best video encoding format for your video files to be streamed on any device or browser when you're ready to share your videos click the link button and select copy a unique URL can now be shared or published in any web browser your videos are delivered across Cloudflare's expansive global network and stream to your viewers using the stream player stream provides embedded code for every video you can also customize the desired default playback behavior before embedding code to your page once you've copied the embed code simply add it to your page the stream player is now embedded in your page and your video is ready to be streamed that's it Cloudflare stream makes video streaming easy and affordable check out the pricing section to get started