Behind the Scenes of the Android Developers Backstage Podcast

Behind the Scenes of the Android Developers Backstage Podcast


CHET HAASE: Hi, and
welcome to this video, and welcome to the Android
Developers Backstage Studio. We just recorded a podcast,
and we’re pretending like we’re still recording. I’m Chet. ROMAIN GUY: I’m Romain. TOR NORBYE: I’m Tor. We might recycle this
video year after year. ROMAIN GUY: Also, we were
[INAUDIBLE] in Ukraine, so [INAUDIBLE] CHET HAASE: Welcome to 2019. Welcome to 2020. So why do we do these things? Why do we do the podcast? Why do we go to Conferences ROMAIN GUY: Mostly because if
you put a mic in front of us we’ll start talking. CHET HAASE: No, no,
that’s the real reason. I want the supposed reason. ROMAIN GUY: All right. We like to share our knowledge. TOR NORBYE: We’d like
to propagate learnings. CHET HAASE: Not
the pompous reason. ROMAIN GUY: I’m sorry,
that’s me being French. I’m just– CHET HAASE: So I like
to– well, I actually like going to conferences
anyway because of the wordings. I do enjoy going to talks,
especially in topics that I don’t know
yet, and just trying to absorb a little tiny bit. Maybe I’ll get there eventually. ROMAIN GUY: I should mention
that you going to talk just turns– it’s basically you for one
hour going, I don’t get it. CHET HAASE: I did that recently
to a couple of [INAUDIBLE].. So that didn’t work, but
maybe next time I see it, I’ll understand at
least up to slide two instead of just slide one. I also enjoy going
and giving talks, and I know you all do as well. Because to me, it’s fun
to try to understand deeply a part of
the system and then to try to pass on
that knowledge, to share that knowledge,
to other developers so that they can
also understand– ROMAIN GUY: Really? I thought it was the
love of the fear. We get on stage and we’re
still super nervous. And it’s like, what
if they realize that we’re idiots who don’t
know what they’re talking about. CHET HAASE: As long as
you talk fast enough no one has the time
to think that thought. ROMAIN GUY: That’s true. TOR NORBYE: It’s
also a chance for us to fix all the mistakes
we didn’t design. So if the API isn’t
good, at least we can show you how to
use it post-release. CHET HAASE: True. That’s a little depressing. [INTERPOSING VOICES] That’s true. Any system, even very
well-designed systems, is really complicated. The stuff that developers have
to do is very complicated. And the vast array of things
that they need to understand, just at the API level, is huge. So I think having examples
of how to use that stuff. And more importantly, to the
kinds of talks that we do, like the trash talk
that we gave recently. Understanding things at a
deeper level than the API. It’s not just the
methods that you call, but how does the
system actually work. ROMAIN GUY: That’s
actually a good point because, our
developers, their job is to write apps, not to
spend hours and hours trying to understand the platform. And that’s where we can help. I mean, just the trash
talk we just gave. That was a lot of work for us
to gather all the information. And we have access to the
team who worked on the garbage collector, and we can’t expect
everyone to be able to do that. Well, that wouldn’t scale,
because there’s not many people in the [INAUDIBLE] team. But yeah, they have
better things to do. CHET HAASE: It’s true. It’s also why we do the podcast. So we have these episodes– so
a typical episode on the podcast is not talking to the person
who designed the paging API and say, how does the API work? Instead, it is
what’s the motivation for designing this thing? What’s the problem that
you’re trying to solve? How does it work underneath? How are developers supposed
to understand this system? If you want the APIs
you can go to the docs. We are not here to
regurgitate documentation. ROMAIN GUY: Yeah,
and something– [INAUDIBLE],, we’ve been
giving talks together for 12 or 13 years. We’re still doing
it for some reason. But we’ve always done that. We like to explain how
things work underneath, because I think our experience
as developers was that it was making us more effective. Because like you said,
no API is perfect. So you’re going to run into
bugs or behaviors that you don’t understand or
performance issues, and if you have some
understanding of how it works underneath,
you’ll get a better idea of what you do, how
to work around it, how to maybe fix it,
or rewrite your own. Whatever it is that you need
to do to get your job done. TOR NORBYE: I discover when
I’m preparing for talks, I find all the bugs in
the tools that I wouldn’t find through normal usage. So when you’re trying
to put together a comprehensive demo
you go, oh, here’s a problem I didn’t see
when I was developing this. CHET HAASE: Yup. And then you can fix it. Make the software better. And then– [INTERPOSING VOICES] –the fix was always there. ROMAIN GUY: And we’ve
seen Tor fix them on stage, which is great. Above and beyond. TOR NORBYE: It’s never too late. CHET HAASE: Tor is the demo god. So here’s an example of
understanding the system. So we believe deeply
that the best profiling tool, if you really want to know
what’s going on, is Systrace. If you look at the
Systrace output and you have no idea
how the system works, you will not understand
it, guaranteed. Because it’s going to show
really important information about elements in the
system, like SurfaceFlinger, like the frequency of the CPU. Other threads and
other processes in the system that
have dependencies on what your process is
doing and vise versa. So if you don’t actually know
what’s going on in the system, then you’re not
going to understand important information
about the performance for your application. So learning more about
the overall system can make you a better
developer for your specific use case of your application. ROMAIN GUY: And Systrace
is interesting because I think also something we try
to do in our talks is take– we’re talking about an
API function [INAUDIBLE] the garbage collector
like we just did, but we try to tie it to
other things in the system. So we use Systrace as an
example in our talk on garbage collection to show all those
things can be used together to get a better understanding
about the APIs in the system and make your
application better. They’re not little islands
that are standalone. CHET HAASE: That is the hope. So now we have to
go figure out what the other parts of the
system are that we should learn and describe as well. Or just keep having
guests on the podcast. That’s the easy part. We don’t have to understand. We just have the experts. TOR NORBYE: Well, that’s the
secret [INAUDIBLE] the podcast. It’s a chance for us to ask
the questions without looking dumb for asking. CHET HAASE: Oh, I look dumb. TOR NORBYE: On the theory that– CHET HAASE: I don’t
think I avoid that one. TOR NORBYE: Let’s say that I– ROMAIN GUY: That’s what
you do [INAUDIBLE].. TOR NORBYE: Let’s say I didn’t
understand how this works. Can you explain to our
listeners how this works? It’s a good trick. ROMAIN GUY: Or we could
keep our scam going and keep giving the same
talks over and over again with no graphics rendering. CHET HAASE: We could. We don’t really
get that benefit. I do see a lot of
talks being given again and again and again. And I think, how
can they do that? Because I kind feel like if
I’ve given a talk once and then it was recorded, as
in the GDG DevFest– there’s the plug
for the whole video. TOR NORBYE: Callback. ROMAIN GUY: If
it’s for the first. I’m so unclear about that. CHET HAASE: Then people
have already seen it. But I think the
reality is, whenever you ask people in a room if you
happen to give that talk again, a very small
minority of people– it is out there,
people can access it. I do hope that they watch it. They certainly do for
things like I/O videos. But in general, people
probably got on with their job and haven’t taken– TOR NORBYE: If you
see an I/O video at this point from two years ago
you figure, ah, that’s stale. CHET HAASE: Right. AUDIENCE: You’re not
going to bother watching– ROMAIN GUY: There’s also– I think a lot of
people do what I do, which is there’s all
those amazing talks that seem really interesting
that I want to watch. And I put them in a Watch
Later playlist on YouTube, and then I never watch it there. CHET HAASE: Right. Watch later
eventually, or never. So yeah, hopefully
you’re watching videos. TOR NORBYE: Don’t
make that mistake. Watch this today. CHET HAASE: Hopefully
you’re learning things. TOR NORBYE: Set aside
time this weekend. CHET HAASE: Yes. And next weekend and
the weekend after that. Also, if it’s on YouTube, 2x. ROMAIN GUY: Yes, that’s
super [INAUDIBLE].. TOR NORBYE: Plus, if you have
all-access or YouTube Red– is that what it’s called– ROMAIN GUY: You
can download them. TOR NORBYE: You can offline. It’s really useful
for commuting. CHET HAASE: Used
to be YouTube Red. TOR NORBYE: Unless
you’re the driver. In that case, don’t do it. CHET HAASE: Yes. They’re probably going to use
cat videos in interstitial instead of this one. TOR NORBYE: How long
was this supposed to be? CHET HAASE: I don’t know. I think we’re done. TOR NORBYE: You know, we keep
talking until someone stops us, just an FYI. ROMAIN GUY: Like I said, if
there’s a mic, [INAUDIBLE] [MUSIC PLAYING]

1 thought on “Behind the Scenes of the Android Developers Backstage Podcast

Leave a Reply

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