Claire Corlett

Fish Food, Fish Tanks, and More
Keynote – Chrome Dev Summit 2014 (Darin Fisher)

Keynote – Chrome Dev Summit 2014 (Darin Fisher)


I’m really, really happy to
be here with you guys today. It’s really exciting. We have a lot of fantastic
material for you, all focused on what
we’re doing with Chrome and what we can do to try
to make the web much better, especially on mobile. Let’s get right to it. So at I/O earlier
this year, we got to announce that we have 300
million Chrome on mobile users. This is fantastic. It actually represents a 10x
growth over a year earlier. I think Chrome is actually
relatively new on mobile. Today, I’m really, really
pleased to announce that we have 400 million
users of Chrome on mobile. This is fantastic. Just in the last
four months we’ve seen this kind of
spectacular growth. I think this is really, really
fantastic, not just because I’m working on Chrome
and want to see it be successful, but also what
it means for the mobile web. I think a lot of times
developers struggle with trying to reach users
through browsers that are old, not updating– and
there’s just a lot of disparity across
the mobile web, and across the mobile ecosystem
of the types of browsers that are out there. So as we get Chrome
out there more, developers can start to count
on a more consistent web platform, a more modern
web platform, one that’s auto updating, one that’s fast
and it’s getting improved. I think this is
fantastic for what it means to web
developers trying to reach users through browsers. Anyway, so in addition
to just trying to reach users through browsers,
a lot of web developers are looking at trying to reach
users through native apps, obviously, and using
web tech in native apps. And for a long time, they
struggled with the fact that the WebViews are old. And as of Lollipop,
I’m really, really pleased to announce
that we have support for auto updating WebView. This is fantastic. It means that for
the first time– [APPLAUSE] This was a long time
coming to be honest. I think it was
two I/Os ago where we were talking about how badly
we wanted to get this done. Getting it to a place where,
when we update Chrome, we can also update
WebView, is fantastic. I think you all
understand this, but just having a consistent
modern platform that you can take
advantage of, both when deploying over the web,
as well as through native apps, is huge. I think that a lot
of times people take for granted that they
have a modern web platform. That’s sort of
the mindset people are in when they’re
focused on desktop, but it hasn’t been
the case on mobile. So getting to a place where it
is, it’s a huge accomplishment. Now we have been very
busy over the past year. This is a set of
features that we’ve been working on that have
all land in the last year, and a whole lot
of different work that’s gone in to make Chrome
and the web platform better. We’ve been working with
other browser vendors to bring a lot of
new features– things that improve the capabilities
that you get access to, things that allow
you to take advantage of mobile, simple
things like Screen Orientation and
the ability to lock the orientation of the screen
to portrait or landscape. These things go a
long way to help you deliver a great
experience to the web. But also features that allow
you to have a much better time creating a good user experience,
a good performant user experience– simple things like
the will-change attribute that lets you inform the
engine that, hey, this is the kind of animation
I’ll be making, allows the engine to make a
lot of optimizations for you. But that’s not it. There’s a lot of
other things here. Features like Web Animations
that give developers a lot more control over the
animation system, rather than forcing you to
cobble together CSS strings to generate the kind
of animations you want. We’ve also put a lot
of work over many years to build up a set of features
that powers web components– things like Custom Elements,
HTML Imports, and Shadow DOM. And all these things are
now shipping natively in Chrome, which is just
fantastic because it means as you’re using
toolkits like Polymer, or just other toolkits that
leverage web components, you’re getting a
native implementation of those features. It’s too many things
to mention here. I’ll just say, in
addition to features, we’ve been very
focused on performance. Optimizing the engine,
improving performance reducing CPU load,
et cetera– these are things that are just
very important for developers who are trying to create
a great experience. One feature I really
want to call attention to is something that we actually
removed from the platform a little under year ago. It used to be that when the
user would tap on the browser, there would be a 300 millisecond
delay, while the browser was trying to figure out– did the
user mean to click on a link, or are they trying to
zoom, et cetera– removing this allowed
developers to have much more control over
animations to be able to provide much
smoother experiences. [APPLAUSE] Yes, this one deserves
a round of applause. It was actually a heroic
effort to get there, but it’s fantastic that we
can now take for granted that you don’t have it. So with all this great
work that’s happening, it seems like the
mobile web is awesome. Right? Well, well, you
commonly hear this meme. The stories are rolling
out all the time about, native apps killing
the mobile web, the demise of the
mobile web seems imminent– shouldn’t we all
just be writing native apps? Well I think the
story is actually a bit more nuanced than
that– a bit more interesting, if you dig down. And we think there’s actually a
lot of value to the mobile web, if you start to
explore it further. There were some studies
earlier in the year by Flurry that showed that
time spent on mobile is actually heavily biased
towards native apps, and very little
time spent on sites. But you have to sort of
explore this a little bit further to see what’s
really going on. In fact, the time
spent in native apps is dominated by activities
like gaming, entertainment, and social. And time spent with
other activities– well, it’s much smaller. So that’s only part
of the picture. And indeed, if you look
further at the time spent on the mobile, actually that
vast majority of time that was spent in native
apps, it’s really dominated by just
a few native apps. And as a developer
trying to reach users, writing a native app doesn’t
mean that suddenly you’re getting a lot more attention. In fact I’d argue
that, in many ways, it’s easier to get
attention if you’re deploying through the web. In fact, if you’re
specifically going after commercial activity,
and you talk to users, and you say, how do they use
their mobile devices when they’re interested in shopping,
or e-commerce type activities– users resoundingly talk
about how they use the web. And this kind of makes sense. You think about it–
how many store apps do you actually install? Well you might have installed,
say, the Amazon app, but actually when
you’re going shopping, you want to do a lot
of comparison shopping. You’re going to do
searches, and so on, and be looking for best prices,
or doing comparison shopping across different sites. And actually, the web
is really good at this. And indeed it’s actually
really good at helping users find interesting things. And as a developer
trying to reach users and– there’s just
a lot of power here. So what makes the web
ideal for success? There’s a lot of
things, and I want to get into that a
little bit further. I think one of the
biggest things– this is very obvious, really. It’s just that when you
put things on the web, there’s a lot of
tools that help you make your content, your
apps, discoverable. There’s a lot of great
tools– obviously, Search. You work at Google. Search engine is a
very powerful tool that can drive
traffic to websites. Ads can drive
traffic to websites, social media can drive
traffic to websites. A lot of this is powered by
URLs, and the indexability of content, and all
of the great tools that are available
for SEO, and so on. These things enable users
to easily find things. They can also
easily share things. And it’s not just your
application or the entry point to your website, but it’s deep
linking into your websites. Particular pieces of
content or particular states of applications– developers
have an easy time presenting these things as URLs, and
users have an easy time sharing them and
discovering them. This is actually a very powerful
feature of the web platform. It’s a fantastic way to
deploy stuff, and get it in front of users. When the web
platform, in addition to having that discoverability
and that reach, it’s actually a very,
very comforting to a user if they’re given a URL. Clicking on a URL feels
like a very safe action. It’s not scary to someone. Whereas installing a native
app, it’s a bit scary. It can be. You’re not sure– what
are you giving up? You’re accepting a
battery of permissions, and so you can
imagine a lot of users feel a little bit
unsure about that. But with the URL to a site,
it’s actually very safe. It feels safe. There’s a history of
browsers doing a good job protecting users. But all of this really
leads up to the big benefit of the web, which I think
is that it’s a fantastically low friction way for users
to connect with developers, for developers to get
user experiences in front of customers. The web is this
ephemeral platform. There’s no install prompts. It’s very easy for folks to
find things through search, through ads, through tweets,
and social media and such, and end up right
there on a site, on a page, where they
could buy something, or where they can
complete some transaction, or they can do something that
they’re interested in doing. So there’s a lot of upside
if we can get to a place where you can create great
experiences on the web because there’s all this
fantastic environment that can maximize what you
can get out of it. So that’s all very exciting. Like I said, there’s
a lot more that we need to do because in this
day and age people are very excited about native apps. The web itself has
been this platform that hasn’t worked
great on mobile. Everybody’s pretty
aware of these problems. There’s a variety of problems,
from performance problems, to hard to take advantage
of mobile devices and create great experiences, to frustrated
with buggy browsers and such. So there’s a lot
of work that has to be done to make the
environment better, but we’re getting there, and
there’s a lot that were doing. So I want to talk about
some of those things. But first off, this
summit’s mostly about Chrome and what the Chrome
team ‘s doing. Google Search, just
yesterday, rolled out a really exciting
feature, which is they are starting
to badge websites, in search results, that
are mobile friendly. This is all something that
you can explore further through Webmaster Tools. You can see the
validation tool that helps you understand if your
site is mobile-friendly, and so on. But this is all about
helping users understand that if they’re going to
follow a search result, they’re going to end up on
a site that actually works or should work on their
mobile device, that’s not going to flash. It’s not going to be
a desktop, or InSight. It’s not going to have
very small text, et cetera. I think this is a very useful
tool for both developers and users. And so I’m really
excited about it. On Chrome’s side,
our goal is really about helping developers
be more productive. And to do that, we have a long
history of, for example, making better developer tools. The DevTools has been
a fantastic project. You’re going to get
to hear a lot more about that later today. We have done a lot
of work to help you use DevTools on desktop
to explore how your site works on mobile devices,
which is very useful. And a lot of work’s gone
into helping you understand animation performance,
and so on. You can learn a lot more
about that later today. We’ve also been
doing a lot of work on toolkits, and things
like web fundamentals to help folks get started,
and orient themselves, and understand how to
optimize for mobile. I’m very excited about Polymer
as a great reference toolkit for how to build
fantastic websites that run well on mobile. You’ll hear more about
Polymer if you don’t already know about it, but
it’s our expression of what we think a
great framework can be. In addition to
productivity, we’re working a lot to make
the engines faster, and to help developers create
more performant websites. We know that this is the thing
that folks struggle with. The engines haven’t always
been tuned for mobile. They weren’t designed
for mobile originally. And so we’ve spent a
lot of time just working on core rendering performance. A lot of this is about
optimizing existing code pass, but moving workloads to GPUs. So we’re rolling out
GPU rasterization, which is really fantastic–
allows for web developers to take full advantage
of the more capable GPUs that you find on mobile devices,
and relieve the CPUs of all the burden, and in doing so,
reduce power consumption, and so on. So there’s a lot that
can be done there. Ryan’s going to talk
more about performance. A lot of work going
into V8, et cetera. But in addition to just
optimizing the engine, we also want to do feature
work that allows developers to have a lot more control over
the platform, and, in doing so, be able to have more
control over where the expensive things
happen, and when they happen and– for example, when it comes
to network resource loading, developers often
struggle with the fact that the browser sort of feels
like it’s out of your control. If there’s a network
error, suddenly the user sees a browser error page. It’s not a great experience. With a service
worker API that we’re going to talk a lot more
about, among other things, you actually do get the control
over the network fetching, and network resource
loading and caching. It allows for developers to
cope better with poor network conditions, and so
on, but also allows them to guarantee that when
your application starts up, it actually loads quickly
and reliably fast, assuming you’ve had a chance
to populate your caches, which is great. I’m very excited about
that because it really is one of these things
that often developers suffer when they’re thinking
about deploying over the web and over potentially
poor network connections that people often have
to deal with with mobile. So anyways, in addition
to all of that, we’re trying to help
developers provide a much more engaging
experience on mobile. And here’s where we’re doing
some really exciting things, exploring how to,
for example, allow you to integrate the web
experience deeper into Android and allow it to feel like a more
first class part of the system. And a while back, we rolled out
support for Add To Home Screen. But we’re working
on exploring how to elevate Add To Home Screen
so that users discover it more readily, under
the right conditions. I think this is a
very important thing. I think a lot of developers are
interested in the re engagement that happens when you have
a home screen placement. And this is
something that’s been difficult to achieve on the
web, unless users really knew what they were doing
and went looking for it. In Lollipop, we
rolled out support for exploding and
moving the tabs of the browser out
into the Recents view, so that web content
rendered through Chrome would actually appear as a
peer to native applications. This is huge because it
allows a web developer to feel like their experience is not
trapped within a browser, but rather it’s a first
class experience on Android. And though these screenshots
don’t really show it, the one on the right
emphasizes that you actually get a lot more control
over the theming. And in addition to
theming, you actually get a lot more control
over the iconography. One of our goals with
this whole user experience here was to try to put
Chrome in the background, and let the content
take the stage. It’s really important
that– we feel that users, they think deeply about
interacting with sites– not Chrome. It’s important for
them to understand that they’re working with
food.com– not Chrome. And so we’ve done a lot with
the system UI, and Chrome’s UI, to try to help put
the content first, help put the web
applications first. And so a lot of this
work that you see here is an effort towards that. In addition, there’s also
a lot of work going on with capabilities. And I already mentioned
service worker, and how it can help
solve for offline, and solve for poor
network connections. That’s just a
fundamental thing that’s been missing from the platform. We’ve had app cache, but it’s
so limited and hard to use. Service worker is
much easier to use. On the back of
service worker, we can do a lot of
fantastic things though. We can solve finally for
background processing. We can enable developers to
update their caches of content and code in the background, so
that when the user interacts with the site again,
they’re getting not just cached content, but they’re
getting fresh cached content. And you as a developer can
have control over that. This is something that’s
under development. It’s not done yet, but we’re
very excited about enabling background processing on mobile
for web content delivered through the browser. Push notifications is
something that we can also start to build on top
of the ServiceWorker. And it’s something that
we’re close to launching. And it’s very exciting to
enable developers to have access to push notifications
because it allows for, again, another form of re engagement. One of the things we’re doing
is being very thoughtful though about how we keep users
in control of the experience. I think that’s– as
I mentioned earlier, around safety and so on,
users want to feel like they’re in control
of the experience. We also want to figure out
how to allow developers have a lot more power in
terms of the experience they can present. And as a browser,
as a user agent, we’re actually in a
very good position to do something
innovative there. So today’s all about you
all connecting with us. We have a bunch of
Chrome developers here to talk about the
work they’re doing. As you saw, this talk was
very focused on mobile web, and a lot of the sessions
are all jam-packed, focused on mobile web. There’s so much to talk
about and not enough time. There’s plenty of
other material outside of this context
and people here who can help answer those questions. We will have booths, and
sessions, and panels tomorrow. And throughout the day, there’s
lots of opportunities for you to connect with developers–
really want to hear from you, hear what you care about. Because ultimately we want to
help make you all successful. So with that, I’m really
excited to see and learn what you guys can create
on top of the platform that we’re building. So thank you so much
for joining us today. It’s an exciting day. I think there’s so much
to learn and explore. Thank you. [APPLAUSE]

2 comments on “Keynote – Chrome Dev Summit 2014 (Darin Fisher)

  1. 2 days of #ChromeDevSummit videos now live

    We've added recordings of day 2 of the Chrome Dev Summit to our playlist. Just in time for your weekend viewing pleasure!

  2. in recent tabs for websites is really annoying as a android user.. if there were a sub group i think it would feel a lot less cluttered

Leave a Reply

Your email address will not be published. Required fields are marked *