JAKE ARCHIBALD: Hello.
This is Google I/O. And this is "Coffee with a Googler."
I am sitting on a chair.
But that doesn't really matter.
Because on the sofa next to me is Alex Komoroske.
ALEX KOMOROSKE: Yep.
JAKE ARCHIBALD: Are you having a good time?
Enjoying--
ALEX KOMOROSKE: I'm having an amazing time.
There's all kinds of-- every year it's different.
And so they have all these interesting swing sets
and stuff.
It's pretty cool.
JAKE ARCHIBALD: So what's your job title then?
ALEX KOMOROSKE: I am the Product Management Lead
on Chrome's web platform team.
JAKE ARCHIBALD: That's quite long.
So I would shorten that.
I kind of think of you as a sort of Web Hero or Champion
of the Web.
ALEX KOMOROSKE: Oh, OK.
Sure.
I like that.
That sounds good.
Let's go with that.
JAKE ARCHIBALD: So why the web?
What is the web to you?
ALEX KOMOROSKE: So I-- I think like a lot of people--
have had this long, deep connection with the web.
So I shared yesterday this embarrassing story
about the Real Ultimate Power and actually
how we uploaded a picture of our crew team posing for that.
But for me, it actually really became
sort of an important moral issue for me in college,
when I read this book, "The Wealth of Networks,"
by Yochai Benkler, who's a professor at Yale or something.
And it totally sold me on the power
for society of these open systems or whatever.
But all of this, I guess, is really abstract.
And so I think one of the reasons
I love the web is that it makes it really easy for you
to reach a lot of people with your stuff,
and get your ideas out there.
JAKE ARCHIBALD: Yeah.
And part of it for me as well, I guess,
is that, and the openness of it.
One of the things that really got me into the web
was View Source.
I was able to go and see, wow.
This is a thing on the web-- View Source.
Wow.
That's how it's being put together.
ALEX KOMOROSKE: Yeah.
And it's great for tinkerers.
Because you don't need to get anyone's permission.
You don't need to buy anything.
You can just use a text editor that comes onto your computer,
and get into it that way.
That's totally how I started.
That's how I bet a lot of us started on it.
JAKE ARCHIBALD: Yeah.
I know we have a bit of a back and forth or banter
with the Android guys.
And the Hello World for Android comes in at like 800k.
I think they've got it down to whereas Hello World on the web
is Hello World, right?
It's just a text bubble with that.
Upload that somewhere and off you go.
ALEX KOMOROSKE: Yeah.
JAKE ARCHIBALD: So you gave a talk yesterday morning
on the next generation of the mobile web.
ALEX KOMOROSKE: That's right.
JAKE ARCHIBALD: And I remember Web 2.0 from a few years ago.
It was a kind of marketing thing with no substance.
ALEX KOMOROSKE: So actually, I've
found that for those kinds of things, the terms, when
they're really successfu-- some things are just always hot air.
Right?
They start as hot air.
They end as hot air.
But some things that are actually really something
meaningful then become so meaningful
that everyone who doesn't understand them
starts using those words.
So like AJAX--
JAKE ARCHIBALD: Oh my god, yes.
ALEX KOMOROSKE: AJAX was totally a thing.
Right?
It totally meant something very specific.
And then all these CEOs and marketing people said,
oh yeah, AJAX.
JAKE ARCHIBALD: Can we make it AJAX?
ALEX KOMOROSKE: Like, cool web things.
And so it lost its meaning.
And meanwhile, we're sitting here like, that's not AJAX.
What does that mean?
That's silly.
JAKE ARCHIBALD: Yes it's asynchronous.
Yes, it's JavaScript.
We can go with that.
What is it?
I think it's not XML.
It's very rarely XML.
And it all sort of fell down from there.
It just came to mean anything vaguely asynchronous.
ALEX KOMOROSKE: But to me, Web 2.0 is the same way.
Yeah, it's a buzzword.
It totally has become a buzz word.
But the fact of the matter is there's
a number of amazingly successful companies
that got their start during that time.
And so now, we look back.
And we're like, oh, yeah, Web 2.0, whatever.
But it actually was-- all of these really successful
companies that we totally take for granted today
totally got their start because of the web.
JAKE ARCHIBALD: Yeah.
And because companies are asking for, can we make this, uh,
the second web rather than the first web?
It's like, oh, yeah.
Yeah.
So what you essentially mean there is you
want it to be a bit faster and a bit simpler.
And that was a good excuse, I think, for us as developers
to sort of crowbar some of what we wanted.
ALEX KOMOROSKE: Absolutely.
Because I think with the earlier web,
everyone had this, like, oh, what?
Static sites-- things are slow.
You click.
It takes a while to load.
And there really wasn't any reason at that point,
because techniques like AJAX and XMLHttpRequest
allowed you to build these immersive things.
And so actually, a new label really
helped developers go with it and find that.
And the same way, I think, is what we're at now.
People say, oh my gosh.
Look, this native app loads so much faster.
It's like, well, look at the web's version!
They just took this huge 25 megs required to download it.
It's got 13 different third party scripts, many of which
are calculating the same stuff with synchronous layouts
on every scroll event.
Of course that's not fast.
JAKE ARCHIBALD: So how's the next generation of the web
different?
ALEX KOMOROSKE: I think it's people really learning
how to use some of these new technologies,
and how to build things that feel at home on mobile.
So using the [INAUDIBLE] framework
that we talked about, to help understand
when you have good performance, and when
you should be optimizing, and when you add an extra script
to your site.
And you go, no.
You know what?
That made my site load too slow or scroll too slowly.
I'm not to include it.
It's not worth it.
JAKE ARCHIBALD: That's one of the things
I'm hearing sort of becoming more and more popular.
And it's music to my ears.
It's the idea of having a performance budget
as part of your design process.
And that's a big part of [INAUDIBLE].
ALEX KOMOROSKE: It truly is.
Because if you wait until the end
and try to make it highly performant, it's too late.
So what you really want to do is build something
fast from the beginning.
And as you layer in things, make sure you don't ever
regress your performance.
That's one of the reasons that we're
looking forward to doing things in DevTools, to make it easier.
So right now, when you open up DevTools,
you're like, overwhelmed.
Right?
And there's so much there.
And that's why we're looking into tools that
will make it much more-- hey.
We looked at your page.
Your reaction time is pretty good.
Load time could be better.
Animation speed-- terrible.
You were missing.
You were always janking.
This third party script right here
is doing way too much work on every scroll event.
Take it out.
And that would make it much easier for you to go, oh, OK.
Take it out.
JAKE ARCHIBALD: Yeah, because this is the thing.
The web is fast by default. Right?
If you have a blank page-- pretty fast.
It's all regression.
ALEX KOMOROSKE: Exactly.
And I think also, by the way, everyone goes, well,
native apps flow much faster.
Well, again, well-made native apps definitely
can load very quickly.
Well-made web apps can as well.
But remember, you're comparing the first visit to a website--
you're downloading all of the images and resources
to display this on the screen-- versus a thing
where, when you installed the native app,
it did take a while to download.
In fact, it probably took a minute or so to download.
It's just that you did it at install time.
JAKE ARCHIBALD: Yeah.
Many megabytes.
And if you're on 3G, it's normally
like, ah, I'm going to have to download this later.
ALEX KOMOROSKE: Right.
And it gets past that 10-second mark.
So you say, yeah, I'll install this.
You know what, I'm going to go over and play some solitaire
or something.
JAKE ARCHIBALD: I'm data roaming at the moment.
And I'm locked down to 3G.
So I'm completely aware of that right now.
So it's not just about the improvements
in the next generation web.
We're getting new features, as well, right?
ALEX KOMOROSKE: Absolutely.
So things-- one of the ones we're most excited about
is push notifications.
So on mobile in particular, increasingly
we're moving from this world where
it's driven by the grid of apps and into more things that
happen in context.
So actually, just before we started this,
I got a notification on my watch about some breaking news
that happened from [INAUDIBLE].
And I was able to interject it in conversation, because I just
glanced at it on my watch.
That actually came from our website, which is really cool.
JAKE ARCHIBALD: But even though it's on your watch--
and we don't run Chrome on the watches.
But it's--
ALEX KOMOROSKE: Yeah.
So Chrome running on my Android device got the notification.
And then it's just a normal system notification.
So it showed up on my watch.
JAKE ARCHIBALD: That's brilliant.
So if I visit-- I get sent a link by someone.
I'll go to that website.
And one of the things I like about the web
is I don't have to think, ooh.
Do I trust this website before clicking the link?
But to be able to do notifications and things,
there's code running in the background.
So what kind of protection-- is there
a break in the security of the web here?
ALEX KOMOROSKE: That is a really critical point.
And everyone goes, ah, you should just copy native apps.
Native apps do some things extremely well.
The web-- one of its biggest and most important strengths
is how easy it is for people to navigate
to a diverse collection of stuff so easily.
So if you are afraid to tap links,
that would be a total failure.
Right?
Because that's the benefit of the web.
In fact, yesterday we shared that on average,
Chrome for Android users visit 100 distinct domains a month
on average, which is crazy.
JAKE ARCHIBALD: Which is more than most people have apps.
ALEX KOMOROSKE: Oh, way over.
And it's because it's so easy for you
to dive into these things.
So that's incredibly important for us to maintain.
So the way that it works is you visit a site.
And what we encourage developers to do
is, in context, explain to the users
why they might want push notifications.
So say for example you visit "The Guardian."
You've read multiple articles on a given topic.
And they say, hey, at the end, you like this topic.
Would you like to be notified when there's
more articles on this topic?
Well, yes.
Yes I would.
You tap that on.
And then of course, Chrome verifies.
Hey, "Guardian" would love to send you notifications.
Just to make sure that you knew what you were doing.
And at that point, if you say yes,
they'll allow them to register for notifications.
But there's an important bit to this.
Then say you register.
And it says, this sounds good.
You register.
And they send you a notification every minute.
We also make it very easy.
In each notification we show, there's a prominent site
settings button.
You tap that.
It's just a couple more taps to turn off
notifications for that domain.
So we make it very easy for you to revoke that permission
if you decide that that site wasn't using it
in a respectful way.
JAKE ARCHIBALD: That's excellent, as well.
Because we've been building a few test
apps with this technology.
And just because there's just a button that sends a push
message to someone else, I've sort of woken up in the morning
with like 100 of these.
And it's just so good that it's like, right.
Actually, I'm done with this.
We've had our fun.
Yeah.
So back to safety, you're able to just revoke
those permissions.
And you're back to it just being like any other website.
ALEX KOMOROSKE: Right.
And again, I think that's what's so
important about this feature.
It's everyone goes, yeah.
You've got push notifications in apps.
But remember, websites-- you visit so many of them.
It's so easy to stumble across other things.
And instead of having this all or nothing-- do
you want to fully commit to this thing?
Give it space on your home screen?
Give it all these powerful permissions?
Nah.
I just want push notifications.
You know, I check into this airline.
I don't fly them very often.
I don't want their app necessarily.
I don't fly them that often.
But it says, do you want to be notified if your gate changes?
Why, yes.
Yes I would.
JAKE ARCHIBALD: Yes.
Because exactly that case.
It's not something that you visit every day.
But that notification is so important to you.
ALEX KOMOROSKE: Exactly.
It's critical.
And so I think we're combining this amazing reach,
this no-commitment for the web, and allowing you
as a user to sort of escalate, on your own terms,
as you feel comfortable.
You pick and choose which aspects of the experience
you want.
JAKE ARCHIBALD: So the whole push messaging thing
is one of the features that's from native, right?
When I think of the apps on my home screen,
the native apps, the reason they-- well, previously
to now-- couldn't have been done on the web
is because of push notifications.
ALEX KOMOROSKE: That's a big one.
JAKE ARCHIBALD: As the web, are we just copying native?
Are we always going to be behind and just picking and choosing
their innovations?
ALEX KOMOROSKE: I don't think that would
be a good way for us to go.
And so, yes.
We look at the features, the things
that people are relying on on these devices.
And we figure out a way to bring it responsibly to the web.
But at every point, we're trying to marry these capabilities
with the power of the web-- this reach.
And so for example, background sync
is a functionality that native apps often have.
They can sort of wake up in the background,
refreshen their resources.
Why don't we just bring this to the web?
Well, it's actually really hard.
So imagine that you visit a site every day
on your personal computer.
It's an embarrassing celebrity gossip site
that you don't want to admit to anybody that you visit.
You go often.
You never would visit that at work,
because you're supposed to be working.
Right?
So you visit it.
And then we say, OK, cool.
You visit this pretty often.
Let's let you background sync that.
Well, now you go to your work network.
And it syncs in the background.
And your boss goes, Jake, what are you doing?
Why are you wasting time on the company network?
So that's just-- we have to think very carefully
about these things, to make sure that users have
the right expectations about what's happening,
so the right things can happen, and they don't inadvertently
waste the battery or leak personal information,
or what have you.
JAKE ARCHIBALD: And it made me really happy in the keynote
to hear that Android's permissioning model--
that they're changing to what you mentioned before,
this kind of just-in-time contextual permissioning model.
So I've kind of thought that's a case where, hey.
They've kind of copied the success of the web, which
I thought was great.
ALEX KOMOROSKE: I think there's a lot
of great properties of apps and the way the web works.
And I think it's great for them to be inspired by one another
to try to figure out how to bring
these lessons from the other realm into the other,
and just make it better for everybody.
JAKE ARCHIBALD: Yeah.
I think it's great to see the web progressing and getting
all of these new features, but still
staying true to the benefits of the web.
ALEX KOMOROSKE: Right, right.
JAKE ARCHIBALD: Mr. Alex Komoroske,
talking about the next generation mobile web.
Thank you very much for watching.