[MUSIC PLAYING]
DOUG STEVENSON: Hey, everybody.
Welcome to "Meet Firebase," where
you can meet the Googlers that make Firebase happen.
My name is Doug Stevenson.
We've got a great show for you today.
Nalin Mittal is joining us on the show.
Thanks for being on the show, Nalin.
NALIN MITTAL: Thank you.
DOUG STEVENSON: Tell us, Nalin, what do you
do with the Firebase team?
NALIN MITTAL: So I lead App Quality
at Firebase, which includes Crash Reporting and Test Lab.
DOUG STEVENSON: OK, so it sounds like between Crash Reporting
and Test Lab, those are two things
that Firebase provides to help you maintain
a high quality in your app.
NALIN MITTAL: Yeah, that's right.
The idea is with Firebase Test Lab,
you're able to ensure the stability and quality
of your app before you release it by testing it
on a variety of devices.
And then with Crash Reporting, it's
an SDK that lets you monitor your app while it's
in production to make sure that no major issues are happening
to production users.
DOUG STEVENSON: OK.
I understand Firebase Crash Reporting
had a big announcement recently, but I'll
ask you about that later.
But first, I want to hear from you,
what do you do outside of work?
NALIN MITTAL: Most of my time is spent
with my four-year-old twin boys-- I'd say 90% of my time
until we go to bed.
But I do like getting involved in this organization called
The Last Mile, which we do at San Quentin Prison.
And the idea is to help inmates learn real life skills,
and we teach them entrepreneurship
especially focused around tech and technology
and the internet.
So that's something I've been doing for a few years.
The idea is to give them a lot of curriculum and coursework
as well as having them meet with people in the tech industry.
And eventually they actually write a business plan
and pitch it to venture capitalists
at a media event, which is really exciting for everyone.
DOUG STEVENSON: Cool.
Sounds like you're giving these inmates something
to do-- something to do with their lives
after they get out so they don't end up back
in the prison system later.
NALIN MITTAL: Yeah, that's right.
As we all know, the opportunities
are limited once you get out of prison.
And there is a perception that the person's not qualified,
and oftentimes, that's true.
But what we're trying to do is give them
skills that are applicable right away and very relevant, right,
since the world has moved on.
A lot of these guys have been in for 15, 20 years.
So the exciting thing is we've had,
I think, six or seven graduates that have come out
of the program, and some of them have gotten jobs at startups
and other ones are looking to do that.
Some of them are starting their own businesses.
So it seems like it's been fruitful so far,
and it's a really great program.
If you haven't heard of it, check it out.
DOUG STEVENSON: Yeah, it sounds like it's really
rewarding work.
NALIN MITTAL: Absolutely.
DOUG STEVENSON: So with all this work,
though, certainly you must feel like you need to get away.
I understand you told me before you
had an interesting experience at Running of the Bulls.
Now could you tell us what is that,
and what was your experience?
NALIN MITTAL: Yeah, sure.
Running of the Bulls is a race that
happens in Pamplona, Spain.
Basically, thousands of people run through the streets
of Pamplona.
At the beginning of the race, they
let seven wild bulls run through with the participants.
So you're kind of racing with other people and these bulls.
It's pretty dangerous, but it's absolutely thrilling.
The goal is to get from the start to the stadium
without getting hurt.
DOUG STEVENSON: Yeah, that's a good goal in life
is to get from point A to point B without getting hurt.
So what happened, though?
I mean, did you make it OK?
NALIN MITTAL: Yeah, everyone made it out OK.
There were other people that were maybe less fortunate,
but no serious injuries, though.
It was a fun time.
DOUG STEVENSON: Sounds like an exhilarating experience.
NALIN MITTAL: Yeah.
Yeah.
I don't recommend it, but it was good to do.
DOUG STEVENSON: Well, you know what was a good experience?
For those of us who went to the Firebase summit recently,
we met up with a bunch of developers
and had a bunch of news for them.
Firebase Crash Reporting had a big announcement there as well.
Could you tell us what's new in Firebase Crash Reporting?
NALIN MITTAL: Yeah, so we fully launched at the Berlin event,
which was really exciting.
We had done a previous beta launch at I/O. For our launch,
we introduced a bunch of new features.
So first thing is we reduced our latency.
So before, we had 20 minutes before you'd find out
you had a crash.
Now it's less than a minute, so it's pretty much real time.
And you also get alerted, so you don't
have to check the dashboard repeatedly.
You get email notifications when there are new crashes.
And then you have the ability to mark a crash as closed
if you fixed it.
And then if we see that again in the wild,
we'll give you a regression email
to let you know that this is happening again
for some reason.
And the thing that I'm most excited about
is that we're really trying to help developers
diagnose and reproduce issues, not just identify them, right?
So we've integrated deeply with Firebase Analytics.
So you're getting events from Firebase Analytics
in your crash logs.
So you can see what the user was doing prior to the crash.
So the whole idea is to give you more information and more
context so you can solve this problem instead
of spending all your time researching and diagnosing it
and reproducing it.
DOUG STEVENSON: Well, it sounds like some really good tools
for developers to help find and fix problems in their apps,
so I'm excited to see how people are making use of that.
Now speaking of crashes, tell me about the worst crash you ever
had to diagnose and track down.
NALIN MITTAL: Yeah.
It's kind of technical, but basically we
were parsing members in this app.
It was one of the first mobile apps I had made.
We built it for a US audience, but it
had international exposure pretty much from day one,
which we weren't expecting.
So in our number parsing that we were doing,
we thought all of the numbers would
be kind of US formatted numbers with decimal points.
And when we put it out there, we started
seeing that a lot-- we started hearing from a lot of our users
that the app was crashing, and we couldn't figure out why.
We finally realized it was from certain South American
countries, but we couldn't figure out what was going on.
Turns out that if the locale on your phone
is set to a non-US locale, or even specific locales
to South America, then this crash
would happen because I was using this library improperly.
We would test on a few devices in our dev shop,
and we would test on different versions, and we would go back.
We would try all these different permutations.
We spent a lot of time on figuring out
different behaviors that maybe a user took to get to that spot,
but we didn't realize that 100% of these crashes
were happening in certain locales.
And once we realized that and were
able to reproduce that issue on our own devices,
we were able to resolve it very quickly.
DOUG STEVENSON: So that's something that Firebase Crash
Reporting will tell you, is where
in the world or what locale the user's on.
So those kind of patterns should be easy or easier to track now.
NALIN MITTAL: Yeah, absolutely.
Yeah.
We tell you the geography of each crash,
and we're working on tools to even surface
these insights for you so you don't have to do any digging.
DOUG STEVENSON: Great.
Well, I hope that means that I don't
have to do any hard work now when it comes to triaging bug
reports, because that's one of the worst parts of engineering
is having to dig into those kinds of things.
NALIN MITTAL: Absolutely.
DOUG STEVENSON: Well, you know-- and everyone else at home
knows-- that crashes are kind of a pain.
We often have some memories about crashed computers
and the screens that we see.
And so I want to play a game with you
to see if you can identify some of those screens
from computers throughout history.
NALIN MITTAL: Yeah, sure.
Let's do it.
DOUG STEVENSON: All right.
Cool.
So I have a tablet here.
The way we're going to do it is I'll give you the tablet.
You can see the screens here.
At home, everyone will be able to see the screen
on their screen, so why don't you take a look there and tell
me what you think.
NALIN MITTAL: Yes, this is a classic blue screen of death.
So this is Windows.
I'm not sure which version, but maybe
Windows 95 or earlier than that.
DOUG STEVENSON: Yeah, it's classic blue screen of death.
That's right.
Let's do the next one.
NALIN MITTAL: This is interesting.
So a bunch of different languages.
I don't think I've ever seen this before.
This maybe like in the airplane, like in the--
DOUG STEVENSON: Oh, you mean like an airplane entertainment
console?
NALIN MITTAL: Yeah.
DOUG STEVENSON: Yeah, unfortunately it's not.
It's actually Mac OS X, more recent model.
NALIN MITTAL: Wow.
I've never seen that.
DOUG STEVENSON: I used to have those
all the time when I was doing Mac development
in the like mid-2000s.
NALIN MITTAL: Wow, that's crazy.
DOUG STEVENSON: The next one.
NALIN MITTAL: This one is a classic Mac screen-- or crash--
like an old Macintosh.
I've definitely seen that before.
DOUG STEVENSON: Yeah, old Mac.
The name for that icon is the Sad Mac,
so that's-- for obvious reasons, it's sad.
NALIN MITTAL: Very sad.
DOUG STEVENSON: OK, let's do the next one.
NALIN MITTAL: Ah, yes.
This is the Twitter Fail Whale.
I've seen this many times.
I've use Twitter since I think 10 years
or when it first started, so I remember seeing this
a lot back in the day.
It was a big deal.
DOUG STEVENSON: Yeah.
Yeah.
A lot of people talked about that.
Fortunately, we don't see that much anymore.
I'm happy for that.
NALIN MITTAL: Yeah, for sure.
DOUG STEVENSON: Let's do the next one.
NALIN MITTAL: This looks like a Mac from the branding.
I don't know exactly which device.
I've never seen it in iPhone.
I would say maybe even earlier than that,
like a Newton or something?
DOUG STEVENSON: Well, yeah, it actually is an iPhone.
So if you look at the shape of the device,
it has the iconic iPhone buttons.
Yeah, it's an iPhone.
NALIN MITTAL: Who knew?
DOUG STEVENSON: Let's do the next one.
NALIN MITTAL: This one is crazy.
It looks like there's an ASCII cow on it.
DOUG STEVENSON: There is a cow, yeah.
NALIN MITTAL: I have no idea what this is.
DOUG STEVENSON: So it turns out this is a Linux kernel
oops, which is like-- it's like a kernel panic,
except it's recoverable.
So the idea is if something went really wrong, but not too
wrong, you might see something like that.
NALIN MITTAL: Got it.
DOUG STEVENSON: That's an interesting variant
on the panic.
Let's do the next one.
NALIN MITTAL: All right.
Software failure.
Press left mouse button to continue.
Guru meditation.
I have no idea what this could be.
DOUG STEVENSON: Yeah, this is an interesting one.
Guru meditation, I don't know what that means,
but this is an Amiga crash.
So going way back into like the '80s,
that's what we're looking at here.
NALIN MITTAL: Got it.
DOUG STEVENSON: OK, let's do one more.
NALIN MITTAL: This looks like if you
have a bad cable to your like old CRT monitor
or something like that.
DOUG STEVENSON: Yeah, it does look like a graphics problem,
but this is actually a trick question.
This is a load screen for a Commodore 64 game.
NALIN MITTAL: It's crazy.
DOUG STEVENSON: Yeah, it's not a crash.
Turns out our tolerance for what's
acceptable to see on the screen has changed
since the '80s, so yeah.
That's a load screen, but I would
consider that to be a crash in my opinion.
NALIN MITTAL: Yeah, it does not look good.
DOUG STEVENSON: All right.
Let's take a look at your score up on the board there.
I think I stumped you with a lot of those.
Well, there's no pass or fail.
There's only entertainment here, so.
Looks good.
Thanks for playing, Nalin.
Thanks for being on the show.
And thank you for sharing about Last Mile and your experience
with Running with the Bulls.
NALIN MITTAL: Definitely.
DOUG STEVENSON: If you want to learn more about Firebase Crash
Reporting and Test Lab, be sure to click the links below.
That's all we have time for this week's Firebase.
I'm Doug Stevenson.
Thank you and see you next time.
[APPLAUSE]
[MUSIC PLAYING]