[MUSIC PLAYING]
[APPLAUSE]
SUZIE: Hey dad, have you got a second?
TODD KERPELMAN: Oh hi ya, Suzie.
I always have time for my favorite daughter.
SUZIE: Aw.
[AUDIENCE GROANS]
TODD KERPELMAN: She'll be fine.
You were saying?
SUZIE: Well, Mark and I have been codeveloping my app
for a while now.
TODD KERPELMAN: You and Mark have spending
an awful lot of time together.
[AUDIENCE GOES WOO]
SUZIE: Well, yesterday he suggested we add the Core Plot
library to my app, and I'm just not sure we're ready for that
yet.
[AUDIENCE GROANS]
TODD KERPELMAN: Well, good for you.
Don't let any boys pressure you into incorporating frameworks
you're not ready for, no matter how long you've
been codeveloping.
SUZIE: Yes, sir.
I just-- I wish that there was some way
to try a library before installing it.
TODD KERPELMAN: Why, as a matter of fact, there is.
Have you heard about Pod Try?
SUZIE: Pod Try?
What's that?
TODD KERPELMAN: Pod Try is a low commitment
way of trying out any demo project associated
with a CocoaPod.
Just imagine.
[HARP]
If you run Pod Try on a third party library,
CocoaPods will go out to that library set of project files,
usually on GitHub, but not always,
and download them to a temporary directory on your computer.
Once there, it will scan them for anything
that looks like an Xcode project or workspace, preferably
in a directory named something like demo or example.
Now if it finds one, Pod Try will open that project in Xcode
so you can see how it works.
[HARP]
SUZIE: Oh.
So I could use that to try out Core Plot without adding it
to my app first?
TODD KERPELMAN: You betcha.
In fact, let's give Pod Try a try right now.
[LAUGHTER]
Bring on over that mechanized workstation.
So we know the name for our CocoaPod is Core Plot.
SUZIE: Yep.
And I remember the search trick that you showed Robbie.
TODD KERPELMAN: Aw, atta girl.
So all you need to do is type pod try core plot.
SUZIE: Oh, but wait.
I'm not in my Xcode project or anything.
Does it matter which structure I'm in?
TODD KERPELMAN: Nope.
CocoaPods will put this in a temporary directory
so you don't need to worry about it.
SUZIE: OK.
So I'm going ahead and type pod try core-plot.
TODD KERPELMAN: That's right.
Now you can see that CocoaPods is downloading the GitHub
directory and looking for any Xcode projects it finds.
If it finds more than one, it might ask you
which one to open.
But it looks like in our case, it only found one.
And a few moments later--
[AUDIENCE GASPS]
--Xcode starts up with our sample ready to go.
Now you go ahead and run it, make changes,
and fool around with the code just like any other project.
SUZIE: Golly, that's swell.
So Pod Try will work with all libraries?
TODD KERPELMAN: Well, not all.
Some developers, they don't know about Pod Try.
And their sample apps haven't been
tested to see if they work.
I've noticed sometimes I need to go
into these temporary directories and manually run pod update
to get everything working.
[LAUGHTER]
Some developers, they'll update their library,
and then they'll forget to update the sample
app that goes along with them.
Whoops.
[LAUGHTER]
And some libraries like the Google Sign
In library will require you to replace a couple of constants
to get everything working.
SUZIE: Oh, but does that mean I can
run Pod Try on any of the official Google CocoaPods,
and it will open a sample up?
TODD KERPELMAN: Yep.
Now that Google is making CocoaPods its primary way
of distributing libraries on iOS,
they're bundling all of their sample applications
in the same git repository as the library themselves.
So it's easy to Pod Try them.
They're also making these sample apps
part of their continuous integration test process.
So you'll be pretty confident that they will compile.
SUZIE: I wish I could say the same about Mark's code.
[LAUGHTER]
[SNORING]
TODD KERPELMAN: Oh hey Suzie.
So how did that Xcode project for out for you?
SUZIE: Well, thanks to Pod Try, I
was able to try out Core Plot.
But Mark and I decided it wasn't quite right for us right now.
TODD KERPELMAN: Well, you know, that's understand.
Integrating a third party library
is a serious step in your developer relationship,
and not one you should take lightly.
SUZIE: That's true.
Oh, and it reminds me.
I'm pregnant.
[LAUGHTER]
[MUSIC PLAYING]