DOUG STEVENSON: Hey, everybody.
Welcome to another episode of MeetFirebase.
[APPLAUSE]
We get to meet the Googlers that make Firebase happen.
My name is Doug Stevenson, and on the show with me
today is the famous Frank Van Puffelen.
[CHEERS]
Frank.
FRANK VAN PUFFELEN: Hey, Doug.
How are you?
DOUG STEVENSON: I'm good.
Thanks for joining me on the show.
FRANK VAN PUFFELEN: Thanks for having me.
DOUG STEVENSON: So what is your role with the Firebase team?
FRANK VAN PUFFELEN: Ooh.
That's always interesting.
I often say that I am a Firebase engineer at Google.
Officially, I'm a developer programs engineer,
which means that I have to write code, and libraries,
and things like that.
But unofficially, I do everything, essentially.
DOUG STEVENSON: Everything else.
FRANK VAN PUFFELEN: Yeah, so I go to events,
I enter a lot of questions on Stack Overflow,
and I also help organize certain events.
DOUG STEVENSON: You've been with the Firebase team
for quite some time now.
So tell me about that.
FRANK VAN PUFFELEN: Well, actually, I
started using Firebase five years ago
when it was in beta for the first time.
Then started answering some questions
on Stack Overflow about it.
And then some day, well, Andrew Lee, one of the founders
was commenting on my answer, and said, great answer Frank.
And it's like, yay.
DOUG STEVENSON: I got noticed.
FRANK VAN PUFFELEN: Yeah, right?
And then a few months later, my phone rang,
and James Tamplin was like, hey, we like what you're doing.
We think you should do more of that.
How do you feel about joining the team?
One thing led to another, and then I joined the team.
DOUG STEVENSON: It's an interesting way
to get on board.
FRANK VAN PUFFELEN: Yeah, and it shows that, actually, there
is also potential value in answering questions
beyond just helping the people that you're helping.
I mean, you could make a career out of this.
DOUG STEVENSON: Yeah, you certainly could.
You've mentioned that you love to help people out there.
I actually-- I love to do the same.
One of the places we go-- and you mentioned this earlier--
is Stack Overflow, right?
That's a great place to ask programming questions.
Both you and I do this, you probably more than myself.
FRANK VAN PUFFELEN: I've mostly been doing it longer, I think.
DOUG STEVENSON: You've been doing it longer.
Yeah, I've been doing this for about a couple of years now.
I just crossed 21,000 points.
FRANK VAN PUFFELEN: Nice.
DOUG STEVENSON: So that's not bad, right?
Not bad.
Well, but what are you at, now?
I mean, that's--
FRANK VAN PUFFELEN: Yes.
DOUG STEVENSON: My number, I think,
dwarfs in comparison to yours.
FRANK VAN PUFFELEN: I think I was on 164,000 this morning,
yeah.
DOUG STEVENSON: 164, OK.
FRANK VAN PUFFELEN: But I'm also one of those weird people where
I know my Stack Overflow ID.
I've memorized that one because I type it so often.
And I pretty much can tell you what--
when we were actually coming into the studio,
we were chatting about an answer on Stack Overflow, right?
DOUG STEVENSON: That's what we do.
FRANK VAN PUFFELEN: Yeah, no, it's
literally one of my favorite things
to do because you see all the diversity of developers
using Firebase.
And, right, they all--
we all go to Stack Overflow if we have a question.
Same for me.
Yeah, so that means that I also get to see everyone.
And I really like that.
DOUG STEVENSON: Yeah, you like it so much.
You have so many points.
Where does that put you in the all-time ranking
on Stack Overflow?
Because they do a lot.
So it's very-- I won't say competitive--
but there's a lot of incentive to do well, right?
And part of it is it's a leaderboard,
and you can see where everyone is on the week, month, quarter,
year, and all-time.
FRANK VAN PUFFELEN: I'm not sure where I am on the all-time,
but for the year, I am somewhere in the top 20 overall.
So this is worldwide, not just Firebase.
It's any question.
DOUG STEVENSON: Right.
And there's a lot of programming questions out there--
FRANK VAN PUFFELEN: Oh, yeah, for sure.
DOUG STEVENSON: --across all of computer science.
So it's kind of funny.
You said you feel like you're not
very good at answering questions, which is funny
because that's what you do really well.
So why do you feel like that?
What's going on in your mind that
makes you feel like you're not very good at it, from time
to time?
FRANK VAN PUFFELEN: I do, actually.
I think I'm pretty decent, which is
like a Dutch level of compliment--
quite high praise for a Dutchy-- but at answering
Firebase questions or technical questions, in general.
It's questions outside of technology where I'm normally,
like, oh, don't know.
Why would you care about that?
But I heard that you might have prepared
a few questions outside of technology,
so we'll see how I do on those.
DOUG STEVENSON: We'll see.
We'll see.
So if you feel like you're not very good at something,
how do you improve?
Because there's a certain amount of humility
in saying I'm not very good, but on the other side--
when I started answering questions on Stack Overflow,
I was OK at it.
And then I realized there's a way of phrasing things.
There's a way of constructing an answer that's better.
So in a very general sense, how do you
feel like you improve yourself?
FRANK VAN PUFFELEN: A lot of that is actually repetition.
So I've been doing this for Firebase about five years now,
I guess, on Stack Overflow.
And a lot of the problems that developers encounter
are still pretty much the same.
Dealing with asynchronous APIs will never change.
It will forever be a problem for people that are new to it.
There's not a lot we can fix about it in the product
because if we could, that's what we would do.
So what you actually see is that I am, essentially,
constantly improving my answer.
So the first few answers were probably not very good,
but then you find something where the developer actually
is sort of understanding what you're explaining.
And then you just keep optimizing over that.
DOUG STEVENSON: Now jumping out of tech a little bit,
on an earlier show, I spoke with Jon Burge
with the predictions team.
And I found out he's into retro games.
I'm into retro games, obviously.
I talk about that a lot.
You are, too, but in particular, you are a huge fan of pinball.
FRANK VAN PUFFELEN: I am, actually.
Yes.
DOUG STEVENSON: Well, tell me about that.
Why pinball?
FRANK VAN PUFFELEN: I have no idea.
I think it started when probably I was a kid, like, 7 or 8,
maybe.
Went on vacation to France with my parents, and then
found a pinball machine.
And just had my allowance and essentially would
throw it at the pinball machine every day.
And really learned to enjoy the combination of the mechanical
into electrical, and pure physics.
So it was slightly computerish, but not really.
And of course, that really changed through the decades.
Pinballs have evolved a lot.
And just growing along with those,
trying to understand how things work, but still having--
essentially constant fighting gravity of a pinball machine
that I really like.
DOUG STEVENSON: Yeah.
So you've been playing pinball for a long time,
but you've also been working with technology
for a long time.
So I'm curious to know, what was the first computer you ever
used to write a line of code?
FRANK VAN PUFFELEN: Ooh, that's a tricky one.
I'm looking on your shirt.
DOUG STEVENSON: Yeah, it could be one of these.
FRANK VAN PUFFELEN: Yeah, no, actually it is.
It is.
It's one of the--
DOUG STEVENSON: If you're looking at home,
there's a variety of old, classic home computers.
FRANK VAN PUFFELEN: It's likely one of the first two.
So I think I wrote my first code on the Commodore.
It might have been a VIC-20.
Otherwise, it was a 64.
And this was in the local mall.
I would go there on Saturdays and write code.
DOUG STEVENSON: Yeah, they had those.
Yeah, it used to be that-- and for those of you
who don't know this, back in the '80s,
home computers were treated sort of like regular merchandise,
and they'd be out for you to play.
And so you'd sit there and type in a program in the computer
right there where they're being sold.
FRANK VAN PUFFELEN: I think I might still
know some of the poke locations of a Commodore 64
to change colors and things like that.
The first one I owned was an Atari, an Atari 600XL.
I have fond memories of that.
I wasn't necessarily a real developer back then.
So I didn't--
DOUG STEVENSON: No, nobody was.
FRANK VAN PUFFELEN: No, so I was typing the games
from these magazines.
DOUG STEVENSON: From books and magazines,
yeah-- typing programs.
FRANK VAN PUFFELEN: Yeah, and then--
but I hardly made any changes, which is really a shame because
in hindsight, I wish.
Now, I recently started looking at,
are these books available online?
And I found one.
And I've-- on some of these long flights,
I've been trying to make BASIC interpreters for one of these.
It's surprisingly difficult. So I sort of
write this-- this happens in two-hour sprints that
happen every month or so.
So not a lot of progress, but it's really fun to do.
DOUG STEVENSON: So you're kind of making
in an emulator, or interpreter, for a BASIC program.
FRANK VAN PUFFELEN: You know what
my biggest problem has been?
Handling asynchronous inputs.
So we're back to--
DOUG STEVENSON: Yeah, we're back to BASIC--
always a thorn in the side of developers.
For me, it was the Apple II, I think--
FRANK VAN PUFFELEN: Ah, cool.
DOUG STEVENSON: --was the first one I used.
And then my neighbors gave me a--
what was it?
Texas Instruments TI99-4A.
FRANK VAN PUFFELEN: Nice.
DOUG STEVENSON: I think it had 4K of memory or something,
and the cartridge, and I saved my programs on cassette.
FRANK VAN PUFFELEN: It's interesting.
You really see the split here between European
and an American teenager, I guess.
Because--
DOUG STEVENSON: Yeah, but we had very similar experiences.
FRANK VAN PUFFELEN: Yeah, true.
Yeah, yeah.
DOUG STEVENSON: The programs on books and magazines was--
FRANK VAN PUFFELEN: Yeah, I loved that.
I loved that.
Yeah.
DOUG STEVENSON: --definitely something that I loved.
Yeah.
Things have changed a lot since then.
And we've gotten to the point where now a bunch of people
can all type code into different computers at the same time,
sharing data in a Firebase project,
all projected on a big screen.
Or as you like to say, live coding.
So tell me, how did that come to be, this whole idea that you
can do live coding on multiple platforms and make a talk,
like a session out of it?
FRANK VAN PUFFELEN: Ah, that's a good one.
So when I joined Firebase, right before that I
had been an engineer for 20 plus years,
and just working on codes.
Had done public speaking, but nothing big.
And then at Firebase, they told me
that I was going to be in developer relations,
and I needed to become this speaker.
And terrifying at first, so I started looking at,
what has everyone else been doing at Firebase?
And they all said, oh, we just live code a web app.
It's easy, and they love it.
And it's like, OK.
Let's see what they've been doing.
So I started doing that, and the first time
you're terrified because you have to really type something.
And it's just--
DOUG STEVENSON: Yeah.
And what if something goes wrong, right?
FRANK VAN PUFFELEN: Yeah, exactly.
DOUG STEVENSON: It's embarrassing.
FRANK VAN PUFFELEN: It turns out, actually,
it's actually one of the things that the developers in the room
actually love because it shows that it's not necessarily
as rehearsed as some other talks might be.
So I started doing that, and then I very much remember,
I was the first one in Firebase to then do an Android
version of that talk.
It was in Droidcon Boston.
And then writing a complete app in an hour, or something.
That's what you have.
And this is from File, New Project.
DOUG STEVENSON: Oh, really?
So you're starting with a clean and blank slate--
just the scaffolding of a new project.
FRANK VAN PUFFELEN: Yeah, and I love doing that.
What it turned out is that I was actually teaching people
more about Android development than about Firebase development
at some point.
DOUG STEVENSON: Well, that's helpful at an Android
conference.
FRANK VAN PUFFELEN: Exactly.
So still not wrong.
And from that, actually, then we got I/O last year,
2016, when we were launching the new and improved Firebase.
And we had proposed to do a live coding talk
with a group of Firebasers.
And then we were like, yeah, sitting in room
with Mike McDonald, who some of you might know, it's like, OK,
what are we going to do, right?
And it's like, well, it's I/O. We need to do one better.
So we're going to a live code multiple
apps for multiple platforms on stage.
And we weren't really sure what to do,
and then it's like, write multiple apps,
but, yeah, we're going to have a time problem.
And then we looked at each other,
and it's literally like, we're going
to write them at the same time.
So we essentially got up, walked out
of the room because we were done,
except that it takes a lot of work and a lot of practice
to get that parallel live coding working.
So that took a lot of effort.
Not necessary for the story crafting because, to be honest,
we had been doing these types of live coding demos
for years with Firebase, but for getting everything
aligned across the platforms.
There is a lot of work that goes into that,
and also getting all the speakers right,
to have the right pacing that you want.
So it's really-- never underestimate the work
that it takes, but I love seeing the results.
I was really proud because the Firebase Summit in Amsterdam
was one of the first times that I wasn't in the Zero
to App talk.
And I loved seeing what the team did there.
It was a really good talk.
They did a great job.
DOUG STEVENSON: Well, yeah, Kat Fang was on the show earlier,
and she said it was maybe one of her most viewed videos ever.
So something like, how many?
I don't know, millions of views, or something like that.
FRANK VAN PUFFELEN: Oh, the one from I/O last year, yes.
DOUG STEVENSON: From I/O '16, yeah.
FRANK VAN PUFFELEN: Oh, yeah.
That is, I think, is probably the most watched Firebase
video.
It was also probably the first time that a lot of people
saw this level of live coding.
And I think actually it's probably
a really good explanation of a few of the Firebase products
that we have.
So still highly recommend that you check it out.
DOUG STEVENSON: Yeah, yeah.
So definitely do that.
Go to YouTube.
We'll have a link in the description
below so you can get right to that.
So definitely check that out if you haven't already.
FRANK VAN PUFFELEN: Yeah, cool.
DOUG STEVENSON: I'd like to thank you
for being on the show, Frank.
FRANK VAN PUFFELEN: Sure.
DOUG STEVENSON: It was great chatting with you.
FRANK VAN PUFFELEN: Same here.
[APPLAUSE]
DOUG STEVENSON: And be sure to stay tuned, right here
to the Firebase channel on YouTube,
for more great video content.
We have more episodes of MeetFirebase
coming with people who do things like Frank
and do additional things.
So we have engineers coming.
We have other folks in dev rel.
So definitely stay tuned here.
Subscribe, if you haven't already,
to get notified of new content.
And I'll see you here next time.
Thanks for watching.
[APPLAUSE]
[CHEERS]
[MUSIC PLAYING]