LAURENCE MORONEY: Welcome to the Googleplex.
This is an incredible place with lots of great stuff being
worked on every single day.
Before I worked here, I always wondered
what it'd be like to come to the Googleplex,
meet up with a Googler, and have coffee with them.
And just chat about what they do, how they do it,
and why they do it.
And today we're going to do exactly that.
LAURENCE MORONEY: Welcome to Coffee with a Googler.
I'm Laurence Moroney and I'm here in New York City
to meet with Roman Nurik.
And Roman Nurik is one of our material design gurus
here at Google.
So material design, tell me what's it all about.
ROMAN NURIK: Oh, Laurence.
What is material design?
It's kind of hard to explain.
There's actually a video with a bunch of the original designers
that created material design and they
get asked the same question and they
don't know how to answer it.
It is a complex kind of thing.
There's a lot of things going on.
I guess is the most basic level, it's a design language.
It's a design system.
It covers visual interaction and motion design.
I feel like most design systems, design languages,
are treated as just visual languages.
Like here are the colors you should use, and so on.
But material is much more than that.
It really kind of covers the model,
the underlying physical model, of the UI.
So it basically tries to establish
this physical environment within which your apps should live.
On a phone, on a tablet, on a computer,
basically any sort of screen.
And then it basically establishes
this physical environment and a set
of basic rules and principles.
And I like to think of it along these kind of four basic axes,
or four basic principles.
And that's tangible surfaces.
Work on the material metaphor.
We can talk about what material is at some point.
Also bold graphic design.
This idea that we should take some of the best design ideas
from the print world and see how they can help us make really
great apps on digital devices.
And the third is meaningful motion.
Basically how all these things, how these surfaces,
and the ink on that surface, the graphic design stuff,
how that all moves in a consistent way to help
communicate what's going on.
And the fourth thing, which is to me one of the most important
things, is adaptive design.
Which is how can we take all these first three things
and make sure that they work consistently
and coherently across different devices, phones and tablets,
and everything else.
LAURENCE MORONEY: Now you have a video, right,
of some really good examples of material design being used.
So should we roll that?
ROMAN NURIK: Let's roll it.
[MUSIC PLAYING]
LAURENCE MORONEY: So some pretty excellent examples there,
but it's like, "How does somebody reach that level?"
And for someone like me, I'm a developer
and my design skills are nonexistent.
So if I want to become somebody who
can build apps with those kind of design,
how do I get started?
How do I learn this stuff?
ROMAN NURIK: That's a great question.
I think first of all, I just want to, I guess,
recognize some of those apps they're doing amazing jobs.
And they have large teams, some of them
actually have very small teams.
Some of those apps are created by one person.
So you can absolutely reach that level of quality
from these amazing showcase apps regardless of your team size.
But I'd say for the developers and designers
out there that are just getting started,
there are a lot of great resources out there.
There's a great Udacity course that me, Nick Butcher, also
from Google team here, and James Williams from Udacity
put together.
And that's available at udacity.com/google.
And there's also a bunch of amazing resources
on design.google.com which will tell you
about how to come to Android if you're
doing iOS stuff, for example.
Or how to get started understanding
what material design is.
Obviously the entire material design guidelines are there.
So I'd say that's the first thing the Udacity
course is probably the best first step in getting started.
But there's a whole lot of resources out there
and we link to others from the Udacity course.
LAURENCE MORONEY: And Udacity courses,
if you're not familiar with them,
they're very Socratic in how they teach.
It's short videos and then challenging
you to do something.
And then a short video and then getting you to do something.
And it's a good way to someone can incrementally
learn rather than be thrown into a huge design doc
or something like that.
ROMAN NURIK: Yeah it's definitely--
there's a very clear progression.
We specifically designed that course
so that you can kind of start with some of the basics.
The most elementary basic things about a screen,
like what is a pixel, what is a density independent pixel.
And then you ramp all the way up to how
do I make everything work on phones, tablets, and so on.
LAURENCE MORONEY: And I have to assume that design course is
well designed.
ROMAN NURIK: We have some very nice color
choices in our slides or our tablet drawings, so hopefully.
LAURENCE MORONEY: So back to material design again.
Why material?
ROMAN NURIK: So material goes back to that first principle.
So this idea of tangible surfaces.
This idea that everything on your screen and your device
exists on a surface.
We like to think of them as pieces of paper.
So basically you can think of basically a sheet of material
or the word material representing
one of those pieces of paper.
And the reason we don't just call it
paper is because it actually is a lot more than just paper.
In the real world paper, once you rip it up
you can't really just put it back together.
And paper can't go from being a circle to a square
to a rectangle.
And so we like to think of our digital pieces of material,
or sheets of material, as kind of a smarter paper.
Still a constrained paper, you can just do anything.
It can't just do all sorts of crazy things,
but it is a physical thing that exists inside
of this kind of environment, this kind
of like faux environment.
But it is something that has a lot of thought put into it.
And so the word material to me really
means, the sheets of paper that everything in this world
exists on.
But for me is the main thing to think about,
the reason that motion is so important in material design
is that motion should always have meaning.
Try not to just do it like a flip of a button,
or like a double rotation, or something just
to kind of draw attention.
Every time something moves it attracts our attention
and so it needs to be really thoughtful
and really carefully planned out.
And so in material, we use motion just enough motion
to convey the change in some object's state
or try to get a little bit of attention.
But just enough motion not too little, not too much.
LAURENCE MORONEY: I understand Android Studio has
some templates to allow developers
to at least get started with building
material design into apps.
ROMAN NURIK: Absolutely.
So one of my philosophies for a long time has been,
we can write about a material design,
we can write about a thing.
We can make suggestions about that thing.
We can try to teach people about the thing.
But one of the best ways to get the thing into people's hands,
in this case material design, is to actually just build it
into the tools.
Just make sure that as a developer that's just getting
started, even just on Android, if I just
go to File, New Project or new app
I should be able to get the latest and greatest.
And so in Android Studio, now we're
actually seeing new templates for material design.
So you could do file new project and then your default activity
templates are going to come with material design in them.
So it's going to use the material theme.
It's going to use some of the latest support
libraries for material design, so things like the Android
Design Support Library, things like AppCompat,
So you're just gonna get a lot of great stuff for free right
off the bat.
LAURENCE MORONEY: So for someone like me,
I'm a coder not a designer.
But I could use Android Studio, get the effectively
the scaffolding done for me in these templates.
And then learn from something like the Udacity course.
ROMAN NURIK: Exactly.
I definitely suggest, even before you do the Udacity
course, file new project.
Just look around the code.
See what you get.
I think that's a great way to get started.
I always valued as a kid growing up
learning programming and stuff I always valued experimentation.
So definitely experiment with that.
But as soon as if you hit an obstacle or something,
obviously take a look at the guide and the reference,
and all that.
But the Udacity course is a great way to say,
"You know what, let me just kind of see what Google thinks
is the right way to kind of approach understanding
this system."
LAURENCE MORONEY: Awesome.
Well thanks, Roman.
This has been a whole lot of fun and I've learned more about
material design in the last five minutes than I'd had in a year
before so thank you so much .
ROMAN NURIK: I can always talk about this stuff.
LAURENCE MORONEY: They told me that about you.
This is my favorite thing to talk about.
ROMAN NURIK: It's been awesome, Laurence.
Thanks.
LAURENCE MORONEY: I'm going to check out that Udacity course
and I recommend that you do so too.
And if you're an Android developer
take a look at those templates.
If you have any questions for me about this, or if you have
any questions for Roman about material design,
or other aspects of building for material design,
just please drop us a line in the comments below.
Thank you for watching this episode of Coffee
with a Googler.
For more great episodes of Coffee with a Googler
and for more great videos on the developer topics,
please tune to the Google Developers channel on YouTube.
Thank you.
[MUSIC PLAYING]