[MUSIC PLAYING]
LAURENCE MORONEY: Welcome to "Coffee with a Googler."
Today, I'm going to be chatting with Jared Finder, who's
a software engineer on the Tango platform.
And if you're not familiar with it,
it's all about augmented reality.
And we're going to be really geeking out
over the amazing things you can do with AR and Tango.
Come check it out.
So Jared, you're a software engineer on the Tango platform
here at Google.
JARED FINDER: Yeah.
LAURENCE MORONEY: I keep hearing about Tango
and seeing cool demos, and I know
it's got something to do with augmented reality
and-- could you clarify it for us?
What is Tango?
JARED FINDER: So Tango is where we're
adding some extra technology to standard Android smartphones,
like this one.
This is the Lenovo's phone coming out later this year.
LAURENCE MORONEY: OK.
JARED FINDER: And we're allowing it to basically
have this 3D understanding of the world
so that you can place virtual objects that,
like, feel like they're part of the real world.
LAURENCE MORONEY: OK.
Now, what kind of technology are you adding to the phone?
It must be hardware as well as software, right?
JARED FINDER: Right.
So on the hardware, you have this extra little fisheye
lens and a depth camera.
And so combined, it's like kind of how humans work
to understand the world in 3D.
It gets to know where it is, and it knows the shape
of the world around it.
LAURENCE MORONEY: OK.
So the depth camera, is that like what
the sensors on video games used to be like,
where they bounce an infrared off a wall
and map the environment around you?
JARED FINDER: Yeah.
It sends out infrared light to figure out
how far away everything is.
And then the fisheye camera works all visually
to figure out how far you've moved,
and where you are in the world.
And so together, when you combine these,
you can place something on the table and, as you move around,
know how far you've moved around the table.
So it all renders and looks like it's just
part of the real world.
LAURENCE MORONEY: OK.
And now, there's a software element to this, as well,
in Tango, and I assume some kind of Tango SDK.
What's all that?
JARED FINDER: Right.
So our Tango SDK, that allows you
to basically plug into the existing
technology on Tango phones.
And so you can add that to any existing app.
It basically-- we have-- a lot of people are writing,
you know, 3D apps for the first time,
or they have an existing 3D app they want to port to Tango.
And so we integrate with, like, popular
3D engines like Unity, Unreal.
LAURENCE MORONEY: OK.
Oh, cool.
So like if I have assets already in something like Unity, then
I can reuse them in my Tango app.
I don't need to have yet another 3D modeling format.
JARED FINDER: Yeah.
It's really simple.
You just take our SDK, bring it into your existing project,
and then you would position the camera
based on what our SDK has.
And then it's like how far you want to roll with it, right?
Do you want to start having a special interaction
where you place things on tables,
you place things on the floor, where you add these extra 3D
objects that are virtual but they seem real,
all to the existing world?
LAURENCE MORONEY: That's pretty cool.
So that's kind of useful, not just for gaming,
but like architects surveying-- you know,
if you're buying a new house, you
can visualize what it would look like with furniture,
that type of thing?
JARED FINDER: Yeah, exactly.
We see this kind of being useful in terms of games, of course.
And I'm a big gamer.
But also for education and utility.
LAURENCE MORONEY: Cool.
JARED FINDER: One big thing I've seen that I didn't really
realize is, like, how big dinosaurs
are until I walked around one with a Tango device.
LAURENCE MORONEY: Oh, wow, cool.
How big are they?
JARED FINDER: It depends on the dinosaur.
Their tails are spectacularly long, though.
Like, a dinosaur that's, like, this tall, would be, like,
a super long tail.
LAURENCE MORONEY: So to balance, right?
JARED FINDER: I assume so.
I haven't been with one.
LAURENCE MORONEY: So like, you know that scene
in "Jurassic Park" when it comes down and takes the guy out
of the--
JARED FINDER: That hasn't happened to me yet.
LAURENCE MORONEY: You don't want that to happen in AR.
JARED FINDER: It could be a little scary.
LAURENCE MORONEY: Do you have any demos we could see?
JARED FINDER: Yeah.
So one thing that we've been working
on-- this is something we wrote internally--
is this measuring tool.
So it just figures out where different points
are in the 3D world.
And when you know where they are,
you can measure, like, how big this table is.
How big do you think it is?
LAURENCE MORONEY: How big?
About four feet?
3.5 feet?
I don't know.
I'm not very good at measuring things.
It's like one hand, two hand, three hand.
JARED FINDER: Right.
So let me actually start up this app here.
LAURENCE MORONEY: OK.
JARED FINDER: And so what I'm going to do,
I'm going to place a point right here at the end of the table.
LAURENCE MORONEY: You kind of place a point
here, that type of thing?
JARED FINDER: Yeah.
It's actually right here.
LAURENCE MORONEY: OK.
JARED FINDER: So now I'll place a point over at the far end.
And how big did you say it was?
LAURENCE MORONEY: Maybe 3.5, four feet.
JARED FINDER: Yeah, so it says here you
can see three feet, 10 inches.
LAURENCE MORONEY: Oh, nice.
Hey.
So-- oh, I see there's a line I point at-- 3'10".
JARED FINDER: Yeah.
So there should be a line from, like, right around here
to way over there.
LAURENCE MORONEY: Very cool.
I like it.
Nice.
JARED FINDER: So that's one thing
we see that's really cool.
What it's doing here is it's adding virtual objects
to the world.
So you noticed that there was one right around here.
There was one down there.
And they like-- as you move the device around, they lined up.
So even though they were fully virtual,
they looked like they were part of the real world.
LAURENCE MORONEY: Right.
And it was interesting how it was
able to calibrate the length in the real world,
or measure the length without any kind of calibration.
JARED FINDER: Right.
That was just because, as I moved it around,
it knew how far it had moved.
Like, another thing you can do with it is you
can add virtual objects to the world
so that you can know, like, if we wanted
to add an extra chair here--
LAURENCE MORONEY: Well yeah, it's
a little uncomfortable here.
Is there something I can put my feet up on?
JARED FINDER: Yeah.
Do we have room for it, is kind of the question.
So let's place this barstool right here.
And it's filled up.
And so now I'm going to position it just right on the floor.
And so you can see we've got a little virtual barstool right
here.
There, you can see.
LAURENCE MORONEY: Oh, neat.
JARED FINDER: You could actually move it around as you drag.
LAURENCE MORONEY: Yeah.
And as you gave the phone to me, it stayed in position.
That's pretty cool.
So I'm gonna pop my feet up on it.
I like.
Nice.
So to get a model like that one, all you had to do
was like-- you were using something
like Unity, the Unity engine?
JARED FINDER: Right.
So this was written in Unity, because it turns out writing
a 3D engine's a lot of work.
And so lots of people like to use existing 3D engines so
that they don't need to become experts in 3D rendering.
LAURENCE MORONEY: Right.
So now building something like this--
and you work on the actual platform,
and I believe you work on, like, integrating things like Unity
into the platform.
JARED FINDER: Yeah, yeah, yeah.
LAURENCE MORONEY: I'm sure you saw lots of interesting demos,
and probably lots of interesting things
went wrong along the way, like--
JARED FINDER: Yeah.
LAURENCE MORONEY: What's the funniest bug
you've ever encountered?
JARED FINDER: So the best time is
that like-- this is very intensive processing,
and so it turns out that a thing you don't think about,
I think, with phones normally-- I normally really don't think
about it, except for when I'm in developer mode--
is how the phone generates a lot of heat.
LAURENCE MORONEY: OK.
JARED FINDER: And so some bugs only come up
when the phone gets really hot, and not when it's really cold.
And those are a particular class of bug
that's kind of like when you have
multi-threading bugs that you end up having
to spend a lot of time on.
And so I had one bug that was like that.
And I was trying to identify that, yes, this was only
happening when the device is hot.
LAURENCE MORONEY: OK.
JARED FINDER: So we have ways to simulate the device being hot,
but we don't have a way to simulate the device being cold.
LAURENCE MORONEY: OK.
JARED FINDER: So I have to take my device,
and I put it in the fridge next to the water.
I was worried.
I had to walk away for five minutes
while it actually cooled down.
I was really worried someone was going
to come in and be like, wow.
LAURENCE MORONEY: Why is there a phone in the fridge?
JARED FINDER: Yeah, exactly, right?
They'd be like, why is there a phone in the fridge?
Did someone lose it here?
Let's take it and give it to lost and found.
And I was like-- and then I'd come back and not
be able to see my device.
But it all worked out fine.
And in fact, that was the bug.
The bug was, in fact, a hot/cold bug.
LAURENCE MORONEY: Interesting.
JARED FINDER: And so when it cooled down,
I was able to fix the part of the platform that
was having issues.
LAURENCE MORONEY: So what I'm learning from this
is I have to add a refrigerator to my suite of debugging tools.
JARED FINDER: No, no, no.
Our whole goal is that we worry about that
so that, as an app developer, that stuff just works.
LAURENCE MORONEY: OK.
Now actually, as app developers go,
I know there's an upcoming summit for the Google Developer
Experts, the GDEs, right, for Tango.
JARED FINDER: Yeah.
LAURENCE MORONEY: So you guys are putting together
a lot of information.
What kind of stuff is going to be available?
JARED FINDER: Well, so the whole thing.
AR is really new, right?
And so we're really looking to find who want to be
or who already is being the AR experts.
And so we want to find, like, AR experts throughout the world
where we are just looking for people to make
lots of cool apps.
And so we're looking for GDE who are going to be AR experts,
and we can educate them in how you use Tango,
how to teach other people about Tango, how
to make apps using Tango.
LAURENCE MORONEY: OK.
So big effort coming from Google to start training the trainers,
effectively.
JARED FINDER: Exactly.
LAURENCE MORONEY: So if I'm not lucky enough
to be able to go to this summit, how
can I get started with Tango?
JARED FINDER: So right now, we already have,
like, a really good developer website.
You can just find it on Google.
Search for Developers Tango.
It's developers.google.com/tango,
but I just search for it.
We also have a really good Stack Overflow community,
where you can ask questions, and then other people
who are interested Tango developers help you out.
And then our samples.
We have published a whole bunch of open source samples
that you can use to build up and build an existing app off of.
And so we're trying to hit different use cases.
You know, people who are interested in measuring,
we have a simple measuring sample.
People who want to add virtual objects,
we have an add virtual objects sample.
LAURENCE MORONEY: Nice.
So those two things that you just showed me,
are they available as samples?
JARED FINDER: So there are samples that you could see--
LAURENCE MORONEY: But do--
JARED FINDER: --to build off of these things.
Yeah.
LAURENCE MORONEY: OK, cool.
JARED FINDER: I'm really proud actually
of the adding virtual objects sample,
because I spent a bunch of time.
It was like my first sample.
LAURENCE MORONEY: Aw.
JARED FINDER: You always like, you know,
the first thing that you add.
And I spent a bunch of time making it.
LAURENCE MORONEY: Cool.
Cool.
So if I want to get started, or if anybody wants to get
started, developers.google.com/tango?
JARED FINDER: Yeah.
LAURENCE MORONEY: So all the docs are there, the samples,
those kind of things are there, as well as a great Stack
Overflow community.
JARED FINDER: Right.
We have links to everything else from there.
So from there, you can get to our samples,
you can download our SDK.
And yeah, go to the Stack Overflow community.
LAURENCE MORONEY: Cool.
Well, thank you so much, Jared.
This has been awesome.
It's been a lot of fun.
I'm inspired to go out and start building and--
JARED FINDER: Yeah, I hope you get a Tango device.
LAURENCE MORONEY: --hope that I'll get a phone, yeah.
So--
JARED FINDER: It's just-- other than
that, it's just a normal Android smartphone.
So it's like, do you want your smartphone to do AR?
Get a Tango phone.
LAURENCE MORONEY: Sounds good.
Thank you so much.
JARED FINDER: Yeah.
It was great.
LAURENCE MORONEY: So if you want to learn more
about Tango or augmented reality,
take a look at the links in the description below.
And if you've any questions for me or for Jared, as always,
just post them.
And don't forget to hit that Subscribe button.
Thank you.