Tip:
Highlight text to annotate it
X
>>Reto: Welcome to The App Clinic at the brand new time of 10:30 AM, Mountain View time.
>>Ian: Absolutely.
>>Reto: My name's Reto Meier.
>>Ian: And I'm still asleep.
[Reto laughs]
But if I were awake, I would be Ian Ni-Lewis.
>>Reto: Excellent. And today we're gonna take a look at photography and camera apps in The
App Clinic. We've got a good
range of apps to look at. In fact, these are them. We've got EyeEm, PicsArt, Glimmr and
Camera Zoom FX.
>>Ian: I've really been looking forward to these, Reto, 'cause I know we're both photographers,
or I should say you're a
photographer and I own a camera.
[Reto laughs]
>>Reto: I think it's probably fair to say I also own a camera. Actually, our erstwhile
engineer, Mr. Daniel Pham, is
probably--I think it's fair to say--a photographer.
>>Ian: That's quite true. He takes all the pictures for our promotional videos.
>>Reto: That's true. And in fact, I was so confident in his ability that the photos that
we're gonna look at, I actually
sent him around this morning with our demo device to take some photos of stuff so we
would have some decent examples to
show people.
>>Ian: Excellent. And just to be clear, our demo device today is a Galaxy Nexus, right?
>>Reto: It is, indeed. Yes.
>>Ian: Alright.
>>Dan: I don't wanna disappoint you guys, but I really just took photos of the studio.
So, maybe the viewers will have a
good time looking at some behind the scenes photos of how messy it really is in here.
>>Reto: Alright. Well, I assume that they're gonna be highly artistic and well-filtered
photos of our studio. So, I guess
we should kick off.
>>Ian: Alright. Let's do it.
>>Reto: So, as per usual, we're gonna go through each of the apps, give them a two to five
minute overview before having
a look at what we think the key is to making a really great camera and photography app,
and some links to some developer
resources that should help you to be able to take your app to that next level. So let's
start off with EyeEm. And this is
a team that has actually worked with some of our developer advocates over in London,
I think. Rich Hyndman or Hyndman, or
however we have decided to say his name today has been working with these guys and giving
them some advice. So, let's
take a look and see how it looks.
>>Ian: Absolutely. By the way, I noticed the QR codes are back. Check that out.
>>Reto: Indeed.
>>Ian: Someone always complains when we don't have the QR codes.
>>Reto: This is true.
>>Ian: Getting used to it now.
>>Reto: Yeah. I've noticed that our Chroma Key is slightly off as well. So, we don't
have quite the background that we should
there, but--.
>>Ian: Oh, is that what happened? I thought maybe you just chose to--
>>Reto: To leave it off?
>>Ian: get rid of the--.
>>Reto: No.
>>Ian: 'Cause Roman was, you know?
>>Reto: That's true. But Roman is a trendsetter. And I don't think I'm quite up to that level.
>>Ian: That's true. We are always following Roman. In fact, all I did--. So, I did the
intro video for today.
>>Reto: That was awesome by the way.
>>Ian: Thank you. It's all Roman. All Roman's artwork.
[Reto laughs]
>>Reto: Excellent. So, if we can switch to the phone shot, we'll take a look at--. I
can see it now. There you go.
>>Ian: Yeah.
>>Reto: So this is, this is Em. So, we've, as you can see, folks, we have removed the
backwards facing camera and we're
doing HDMI. Ooh, Chroma Key is almost right. No. Not gonna work.
>>Dan: Alright, guys. I'm trying.
>>Reto: That's alright.
>>Ian: It's alright. It's beautiful.
>>Reto: We'll let you continue to do that. So, but what you've got up here is EyeEm.
So what it is, is basically what
you'd expect. It's an app which lets you take photographs. It lets you apply filters to
them. And it has a community for
sharing those photos with your friends, I think particularly on Twitter and Facebook.
It's got the links for that
directly. So you can see here, your front page is basically what you would expect. It's
a rolling list view of all of the
photos that your friends have taken. And one of the things which they've done quite well
here is they've got these tabs,
these tab labels that you can see here.
>>Ian: Yeah.
>>Reto: And so, as people are tagging them, you can go, "Oh, actually I'd be interested
to see more photos from Sam
Benedetto del Tronto." You click that and it will take you to a bunch of other things--show
you on a map where it's
at and all the other photos by him.
>>Ian: Oh, that's very cool, yeah.
>>Reto: I quite like that. So, this passes a big test of mine, which is "can you get
lost in the app?" Are you gonna
spend a lot of time going, "Oh, cool. I wanna see more of those sorts of photos from those
sorts of people." One of the
really key features of this app, which I really wanted to highlight, is they've done a really
good job on the UI of the
actual picture display. You can see here they've got this heterogeneous list view, or grid
view I suppose it is.
>>Ian: Mm-hmm.
>>Reto: And you can see here, we've got different sized images all coming together to create
something which is quite
compelling to look at. And again, you can click through to each of these.
>>Ian: Right. Now this isn't a particularly well-accelerated list view, though. It feels
a little janky.
>>Reto: It's a little janky, yeah. Absolutely.
>>Ian: I'll say that's one thing. So, Dan Galpin's actually been working for about a
year on some new techniques for
doing faster list view rendering for photos. And hopefully one of these days, he'll actually
get that released.
>>Reto: That's right. Yeah. This is a nice shot. This is the Googleplex. Although, it
says Googleplex 46. It's not. It's
Googleplex 44.
>>Ian: Right. And in fact, we are in the room just above the honeycomb.
>>Reto: That's right. Just here. We're in here. So you can wave to us. If you're here
at the right time, we would love to
have people holding signs outside the window.
>>Ian: Yeah.
>>Reto: That would be cool.
>>Ian: We're on the second floor, so that would be insanely cool if they were right
outside the window.
>>Reto: What? You think our fans don't own ladders? Do you think they don't have the
dedication it takes?
>>Ian: I assume they own jetpacks.
>>Reto: Do you think that we don't have fans? Hmm. It could be a problem. Anyway.
>>Ian: So, I'll tell you the first thing that strikes me about this app is this button down
here. It looks like maybe
that's how I'm gonna take a picture.
>>Reto: It is.
>>Ian: OK. And you can see, I think if you're on a different phone, maybe a Galaxy S2 or
something, you would think this
is a pretty cool design. Once you get onto one of these no-button phones, you realize
this is actually kind of a bad
idea.
>>Reto: It's very close, very, very close to your 'home' button.
>>Ian: Yeah. It's very close to the 'home' button. It's very similar to the action that
you're gonna use to bring up
Google Now. There's a lot of things that you can screw up with the camera button here.
And that's, as we've mentioned
before, that's one of the reasons that we discourage tabs on the bottom because you
can very easily get mixed up with
that bottom row of buttons.
>>Reto: Yeah, absolutely.
>>Ian: So. And, of course, they do also have a 'menu' button down here, which is--.
>>Reto: And this is the confusing thing because they have something which looks a lot like
an action bar which has a
'menu' button. And if you click that, you do get an overflow menu. And so they've done
this thing where you've still got
the 'menu' button and that brings up the drop down.
>>Ian: I wonder if they're using something like Action Bar Sherlock and then they're
not setting the API level high
enough. Because we actually don't document this correctly. It's changed since the Docs
were released. You can't absolutely guarantee that that thing will go away until your API
level is 15.
>>Reto: Yeah, right.
>>Ian: And we had originally said all that.
>>Reto: Yeah. So, make sure it's up to it. I thought 14, but let's make it 15 and just
be safe.
>>Ian: Mm-hmm.
>>Reto: So, that's one thing. You can get rid of that really easily 'cause it'll come
back for devices which don't have,
which do have hard 'menu' button.
>>Ian: OK.
>>Reto: So the other call-out that I wanted to mention here is that they have implemented
the Draw Pattern. And I'm pretty
sure they're aware that this isn't quite the right Draw Pattern, but I wanted to put it
out there for other people who
may be watching.
>>Ian: Yeah.
>>Reto: So, this is following that prototype G+ model where the action bar all shifts across
and you can see that here.
So, everything's moved across. The right model is actually the way YouTube does it, which
is that your action bar is
consistent. So all of the--oops--all the stuff here along your action bar, this should stay
here no matter what. And
rather than having a draw icon, you would have your application icon or logo with an
up affordance. So then, clicking
that will then leave everything here as it is and then just have this side part here
slide out. So in the same way, but
still having the action bar along the top. And I think, so that's the right way to do
it. And that's all listed in the
design patterns on Android design.
>>Ian: Yeah. And again, it's not that these guys got it wrong. It's that there wasn't
a design pattern. Now there is.
>>Reto: [chuckles] If they followed an example, which turns out we decide it wasn't quite
the right example.
>>Ian: Alright. So, I'll tell you this is driving me crazy 'cause I'll tell you. So,
we have two options. You can scoot
over or we can move the camera.
>>Reto: I can scoot.
>>Ian: OK. Wow. Reto does not want to move the camera I think.
>>Reto: Leave the camera alone, Ian.
>>Ian: Yeah, exactly. I fixed it last week and now it's back up and not fixed again.
>>Dan: Hey, guys. Please don't touch my stuff.
>>Ian: Alrighty.
[Reto laughs]
>>Reto: So otherwise, things here work as you'd expect. You have the ability to 'like'.
A nice little animation comes up
there. You can add comments. They've got a pretty custom UI here with their own custom
buttons, but it's consistent
throughout. There's a color scheming. There's a design ethos here, which I think works.
It passes the--. Is it different?
Yeah. Does it look good? Yes. Let's try the share here.
>>Ian: What I probably would've liked to see, what--?
>>Reto: Standard share intent.
>>Ian: Yeah. Probably would've liked to see the actual 'share' button.
>>Reto: That's true.
>>Ian: That's something that I think people are getting used to. And as we use that more,
it becomes a consistent way to
say "I want to share something that's agnostic to services or what's hot this week." I think
we've said it before. If
this phone had been designed five years ago, everybody would have MySpace buttons.
>>Reto: Absolutely. [chuckles]
>>Ian: And we'd all feel like fools, wouldn't we? The other thing is, what is flag?
>>Reto: I think for inappropriate things.
>>Ian: Oh, I see. Gotcha. OK. Flag it for nudity, yeah.
>>Reto: Exactly.
>>Ian: There is a naked Android right there. Yeah, and I love this, the animation that
you got to work that I can't.
>>Reto: This is the problem when you have touch targets which are less than 48 pixels.
People have trouble hitting them.
>>Ian: Small-fingered Reto wins again.
>>Reto: Boom.
>>Ian: So, the only thing that I miss is I feel like I'd like to see that carried out
everywhere.
>>Reto: Sure.
>>Ian: It's always so sad when you see a beautiful user interface and it's been lovingly crafted
and then you get to the
point where like, the world ends and everything stops and you realize they ran out of time
and it's just a normal Android
system dialog. And it's not just Android that does this. I've got plenty of apps on my PC
that do this, but I think that
especially for an app like this it's all about beauty. It's worth taking the extra time to
make sure that the entire
interface follows whatever design theme you've chosen, whether that's the stock Android design
or something completely
different.
>>Reto: Alright. So, let's have a quick look at the photo-taking functionality before moving
on. So we'll start using the
camera 'cause otherwise it starts to get a little bit confusing. Oh, yeah it does work.
Nice.
>>Ian: Oh, wow. That's awesome.
[pause]
>>Reto: Boom.
>>Ian: Yep.
>>Reto: That's a winner. That's your new--.
>>Ian: That's my new album cover.
>>Reto: Absolutely. I guess that's a tick.
>>Ian: No, it's just a mole.
[Reto laughs]
>>Reto: And so we can go through here and apply all of the usual hipster filters. Let's
see if we can make you even more
jaundiced 'cause I think that's kind of awesome. There we go.
>>Ian: Yeah.
>>Reto: That's a win. So, what you'd expect except that it stopped there. So, that's a
bug. Let's report that to the guys
so that they--.
>>Ian: That could be any number of things.
>>Reto: Yeah, absolutely.
>>Ian: What build are you running on this?
>>Reto: Whatever the latest public release is.
>>Ian: The stock retail?
>>Reto: Yeah.
>>Ian: Yeah. Alright.
>>Reto: So, let's move on. So, that's EyeEm.
>>Ian: Awesome.
>>Reto: A really popular app. Got a lot of great comments on the moderator link for that
one. So, we will be returning to
this later on when we look at the prescriptions for a great app. But definitely a good start.
>>Ian: Let's take a look at PicsArts.
>>Reto: Let's. Loading PicsArt. Alright. Let's open that up. So, right off the bat, we get
the 'follow us on Twitter.'
This doesn't come up every time the activity launches, but it comes up often enough to
be a pain, particularly 'cause all
you have there is a 'follow' button. And you can hit back to cancel it, but we're kind
of anti-dialogs to begin with.
>>Ian: Right.
>>Reto: And we're anti forcing people to do things to help verify your own brand. "Go
rate me in the Store five stars,"
that sort of thing. And "Follow us on Twitter?" By all means have a Twitter account which
people can follow for news, but
trying to force them to do so? It's overly attached girlfriend being. It's like, "Follow
me." No. This isn't cool. Like,
people will find it. Make it easy for them to do it, but you don't need quite that much
validation.
>>Ian: Yeah, actually, yeah. It is a little desperate. OK, so they've got this nice like,
what do you call this? It's
like a city UI or some sort of urban UI.
>>Reto: I guess, yeah. Suburban area UI, something like that.
>>Ian: Yeah. So, it's an interesting pattern. I probably would have maybe taken out some
of these.
>>Reto: It makes it kind of busy. There's a lot going on there.
>>Ian: Yeah.
>>Reto: It reminds me a little of--. It's a shop. That's interesting.
>>Ian: But in general, really nice.
>>Reto: Yeah.
>>Ian: I mean, the colors are nice and bright.
>>Reto: It's got an appealing look.
>>Ian: Yeah. OK. So, what can you do with PicsArt?
>>Reto: What can you do? So, let's have a flick through. So basically, it's, no data?
That's just nice. So, basically
it's a combination of a few different kinds of camera apps. So you can take your photos
and apply hipster filters.
[Ian sneezes]
>>Ian: Excuse me.
>>Reto: Which we'll do. Once again, let's try and get--.
>>Ian: Let's get Dan. Yeah.
[pause]
>>Reto: There we go. Very nice. So you can take your photos and apply your hipster filters
as you would normally expect. And it's got a good selection of you know, different standard
things. And you can actually do quite a lot here in terms of applying different kinds
of presets. Eventually. Maybe.
>>Ian: It does seem to be taking a long time but I do like their little rotating status
bar.
>>Reto: Yeah.
>>Ian: Well, and this is one of those things too, where they're obviously not using the
stock Android art but it is part of their branding.
>>Reto: Exactly.
>>Ian: And you know, I know we harp on this a lot but we get this question a lot, you
know people bring us an app that uses some- Let's call a spade a spade, sometimes they'll
pull in assets directly from the iPhone-
>>Reto: Yeah.
>>Ian: - or Windows Mobile. And they'll say, well, that's just the way our designers like
it. And I think that's not really cool. I mean first off, it's not Android but second
off, it's not yours. It's somebody else's stuff.
>>Reto: That's right.
>>Ian: But when you take something that Android provides and then make it completely yours,
so it works exactly the same, you know has the little cycling colors so that you know
what's going on but has your branding in it? I think that's great.
>>Reto: Yeah, absolutely.
>>Ian: I wish that more apps would do that.
>>Reto: Absolutely. And then you get the advantage of having that consistency across all the
versions of your app and everything else.
>>Ian: Now we also have the very consistent--. You know, this should be a built in control
right now-
>>Reto: You're right.
>>Ian: -the hipster strip.
>>Reto: And they've actually got like a bunch of different ones. So they've got the standard
effects that you're applying there. And you can actually modify the degree of each of
these which is nice as well. Let's see, apply that and then I think you can go through and
apply a bunch of different kind of filters. So they've got the distortion filters, they've
got you know all those different things.
>>Ian: I think it's really interesting that compared to some of the other apps that we've
looked at, this app is really slow at applying filters and I wonder if it's because they're
not taking advantage of acceleration. In Android, especially in Honeycomb and above,
you can use RenderScript or you can use the GPU to accelerate this sort of thing. And
this is- most of these filters just boil down to convolutions of one kind or another.
So you can- and Java is just not good at convolutions at all. Its memory layout is wrong, it doesn't
have access to SIMD floating point instructions. I don't even think it has access in non-strict
floating point instructions which means you're gonna be abiding by IEEE standards and getting
into all sorts of performance problems.
So you really, really, really don't want to write your filter code in Java or even in
just generic C++, you really wanna be using NEON or- for the best compatibility actually
just write it in OpenGL.
>>Reto: Yeah, absolutely. So let's um- we'll click through. So we've all seen this sort
of thing beforehand, so if you hit OK then you have a bunch of options. You can upload
it to PicsArts, save it to the SD card, Tweet it, export it a whole bunch of things.
Now, personally I would kind of prefer if it just did something sensible by default.
Maybe save it to the SD card and then take me back to a page where it just displays all
the things that I've saved and allow me to share or add to a timeline or whatever from
there. Rather than asking for this explicit thing.
>>Ian: Well and this- it seems like a lot of people get this wrong. In a mobile app-
and Reto you had a great talk about this at Google I/O, you have the opportunity to make
your app work like magic. Forget about saving and loading and knowing what file paths are
and all sorts of things like that. If you look at good mobile apps, they just
always work. They do what the user probably wants and they give the user a way to back
out if it's not what they wanted. So, it shouldn't be about saving, it should be about deleting
things that have already been saved because everything gets saved.
>>Reto: Exactly. You know, you don't have this problem anymore where you've got a totally
really, really limited amount of storage and one or two extra photos are gonna kill you.
You can take a lot of photos before it's a problem.
>>Ian: Yep.
>>Reto: You know back in the day where, you know back in the DOS days where the only thing
you had to identify a file was its filename and its extension and so then you had to create
these complex hierarchical folder structures in order to be able to find anything. So you're
basically creating metadata out of a file system. These days you can use the metadata,
you can display the photos you can do all that stuff.
>>Ian: I dare say almost no one knows or cares what the file names are for their photos now.
>>Reto: Exactly. Particularly not on your mobile where- see this is all a little bit
confusing. See I've already saved it and just took me back here-
>>Ian: Yeah.
>>Reto: So I'm just gonna hit close and assume it's kept it somewhere.
>>Ian: Good luck.
>>Reto: Yeah. So then it takes us back to the photos, we can continue taking photos
or hit back again-
>>Ian: So they've done their own kind of camera view, too.
>>Reto: They have. So, they've done it completely from scratch.
>>Ian: That one- Yeah I'm not as excited about this just because I feel like this isn't quite
as much their branding. I mean, I look at these icons and I'm like yeah I think I've
seen those somewhere before.
>>Reto: Yeah and they're really small-
>>Ian: They really are.
>>Reto: -and they're not particularly high res either. I can see a little bit of mess
around some of the vector art.
>>Ian: Well, Galaxy Nexus is always a good test case for finding out if you've got the
right resources because it's a 720p phone. And same thing for I think Galaxy s3, Galaxy
s2 are the same resolution. So it's an extremely high resolution display and if you're just
thinking to yourself, "oh these things look good on a four inch display" that's not always
true if you're on this- one of these xhdpi devices.
>>Reto: So the other little thing I want to point real quick is that you're hiding my
status bar which is pain. Because we've now been going on for 15 minutes about this app
and I don't know-so please don't, please, please I beg of you, do not hide my status
bar. I want to know what time it is, I wanna to see my emails coming in. That is actually
more important than your app.
>>Ian: If you must hide the status bar at least let me tap and get it back.
>>Reto: Something to get it back. Yeah. Like it's fine if you've got like a gallery view
and I wanna look at my photos in fullscreen and flick through it, sure. But you know,
give me that tap ability to get things back.
>>Ian: Yeah, couple apps that do this really well are the ereaders, so Google Play Books,
Amazon Kindle. Both have really good status bar hiding and showing functionality.
>>Reto: Yeah. See if we can get data, so I don’t know if we- apparently can. OK so
we've got some here. So we can see this is the community aspect of it. This is less janky
in terms of the scroll but we're still seeing a reasonable amount of time taken to load
each of the pictures here.
>>Ian: Well, it's tough to get around that because we've got network latency, we’ve
got the decoding. These are probably not small bitmaps.
>>Reto: And that's kinda the question here, is that-
>>Ian: And you can see actually once things end in cache.
>>Reto: So the caching is good. It's keeping them there, which is nice.
>>Ian: I think of the apps that I've looked at, these guys are doing exactly the right
thing.
>>Reto: That's right.
>>Ian: You can't overcome the laws of physics, but-
>>Reto: Really? Or are you just not trying hard enough?
>>Ian: Yeah, well. They're trying pretty hard actually. This-
>>Reto: No, it does look pretty good. [unintelligible]
>>Ian: it's very hard to see on the video, on YouTube but this is an extremely smooth
scrolling experience.
>>Reto: Yeah.
>>Ian: The flinging is just right-
>>Reto: It's got the right physics, yeah.
>>Ian: Yeah, it's all good. So, Bravo.
>>Reto: And you click through, and so this is a good experience. You're swiping, swipe
left right and you can see here the physics are right. It's moving at the same speed as
my finger but then I can just do a quick flick and it feels about right. So they've done
a good job.
>>Ian: And they've got the pinch to zoom. And then it's always an interesting question
what do you do once you've pinched to zoom-
>>Reto: And get to the edge.
>>Ian: But this seems fine.
>>Reto: I like that.
>>Ian: Yeah.
>>Reto: I like the idea of once I get to the edge of the picture – as long as I'm able
to take it back and undo my swipe across, I think that's the right approach.
>>Ian: I'm actually wondering if there's any chance that these guys are actually using
Dan Galpin's library because it does exactly this.
[Reto laughs]
>>Ian: That is exactly this behavior.
>>Reto: Possibly. Or Dan's maybe seen this and used it as a basis.
>>Ian: Quite possibly. Yeah. But yeah I think that these guys are doing everything right
as far as- the physics there are a little bit-
>>Reto: It gets a little funny once you're bouncing off the edge.
>>Ian: wheeee wheeee
>>Reto: That's too much fun for this time of day. And again we've kinda got the- this
is interesting. So now we've got the menu button on the action bar here, but they've
still got legacy button down here and that does absolutely nothing. So that's now confusing
because it's ambiguous.
>>Ian: Yeah.
>>Reto: So at the very least, I mean really the right solution here is get rid of this.
Set your target SDK to 15. You know, at the very least.
>>Ian: Or set it to 16 now.
>>Reto: Yeah, exactly. It should always be the latest version, that's a good tip for
you guys as well. Always tie with the latest SDK, there's really no reason not to. It voids
your app.
>>Ian: Well the only possible reason not to is if you have no confidence that your app
works on the latest SDK and you're unable to test on any new device or new emulator.
>>>>Reto: Yeah.
>>Ian: So I would have sympathy with, let's say hard core video apps-
>>Reto: Sure.
>>Ian: - that are trying to do streaming that's only been supported recently.
>>Reto: Yeah.
>>Ian: And is still a little buggy. But in general, your UI should support the latest
SDK app.
>>Reto: Alright, so let's jump out of this cause I'm not actually sure how much time
we've spent. But let's have a look at Glimmr. So Glimmr's a little bit different. This is
not a sort of standard camera replacement app. This is actually a app to browse Flickr.
So, in terms of functionality, much more simplistic here, you basically sign into your Flickr
account and then you can scroll all the pictures.
>>Ian: Nice. What does Daniel Pham have to say about ricers?
[laughter]
>>Dan: It was like that, alright?
>>Reto: Yeah, looks like you know how to party. >>Dan: That was actually at I/O last year,
not this year but-
>>Ian: Yeah, cause this year it was Train and nobody was partying.
>>Dan: Yeah, I was close enough to Dave Navarro's leg to almost reach out and grab him. Decided
that that was probably not a good idea. >>Reto: You decided that was probably be a
problem considering the restraining order. >>Dan: Yes.
>>Ian: Right, well yeah. So for those of you who didn't make it to I/O-
>>Reto: This is what it looked like.
>>Ian: -feast your eyes on some of these shots.
>>Reto: There's Mr. Galpin. >>Ian: Oh yeah, without his beard.
>>Reto: Beardless Galpin.
>>Ian: Yeah.
>>Reto: That's a little scary.
>>Ian: It is. [silly voice] The Master is having a party tonight.
>>Reto: Overall, it's a nice effect, again you've got the nice smooth swiping between
items. You've got the standard action bar along the top here which behaves in the way
that it should. You've got the refresh icon which works in place.
Again probably no need for an explicit refresh as a primary action just because your photos
aren't going to be updating that quickly. You can probably get away with coming up with
some sort of sensible refresh model.
>>Ian: Now you know what I love about this app?
>>Reto: Please.
>>Ian: This page right here. This is exactly what a photos oriented list view should look
like.
>>Reto: Right.
>>Ian: Look at this they've done a great job-
>>Reto: It's all images.
>>Ian: It's all images. They've overlaid text that looks nice, it's big enough, it's readable.
Now, one thing that I haven't seen, I haven’t seen any photo that is just really really
bad for text. Well, there's one.
>>Reto: Yeah, but you can see that they-
>>Ian: But you can see that yeah, they've overlaid some – it could be a little darker
on this one. Exactly. That's the whole idea really.
>>Reto: Exactly.
>>Ian: You make the photo everything. Don’t put little drop shadows behind it, don't put
bars between it, don't shrink the photo down so it's thumbnail sized. This just looks beautiful.
>>Reto: Exactly, I mean there's all kinds of things here and straight away you can see
where- you can tell from a photo even from this relatively small portion of it, whether
it's going to be something you're interested in exploring more of-
>>Ian: Yeah.
>>Reto: -and I think they've done a great job there.
>>Ian: The only disappointing thing is it feels like their caching isn't quite as good
as the last app.
>>Reto: No, you can see here, as soon as you sort of get more than sort of half a swipe
beyond the page you're looking at, you've got the white screen.
>>Ian: That is understandable though, the view pager is sort of set up to do that. And
you have to really go out of your way to do cache management, if you want to serve lots
and lots of images very quickly. >>Reto: Yeah. And one thing you can do as
well which maybe at issue here, make sure you're downloading different sized images
as well. So obviously you're going to have the double hit if you click on it and then
you have to download the full sized image. But at least you're dealing with a smaller
memory footprint, faster downloads, faster load times, those sorts of things.
>>Ian: Now right after that, all the sudden I'm sort of disappointed because-
>>Reto: Ahh, you're back into text mode.
>>Ian: Right. Right.
>>Reto: That's a shame.
>>Ian: Well, I mean this is for your Flickr groups, I guess, and obviously the photos
are maybe less important but I would argue that- if it were linked in, I'd be like, yeah
photos whatever.
>>Reto: Sure.
>>Ian: It's Flickr.
>>Reto: It's Flickr.
>>Ian: You're not there for anything else.
>>Reto: Exactly. So it feels like you could do the same thing here where you're just taking
that image associated with the group, make that your full background. And then maybe
because there's more text and it's more important you overlay more of that on top of the text.
But when you've got images, like you know look at the way magazines work. The big advantage
of magazines is that you've got rich color, full color and with apps like this if you
have the pictures, use them. The pictures are awesome.
>>Ian: Absolutely. Yeah.
>>Reto: So this is looking pretty good. We don't have the hipster filters to go through
so I think maybe we'll move onto the next app. The last one which we're gonna look at
today. Which is Camera ZOOM FX.
>>Ian: Camera Zoom.
>>Reto: So this is just your hipster filters. It's locked into landscape view which we decided
to leave this way to kinda prove a point which is I don't want to always take my photos in
landscape view.
>>Ian: True.
>>Reto: So your UI particularly you can see here this is basically an entirely custom
camera UI. They've drawn all that themselves.
>>Ian: Right.
>>Reto: So there's really no reason here why they can't rotate the assets, right?
>>Ian: Absolutely.
>>Reto: And even these days- I remember back in the days of Android 1.1, you had to take
photos in landscape mode because there was no way of knowing what orientation the camera
was at. That changed a long time ago now so you can
actually query the device to find out what orientation of the camera is and rotate things
so that they're sort of in the right aspect ratio and perspective.
>>Ian: It's also worth asking yourself if you really, really need to do a custom camera
view because-
>>Reto: Yeah.
>>Ian: -whenever you duplicate system functionality, you risk looking out of date once the system
updates. And, in particular, you're going to miss out on any brand new functionality-
>>Reto: Yeah. Absolutely.
>>Ian: -that the new system gives you.
>>Reto: Yeah.
>>Ian: Now for this, you know maybe they've got some really cool camera stuff going on.
The problem is that a lot of the coolest camera technology in Android is being supplied by
OEM libraries so, you may be missing out on something really, really slick if you completely
override the camera.
>>Reto: That's interesting, if I hit front facing it doesn't do anything. So, it may
be a bug.
>>Ian: Well, that's what you get right?
>>Reto: It's certainly freezing.
>>Ian: Did it just freeze, you think?
>>Reto: No, it's back.
>>Ian: OK
>>Reto: It seems to just take a while.
>>Ian: So the only reason I can think of that you'd want to build a custom camera and do
the preview yourself is if you really need to do live preview. So do these guys do live
preview?
>>Reto: I believe that they do, yeah if you hit the- if you start it up and hit the FX
button I believe that it will apply-
[pause]
>>Ian: K.
>>Reto: Let's have a look.
>>Ian: Alright, let's see this is coloring or-
>>Reto: Branding effects.
>>Ian: Alright. Oh here, vignette. Vignette's always good. There it is.
>>Reto: Yeah, there you go, so they're applying that in real time, you can see that on the
edge there.
>>Ian: Right. But, you'll notice that a lot of the effects that you want are actually
disabled in the real time mode.
>>Reto: In the real time mode, yeah.
>>Ian: Yeah, which isn't surprising. It's actually, in ICS we improved things, in Jelly
Bean we improved them even more, I think there's one extra step that the GL team is talking
about. But we've systematically been reducing the
number of operations that it takes to do a live preview with effects. So, originally
it was extremely tedious and you had to bring things through Java.
>>Reto: Mmhmm.
>>Ian: Now there's a single copy involved if you're doing the GPU acceleration on your
effects.
>>Reto: Mmhmm.
>>Ian: And in the future at some point, we don't know exactly when, but the team thinks
that they can get that down to zero copies. So, you'll be able to go directly from the
camera to the GPU to whatever without passing through user mode code at all.
>>Reto: Yeah, that's excellent.
>>Ian: Yeah.
>>Reto: In fact, the app which I've seen which really does the most intensive real-time effects
is I think Paper Camera? They do a pretty good job of this.
>>Ian: Yeah, they really do.
>>Reto: they have quite most of their effects at runtime which is kinda nice.
>>Ian: Yep, and they've done a lot of work to make that successful.
>>Reto: I'm not surprised. So that's basically the way this app works and it's got all of
the standard filters that you'd expect and you can apply them to photos either from the
camera or from your gallery as well which is nice. There's no sort of community picture
viewing sharing functionality built in, at least not that I could find.
>>Ian: That's a shame because the share intent is really really easy to do and it works well
for photos.
>>Reto: Well share they've got, so they've got the standard share intent.
>>Ian: Oh OK, so you're just saying that they don't hook into a-
>>Reto: Exactly.
>>Ian: -like a Flickr client.
>>Reto: Like I start it up for the first time and I can't flick through and look at other
photos that people have taken and shared and that sort of thing. Which makes a app like
Instagram a big part of that.
>>Ian: I'm kinda on the fence about that.
>>Reto: Really?
>>Ian: Because on the one hand I'm like, yeah, you're right, every time I pick up an app
like it's really cool. On the other hand I'm like well, gee, don't I have social networks
for that?
>>Reto: Yeah, it's true it's true. But you know, I kinda like the combination particularly
if it's not- if the community is really simplified, so it's not about anything other than taking
a photo and letting other people see it.
>>Ian: Yeah.
>>Reto: Cause then you kinda get that experience of being able to interact and share with people
who, you know, are using the same app, taking the same sorts of photos, I think it adds
something to it.
>>Ian: I think you're right.
>>Reto: OK, cool. So that's- now see and again we're hiding the status bar. Please stop hiding
the status bar.
>>Ian: Yeah.
>>Reto: I beg you.
>>Ian: Just make sure you have a way to get back, that's so important.
>>Reto: Yeah, absolutely.
>>Ian: Because here's the thing, let's say I am completely immersed in your app and let's
say I'm also an adult with responsibilities, if I can get back to the status bar I can
find out what time it is, I can respond to a notification, I can check my calendar, I
can do all these things. If not, then I have to leave your app anytime my phone beeps,
which is annoying.
>>Reto: Yeah, absolutely.
>>Ian: Because some notifications I literally do not care about-
>>Reto: No.
>>Ian: -but I don’t know until I've looked at the status bar.
>>Reto: That's right. And you know, if you're doing a show like this you need to know what
time it is to see if you're massively over time. Which we always are.
>>Ian: We're not.
>>Reto: But at least we're not actually past the end time of our show yet, which is, which
is nice.
>>Ian: That's quite true.
>>Reto: So let's have a look. So we've had-
>>Ian: I've been actively sabotaging the show as we go on, you're carefully-
>>Reto: [unintelligible]
>>Ian: Yeah, OK, let's talk about-
>>Reto: We've both been sabotaging.
>>Ian: -what are the prescriptions for apps?
>>Reto: Indeed. So these are the things we're looking for having browsed through a bunch
of these apps. The things that we've found which makes them good. You know, we always
say that you can't contradict the design guide and that certainly still holds here but I
think one additional thing that we want to note is that it should really look good.
These are apps which are targeted at people who like the way things look; photographers,
design folks, hipsters. It's really important that you create something that's immediately
appealing and you can see that at the beginning when I showed you the feature graphics, and
I meant to point it out at the time but completely forgot to.
They all have feature graphics; they're all really compelling-
>>Ian: Yeah, really really pretty.
>>Reto: -highly saturated images which look great. And so that's the same sort of thing
you want here, you want to make sure the entire process is appealing. Similarly you want to
make sure that the app works on every image in the gallery and at the same time works
on devices without the camera.
So for most of these apps, they allow you to add effects both to live photos on the
camera and to things you already have on your phone. And so I want that to work on anything
I can pick from the Picasa gallery or from the phone gallery. And similarly I want it
to work on my Galaxy Nexus, I'm sorry on my Nexus 7, even though it has no rear facing
camera, I'm not going to use it to take photos but I have all of my Picasa gallery images
synced to it, so maybe I want to apply all these filters on a bigger screen. It should
let me do that.
>>Ian: Or you wanna just browse your friends' photos.
>>Reto: Exactly. [unintelligible] >>Ian: That's actually one of the biggest
problems that we had when we introduced Nexus 7 was photography apps that just assumed that
if you didn't have a camera you wouldn't be interested in a photo app and that's just
not true.
>>Reto: Exactly. And obviously you want to have the standard and some unique hipster
filters which I think most of the apps which we looked at today, actually managed to do.
>>Ian: To me, it's not just about hipster filters, it's about ways to make the photo
look good. So even if you have really unique filters, one thing that I think the most successful
apps do is a little bit of automatic tweaking, behind the scenes, maybe even without telling
the user. So maybe just a little bit of auto level balance, auto white balance to try and
make the photos look good.
>>Reto: Absolutely, I mean that's the thing we all know that we're not expecting to be
able to take great photos with our camera phones off the bat. It's not an SLR, you can't
tweak all of your manual settings and get it just so.
So you're looking to concentrate on making sure you're getting a good shot, good angles,
good framing and all that sort of stuff. And then having the software help you make it
look like something that really represents it well.
>>Ian: Absolutely.
>>Reto: So let's give you some tips. The first tip here is on using the camera, so you've
got two options here which we saw both of which is either an app which uses a completely
custom UI which is what Camera ZOOM FX have done here so you get that completely custom
camera user interface which I can't find. Let's see, save and close, again save button,
so here you've got the completely custom camera user interface.
And I think the first app that we looked at, Eyeme-
>>Ian: By the way, I think that where we're seeing save, the correct verbiage to use is
done. That's not a verb, but that's the label you should be using. Because there is a case
for having this intermediate- like we've talked about this with alarm apps.
There is an intermediate stage where you are working on something and you don’t really
feel complete. You don’t feel- like when I'm setting my alarm I'm doing the hours,
I haven't done the minutes yet. If it just- if I got a phone call then and my alarm got
saved in that state, that would not make me happy.
>>Reto: Yeah.
>>Ian: Likewise when I'm applying filters and doing a lot of tweaking, you want to have
sort of a commit step but you shouldn't call it save.
>>Reto: No.
>>Ian: Cause that doesn't make any sense.
>>Reto: Yeah.
>>Ian: You should be saving as you go along.
>>Reto: Absolutely.
>>Ian: Because even though the user hasn't committed they still don’t want to lose
work, but you do want to get to a point where you can roll back essentially.
>>Reto: Yeah, particularly when you're applying filters like this it's all logical operations,
it's all maths right?
>>Ian: Right. >>Reto: So while you don’t want to have
to keep each of those operations for every photo, once you're done, you're done. But
in terms of being able to save your progress even before you permanently alter the image,
you can just keep a track of exactly which effects, which filters have been applied,
save that and then you can always reapply it if they come back to the app after your
process has been killed.
>>Ian: Right, so you should always be prepared for interruptions even interruptions that
happen at a very inconvenient time for you.
>>Reto: Absolutely.
>>Ian: But you should never ask the user to manage storage, to do anything but commit
an action that's already in progress.
>>Reto: Anytime you want to surprise a user is with delight, not with annoyance.
>>Ian: Absolutely.
>>Reto: So this is Eyeme and you can see that when you hit the camera button it goes to
the basically to the built in camera. So this using all of the functionality that you would
have on the standard built camera app and then you can take a photo and then it lets
you retake or cancel or whatever you want to do. So that's your two approaches and both
of those described in the link down there in the camera topic of the Android developer
guides. So they will tell you how to use both approaches.
Let's have a look, so the other thing we talked about what conforming to the design guide.
And so again we kind of have a few different approaches here with these apps and I think
they've pretty much all, except for Glimmr done some form of sort of custom user interface.
>>Ian: Yep.
>>Reto: And I think that's alright in this circumstance it kinda makes sense. When you
have a particular ethos, a design ethos which you want to be consistent with on these apps,
there were a few little bits and pieces that- Eyeme I think is my favorite look and feel
in that it feels the most consistent the most strongly branded.
And they've done a decent job, they need to get rid of the legacy menu button down here,
they need to make the draw conform to our new guidelines. The search here you should
probably be using the- so this is a little weird here where it goes off into its own
search. This should really just be using a standard action bar search.
>>Ian: That's always annoying. Yeah.
>>Reto: That should just be-
>>Ian: I think you know to a certain extent that's our fault, these guys have obviously
tried to mimic the action bar pattern but since our action bar support library is still
not done-
>>Reto: It makes it hard.
>>Ian: It's tough.
>>Reto: But that's something definitely something to keep in mind and something to look for,
wherever you see sort of these standard patterns, and I have to admit, we tend to have a different
view on what a standard pattern is based on the fact that we're always using the latest
versions of the phones and the operating system.
>>Ian: That is true.
>>Reto: For us it's like well I've seen that appropriate search action bar thing for like
a year, why is it taking people so long?
>>Ian: Exactly.
>>Reto: So yeah, bear with us. But particularly for these guys and for other people sort of
implementing these sorts of patterns, you want search to be simple is kind of the key
element here. Right now search is one, two, three-
>>Ian: Yikes.
>>Reto: -type, four-
>>Ian: And you know what's terrible, too, is that it even looks like you should be able
to type into that right? It looks like something-
>>Reto: It's the faux action bar. The faux search bar.
>>Ian: Mean and horrible.
>>Reto: And so you know, if you take the alternative approach based on the standard sort of action
bar version is that you will have one button here and that'll expand and then you type
and then you hit enter and you're done. So it's sort of only a couple of actions and
you straight away have it. And if you do it that way, it will build your search into a
bunch of ways which will make it easy for you to leverage that across the system.
>>Ian: Yeah. Once again, the feel that I get from this app is that it had some good people
behind it-
>>Reto: Definitely.
>>Ian: Some really good design and they ran out of time and I can tell you exactly where
on every piece of the UI exactly where they ran out of time and decided, screw it, we're
gonna ship anyway.
>>Reto: That may well be the case. In fact, you know we got I think a fair amount of response
from the Developers Strike Back show just yesterday. So we're going to invite the guys
from Eyeme to join us next Thursday and see if they can use a bit of feedback on exactly
at which point they got to before they decided they had to ship it.
>>Ian: You know what? Shipping stuff before it's done is for Microsoft Program Managers.
Don't be that guy.
>>Reto: [laughs] Don't be that guy. Alright, so I think all of the apps did pretty good
so that's I think that's something which was custom designed which looked pretty good.
>>Ian: I should mention by the way that I did work for Microsoft, I'm not just slagging
off on them.
>>Reto: Slagging off the competitor for fun, no you've been there. You've done that job.
>>Ian: That's right.
>>Reto: You've been that guy.
>>Ian: Yep.
>>Reto: And so this is kind of the other approach. So you're looking at Camera FX here and that
again is totally custom but I feel like here, it's not really adding to it. It makes it
a little bit harder to navigate, harder to understand what's going on and for not a huge
amount of gain. This doesn’t look incredible.
>>Ian: Those touch targets are tiny.
>>Reto: Tiny, tiny touch targets.
>>Ian: Yeah, they're really really difficult to use. So yeah, basically this is a performance
dis-improvement.
>>Reto: Exactly. This is gonna make it harder for people to, to do. I mean, basically, if
you've got an app like this, the intention is gonna be that they use this instead of
their camera app.
>>Ian: Right.
>>Reto: So every time they take a photo, it's gonna be with this, including from within
other apps.
>>Ian: Yeah.
>>Reto: So you need to make it at least as easy to use, as feature complete as the built
in camera app which can be tricky. But in terms of UI here in particular you wanna try
and make sure that it's easy to use. And certainly not harder and slower to use.
>>Ian: Yeah, and again can't emphasize this enough, especially for apps like camera. Camera
has voice recorders, the timers, anytime that you're doing something where you may not actually
be looking at the screen closely, or you may not be concentrating on the UI, [clunk in
background] it's absolutely critical that you test on some of these newer devices that
have no hard buttons, because if you look at the camera for- we were are on PicsArt?
>>Reto: We were on Camera FX.
>>Ian: Camera FX, sorry. If I'm taking a picture, what am I gonna hit? What button am I gonna
hit when I try to take that picture? [door closes in background] I'm sorry, we're apparently
getting bossman stopping by here.
>>Reto: Very strange things happening in the corner of our eyes.
>>Ian: Lot of people.
>>Reto: Not sure why.
>>Ian: Oh Hi, I have no idea who you are. OK cool. Let's move on.
>>Reto: Indeed indeed. So the next thing I wanted to point out was around, something
that you described earlier. So the hipster filters. So there's a bunch of ways you can
do this and it's all basically maths and Android actually has a pretty good tool for making
maths work quickly. And that is RenderScript.
>>Ian: Right.
>>Reto: And so actually Jeff Sharkey gave a great presentation at I/O this year, which
included a big section on how to use RenderScript to perform complicated
computational mathematics. And in fact, in the example he gave was being able to start
creating hipster filters.
>>Ian: Yep. And in fact we have a library of them.
>>Reto: Indeed indeed. And so check this out and that will sort of help you to get those
sort of standard things and give you the right processes to be able to create your own more
interesting and innovative filters as well.
>>Ian: There's also some great resources out there if you're interested in GPU accelerating.
RenderScript will actually use the GPU in some circumstances but you're always better
off just using openGL if it's something that the GPU can handle all by itself.
So, one of those two or if you absolutely must, drop in C and use NEON but that should
be your last resort. And the reason it should be your last resort is because there is currently
Intel phones on the market, there's MIPS phones on the market, you can't guarantee that you're
gonna be running on an ARM device. You could this year, next year it's anybody's game.
>>Reto: I think that's one of the advantages of something like RenderScript is that it
really does all of that for you so it's gonna to figure out-
>>Ian: Exactly.
>>Reto: -the right processor and infrastructure to take advantage of those –
>>Ian: Yeah you know who wrote RenderScript is the guys we hired from NVIDIA, they were
on the CUDA team so-
>>Reto: There ya go.
>>Ian: -they know their stuff. Alright.
>>Reto: Great, alright so let's move on. The next piece of advice was around supporting
Picasa. So I do have- I think most of these apps did, I think there was one which didn't.
I'll have to refresh my memory-
>>Ian: Well not about Picasa, we're talking about in general.
>>Reto: Exactly, basically anything which comes in the gallery is something you can
pick to apply a filter to, I expect that to work.
>>Ian: Right.
>>Reto: I expect to be able to apply that filter to any image which comes back now.
>>Ian: So, would it be correct to say then what we really wanna do is support image providers?
>>Reto: Exactly.
>>Ian: Right.
>>Reto: Exactly. Any image provider which can end up in my gallery, yeah.
>>Ian: Right, because you know this isn't just about Picasa. Picasa is sort of the default
because it ships with the device, but we encourage everybody to make image providers and-
>>Reto: Absolutely.
>>Ian: -many OEMs do. We don't actually ship a Facebook image provider as part of Android,
but many of the different OEMs you know, Samsung, Motorola they have their own builds and they
have a Facebook image provider.
>>Reto: Oh nice.
>>Ian: You know, Flickr image provider etcetera, etcetera. So you really wanna be able to work
with that so the user doesn't see something in the gallery, see something that their phone
is seamlessly offering without saying "Oh this is special because it came from service
Provider Y.
>>Reto: Exactly.
>>Ian: You see it all in a big list and then if you select one and if it doesn't work,
people are just going to get frustrated by your app.
>>Reto: Exactly and so that's what you want to get away from. Now it turns out this is
not entirely a trivial problem so you really need to, to look at the URLs the URIs which
you get back when you do the picking action. I had a quick look online, it turns out we
don't have a great document on how to do this across sort of the different versions, which
is something we should do.
So, I'm gonna put that to our writing team and see if we can get something put together.
In the meantime, I did find this blog post, I haven't validated it in detail, it did look
like it was suggesting the right things, so you may want to check that out and that will
give you an idea for the right way to do that for the Picasa at least.
>>Ian: Excellent.
>>Reto: So now the lack of transparency is gonna bite us.
>>Ian: Yeah, it is.
>>Reto: The other thing which we mentioned as well is we want these apps to work on all
devices. Now it turns out after the latest updates, all of these apps did. When I tested
them last night, a couple did not appear to be installable on my Nexus 7 but this morning
they did. So thank you-
>>Ian: Alright.
>>Reto: -to those apps which pushed out an update late last night to make that happen.
But this link below will take you to a blog post which will tell you exactly how to make
sure that your app does work on devices if you don’t have a back facing camera.
>>Ian: Now see here is where we missed a QR code.
>>Reto: Well, that's true. It's all a learning curve.
>>Ian: Next week.
>>Reto: Next week, exactly. So definitely do keep that in mind and so the reason why
this is particularly important for cameras is because there was an assumption at the
very, very, very early days of Android that every device would have a camera as part of
the compatibility test sweep.
And since that has gradually relaxed over time to give more opportunities for differences
in hardware, we have had to maintain that assumption that if you are asking for a camera
permission, that must mean you need a camera for the device.
And that’s no longer the case. And so you have to explicitly say hey, I know that I've
asked for the permission to use the camera, but even if the camera isn't there, that’s
fine I'm still happy to run.
>>Ian: Right, you need to mark that optional in your manifest and, in addition, one thing
that I personally find very confusing and I think that maybe other people do too is
remember that camera in this case means a rear-facing camera. A front-facing camera
is something completely different. Which is not a camera.
>>Reto: Yeah, that's totally a different string. That's front-facing camera, not camera. I
mean, I know that a lot of this stuff is gonna seem weird and arbitrary but really it's just
there to ensure backwards compatibility.
So where, beforehand camera meant rear-facing camera, it just didn't say that it meant rear-facing
camera, we can't change the string because that will break all the apps which have made
that assumption beforehand.
So it can get a little bit confusing but that's why backwards compatibility is no joke. So
OK, that's basically all of things in terms of prescriptions and the advice there. So
we've got a couple of minutes because the next show isn't starting for a half hour.
>>Ian: Yeah, we're doing great, I thought we were doing an hour today, I mean officially
an hour.
>>Reto: Oh we are, we've got eight minutes.
>>Ian: Alright, well let's get on to the recap then.
>>Reto: If you think that we're going to finish off in less than eight minutes, I think you're
sorely mistaken.
>>Ian: Oh lightning round!
>>Reto: [chuckles] So this is the prescriptions, so we just looked at each of these in more
detail. So let's take a look at each of the apps specifically and see how many of these
they managed to do.
Today I have not used green as a way of saying they've done it. I've left it in blue so that
it doesn't disappear into our background.
>>Ian: OK
>>Reto: So this is our first app-
>>Ian: Not that this was a problem.
>>Reto: Oh, yeah, but it was hard to see that that meant good, because it could be any color
based on whatever was behind it.
>>Ian: Quite true. Alright.
>>Reto: So what they did really well here they offered the standard unique hipster filters,
they have the community photography which was really easy and fun to browse through
and it works on devices without cameras so you can just enjoy looking at photos on whatever
device you happen to have. What they didn't do was support every image
in the gallery. So this was the app where when I clicked through to try to and apply
a filter to something from my gallery, which is all stuck in Picasa, I got the I can't
access this image. So that would be the number one tip for these guys would be please do
make sure that works. We're happy to help provide the information you need to make that
happen. And you know, it does look great without contradiction
the design guide. I gave that one a yellow just because you know, like there's a couple
of little things the search bar, the draw pattern, the menu button, those sorts of things
which-
>>Ian: They re-implemented the action bar-
>>Reto: They did.
>>Ian: --which is always tricky because you're gonna get something wrong, and even if you
get it perfectly right, you're gonna get broken by the next version. So hopefully they can
move over to you know, Action Bar Sherlock or Action Bar App Compat and start using something
that Google is supporting directly and that'll make their app easier to maintain I think.
>>Reto: Exactly. So I think this was a great app.
>>Reto: I really liked the look of it.
>>Ian: Yeah. >>Reto: I can see why it's so popular. I think
if you add that support for Picasa or for generic images in the gallery, you're on to
a real winner.
Second app we looked at was PicsArts, again so this ticked almost all of the boxes. It
supports every image, it offers the standard and unique hipster filters. You've got community
stuff there. It works on devices without cameras. So it's pretty good.
Again, I gave it a yellow against the design guide, in this case they've done the action
bar correctly, they’ve got the search filters and everything else. I think where I got a
little more concerned was around things like the camera which again, they've got the custom
UI, it doesn't seem to be adding a lot.
>>Ian: And the shutter button is not only tiny but directly next to the home button
where my thumb will very easily slide over that.
>>Reto: [chuckles] Very easy to hit.
>>Ian: Very bad idea.
>>Reto: So that’s a concern. And I also found that once I started sort of tunneling
into this app a little bit more, it started to get a little more difficult to navigate
and a little harder to understand what the navigation patterns were, what some of the
user ability stuff was. So they've done a really good job on the front page, but it
starts to go downhill a little bit after that. Once you navigate past that first home screen
in view pager.
>>Ian: Right, but I will say that they did a great job on their image list.
>>Reto: Absolutely.
>>Ian: They look really really pretty.
>>Reto: That's a great example of the right way to do that. Yeah, nicely done.
>>Ian: Absolutely.
>>Reto: Third app was Glimmr. So this was the Flickr viewer. So obviously that gets
red dots for anything to do with applying filters because that's not what this app does.
>>Ian: That's a little unfair.
>>Reto: I was gonna –
>>Ian: Maybe it should be black dot or a white dot.
>>Reto: I was gonna change them. I should just remove them.
>>Ian: Right.
>>Reto: Get them out of there cause it's not really appropriate but- it does look great.
Great looking UI. It's all about the community of photographers. It works on any device.
Again, it's a much more simple app than some of the others we looked at today but they've
done a really good job with what they've got.
>>Ian: Absolutely. Alright.
>>Reto: and last off we looked at Camera ZOOM FX. So this didn't have the community photography,
it didn't have that ability to see other photos that people have taken with the great app
and I don't know, I like it if for no other reason than it shows you what's possible with
a camera phone and with their app. So it's kinda great advertising for your own app if
you have that in there.
And similarly the design guide issues were a little bit questionable in terms of how
much value are you adding by creating this new skin for your- for your camera. Really
small icons a little bit blurry. So I think they can do a little bit there to make it
a much better app.
So that's all. That's all we wanted to look at in terms of apps today.
>>Ian: Yep.
>>Reto: We've got I think, three or four minutes left to go.
>>Ian: Woohoo.
>>Reto: Which is nice. We are going to pass on each of the apps we've looked at today
to the guys, to Roman, Nick, and Adam, to look at in Android Design in Action on Tuesday
at ten thirty. So definitely check that out. I'm not sure which apps they're planning on
to look at today, it will be amongst those four. But keep an eye on the Android Developers
Plus page, we'll announce exactly which apps those are hopefully later today.
>>Ian: Absolutely, and once again join us next Thursday when Developers Strike Back
against both Reto, myself, and Roman and his crew and see what they think of the suggestions,
criticisms and potentially new designs-
>>Reto: Absolutely.
>>Ian: -that we've suggested to them.
>>Reto: So make sure, if you are one of the developers we talked about today, do make
sure we have a way to get in contact with you so we can invite you to the show. If you
are one of our viewers and you have questions for the developers, again let us know in the
comments to the events to the Gplus event and we'll be sure to put those questions to
the developers when we have them live via Hangout in the studio.
>>Ian: Now if you're a game developer or you like games or you like beer or you're bedridden
and you just have nothing else to do, don't forget that the Friday Games Review is happening
today and has also moved to another time. We're doing that at noon Pacific so in just
about half an hour, Daniel Galpin and myself-
>>Reto: Excellent.
>>Ian: -will be doing that. I will change from my lab coat into my hoodie. We'll get
down, we'll get jiggy, we'll do game stuff.
>>Reto: I'm concerned that you went the Redbull during the wrong show.
>>Ian: You think maybe?
>>Reto: I think maybe you did. Maybe that's when the Mountain Dew's coming out. I dunno.
>>Ian: You don't even know, I'm like- I'm kicking it Elvis style, alright?
>>Reto: Oh wow.
>>Ian: This is the- you gotta get right in the middle.
>>Reto: Yeah, sure.
>>Ian: Yeah.
>>Reto: Alright nice.
>>Daniel: I think maybe you guys are gonna match levels, I think it's less about getting
a Redbull for yourself and maybe getting a *** for Neil.
>>Reto: That's true-
>>Ian: That might be true.
>>Reto: That might be-
>>Ian: Alright.
>>Reto: So that's pretty much it for us. We are going to look at travel booking and planning
apps in the App Clinic.
>>Ian: Absolutely right. We're getting ready for the holidays so we figure everybody travels
during the holiday.
>>Reto: Pretty much.
>>Ian: Either to be with family or to get away from family. So-
>>Reto: True that.
>>Ian: -it's about time to start booking those flights. We're gonna look at booking apps
and then later on, we're going to look at travel apps as in apps to help you when you're
on the road. So-
>>Reto: Exactly.
>>Ian: -make sure that get right.
>>Reto: So your currency converters etcetera later. For tomorrow- for next week we wanna
have apps which help you make bookings help you figure out where to go, those sorts of
things.
>>Ian: Exactly.
>>Reto: So yeah, definitely give us your suggestions on the moderator page and tune in same time
as this week, next week. This is gonna be the new time unless it turns out that we've
been talking to an audience of three, when we may reconsider.
That's pretty much it from us. Thank you very much for joining us at the new time and thank
you for everyone who nominated apps and voted for them. Without that we would have a pretty
boring show, or at least perhaps more boring than it already is.
>>Ian: Alright.
>>Reto: My name's Reto Meier.
>>Ian: I'm Ian Ni-Lewis.
>>Reto: And we will see you all next week.
>>Ian: See ya.