1
00:00:00,000 --> 00:00:06,000
a demo of Zembly. So why don't you take us through that?

2
00:00:06,000 --> 00:00:15,000
Cool. So as I mentioned, Zembly is about creating social applications for social platforms like Facebook,

3
00:00:15,000 --> 00:00:24,000
OpenSocial, Meibo, iPhone web apps and others. And so let me jump into a demo and show you what I mean.

4
00:00:24,000 --> 00:00:31,000
So here what I have is I have my Facebook profile and I have an application here called Favorite Movies.

5
00:00:31,000 --> 00:00:39,000
And I'll just switch to that. And what this does is it's very simple. It's just a demo app to give you an idea of what this is all about.

6
00:00:39,000 --> 00:00:44,000
What it lets me do is declare what my favorite movies are to my friends.

7
00:00:44,000 --> 00:00:49,000
They can see my movies. I can see theirs. And my list of favorite movies goes on to my profile.

8
00:00:49,000 --> 00:00:56,000
So I've picked a couple of movies. And now coming back to my profile, I'm going to reload.

9
00:00:56,000 --> 00:01:01,000
Let me just take a second.

10
00:01:01,000 --> 00:01:09,000
And what you should see now is that list of movies, except it's just a textual list. There are no movie posters.

11
00:01:09,000 --> 00:01:18,000
So what I'd like to do is that this is a Zembly application. Now I can go in and actually modify that application right in front of you.

12
00:01:18,000 --> 00:01:21,000
And you'll come back and see those changes.

13
00:01:21,000 --> 00:01:27,000
So coming back to Zembly, I'm going to go through my profile here, my landing page.

14
00:01:27,000 --> 00:01:36,000
So this is my landing page in Zembly. I have a profile. And that's because, again, Zembly is about social programming or social development.

15
00:01:36,000 --> 00:01:42,000
So the idea is that I'm working on these social applications that I'm building together with other people.

16
00:01:42,000 --> 00:01:50,000
So that means that I can reuse pieces and parts that they've created in the commons or that they've allowed me to use and vice versa.

17
00:01:50,000 --> 00:01:56,000
Alright, so there's a library of snippets or whatever you might want to call it out there. Functionality.

18
00:01:56,000 --> 00:02:02,000
Exactly. Of live functions. So I can see what my friends are doing. So we have an activity feed for that.

19
00:02:02,000 --> 00:02:08,000
So I can watch as my friends are creating some of these new snippets and bits of functionality.

20
00:02:08,000 --> 00:02:13,000
When they're publishing something new, when they're bringing something online or offline and so on.

21
00:02:13,000 --> 00:02:19,000
Or when other people come and they comment on what I'm doing or maybe they're asking for help or that kind of thing.

22
00:02:19,000 --> 00:02:28,000
So in terms of what you actually work on at Zembly, there are really two primary types of things.

23
00:02:28,000 --> 00:02:34,000
There's what we call services. Services are a little bit of server side glue logic.

24
00:02:34,000 --> 00:02:39,000
It lets you implement the functionality of your application to run on the server.

25
00:02:39,000 --> 00:02:43,000
And then there are widgets that are really the user interface or the front end.

26
00:02:43,000 --> 00:02:50,000
And those are the pieces that you see in the platforms like Facebook or OpenSocial or Meibo.

27
00:02:50,000 --> 00:02:56,000
Right. So there's kind of like a three tier model even going here where there's a UI layer and then the services.

28
00:02:56,000 --> 00:03:00,000
And then the back end, I guess, is the actual thing out there that you're integrating with.

29
00:03:00,000 --> 00:03:01,000
The back end is the web.

30
00:03:01,000 --> 00:03:02,000
Right, right, right.

31
00:03:02,000 --> 00:03:03,000
What it comes down to.

32
00:03:03,000 --> 00:03:04,000
Exactly.

33
00:03:04,000 --> 00:03:11,000
And so taking those, just what you mentioned, those parts and then combining them into collections is what is creating that social application.

34
00:03:11,000 --> 00:03:14,000
And then you're able to take that application and target a particular platform.

35
00:03:14,000 --> 00:03:26,000
What I want to show you now is, I want to show you that application that I just showed you, the favorite movies application.

36
00:03:26,000 --> 00:03:29,000
And so what you see here is, let me just scroll down.

37
00:03:29,000 --> 00:03:32,000
This is an application actually that my colleague Yurka created.

38
00:03:32,000 --> 00:03:37,000
And he invited me to collaborate on this, which means I can also edit this application.

39
00:03:37,000 --> 00:03:45,000
You can see there are various things I can do with this, some today, some very quick facts about this.

40
00:03:45,000 --> 00:03:51,000
And I mentioned we'll be adding analytics very shortly, very deep kind of social analytics.

41
00:03:51,000 --> 00:03:56,000
And you'll see people commenting here and so leaving notes and really talking about this thing.

42
00:03:56,000 --> 00:04:02,000
And so coming back up to the top, what you see is a control panel for this application.

43
00:04:02,000 --> 00:04:10,000
So when Yurka created the app, what he did was walk through a 90 second wizard to hook this up to Facebook.

44
00:04:10,000 --> 00:04:11,000
Okay.

45
00:04:11,000 --> 00:04:22,000
And so when he did that, once he did that, now any changes he makes or I make now that I'm collaborating with him are pushed back to Facebook live.

46
00:04:22,000 --> 00:04:26,000
So as I'm modifying the application, that's live there on Facebook.

47
00:04:26,000 --> 00:04:27,000
So…

48
00:04:27,000 --> 00:04:30,000
And can you not do that?

49
00:04:30,000 --> 00:04:33,000
Like if you want to like stage the development of it?

50
00:04:33,000 --> 00:04:34,000
Yeah.

51
00:04:34,000 --> 00:04:39,000
So you can actually do, you know, we provide some very helpful tools for you to actually test

52
00:04:39,000 --> 00:04:44,000
and do some of that stuff before you actually publish it.

53
00:04:44,000 --> 00:04:48,000
So it's not until you hit the publish button that that actually goes live out there.

54
00:04:48,000 --> 00:04:49,000
Right, right.

55
00:04:49,000 --> 00:04:56,000
And then coming along in the next couple of months, we're actually going to have really this idea

56
00:04:56,000 --> 00:05:01,000
of the live version of the app and a completely development sandbox version of the app.

57
00:05:01,000 --> 00:05:10,000
And Facebook, it's not easy to do that with something like Facebook because you're calling real live services and it's very hard to kind of, you know, do that.

58
00:05:10,000 --> 00:05:15,000
And we'll also see here is the list of pieces and parts of the application.

59
00:05:15,000 --> 00:05:21,000
So when you create that Facebook application here in Zembley, the first time through, it's about 90 seconds.

60
00:05:21,000 --> 00:05:27,000
What we do is we create a number of pieces and parts for kind of a skeleton Hello World application.

61
00:05:27,000 --> 00:05:31,000
So that includes like a profile box, a help page, a terms of service.

62
00:05:31,000 --> 00:05:34,000
And then you go in and you customize that for your application.

63
00:05:34,000 --> 00:05:35,000
And then you can add more.

64
00:05:35,000 --> 00:05:38,000
So you can add more canvas pages, for example.

65
00:05:38,000 --> 00:05:44,000
Or you can tweak the way that we, you know, that the application sets the content on the user profile.

66
00:05:44,000 --> 00:05:45,000
Right.

67
00:05:45,000 --> 00:05:46,000
You have sort of that nice template system.

68
00:05:46,000 --> 00:05:51,000
Like, for example, you get in Rails and other things like that where it sort of spits out a skeleton, if you will.

69
00:05:51,000 --> 00:06:05,000
Yeah, you know, that's one of the, one of the really interesting things that I think about Zembley is that, you know, again, because of this social programming element, you know, unless, unless developers just completely close off what they're doing, everything becomes a template.

70
00:06:05,000 --> 00:06:11,000
So the idea is that I can take this application and I can actually come down and clone it.

71
00:06:11,000 --> 00:06:17,000
So I can clone this app, tweak it, you know, you know, learn from that, build, build and so on.

72
00:06:17,000 --> 00:06:23,000
So any interesting app that I find there in Zembley that's, that's open, I can take and, and use as that template.

73
00:06:23,000 --> 00:06:29,000
So that could be anything from something very small up to, you know, a huge, you know, very complicated application.

74
00:06:29,000 --> 00:06:36,000
Is there, I, that's probably not, but is there like a re-merge sort of thing if you wanted to match the clones back together?

75
00:06:36,000 --> 00:06:37,000
Not yet.

76
00:06:38,000 --> 00:06:39,000
Definitely not yet.

77
00:06:39,000 --> 00:06:44,000
But we do have, it's, it's, we, we definitely track that, that, you know, that relationship.

78
00:06:44,000 --> 00:06:45,000
Yeah.

79
00:06:45,000 --> 00:06:46,000
Right.

80
00:06:46,000 --> 00:06:50,000
And again, back to this, uh, social element of things, there's a rating here, uh, for this application.

81
00:06:50,000 --> 00:06:55,000
So users are able to rate the applications as well as assign qualities.

82
00:06:55,000 --> 00:07:03,000
Um, but also when that's cloned, that factors into that rating, that factors into the, the, uh, reputation around the application and the developer.

83
00:07:03,000 --> 00:07:10,000
So that, uh, you know, there's always that, you know, here's a cool app, but it was descended from something that Todd did earlier.

84
00:07:10,000 --> 00:07:12,000
And it descended from something that Yurka did earlier.

85
00:07:12,000 --> 00:07:15,000
And so there's still that, that, that sense of ownership.

86
00:07:15,000 --> 00:07:16,000
That's interesting.

87
00:07:16,000 --> 00:07:17,000
And so, so I was mentioning the pieces and parts.

88
00:07:17,000 --> 00:07:21,000
What I want to do is I want to modify one of those, one of those, uh, pieces.

89
00:07:21,000 --> 00:07:26,000
And this is a little bit of server side logic, uh, uh, for the application.

90
00:07:26,000 --> 00:07:33,000
And before I, before I look inside this, uh, this service, uh, let me just show you a little bit.

91
00:07:33,000 --> 00:07:37,000
This is what we call the, the description page or the info page for this thing.

92
00:07:37,000 --> 00:07:45,000
And, uh, I talked a little bit earlier, uh, we were on the couch about bringing some sanity to the web, um, uh, you know, for developers.

93
00:07:45,000 --> 00:08:00,000
And so what we're doing is we're, we're really trying to add some consistency in the way that, uh, people, uh, you know, developers are able to, uh, find things as well as, uh, see consistent metadata, get formal metadata so that they can take these.

94
00:08:00,000 --> 00:08:05,000
Uh, you know, this, this, uh, service is not just usable in this application.

95
00:08:05,000 --> 00:08:10,000
It's actually usable, um, uh, from outside the application, uh, as a web API.

96
00:08:10,000 --> 00:08:14,000
So that means that you can write a PHP application, for example, that calls this service.

97
00:08:14,000 --> 00:08:18,000
Or you can write a rich internet application, uh, that uses this service.

98
00:08:18,000 --> 00:08:23,000
And, um, you know, that description of that and everything that people build at Zembli is, has some structure.

99
00:08:23,000 --> 00:08:24,000
Right.

100
00:08:24,000 --> 00:08:28,000
And that's a huge value to developers today where it's kind of a wild, wild west scenario.

101
00:08:28,000 --> 00:08:32,000
You can also see, uh, here's some information on, on usage of this.

102
00:08:32,000 --> 00:08:36,000
Uh, there's a timeline for, uh, you know, what's been happening here as well as, you know, comments.

103
00:08:36,000 --> 00:08:38,000
Uh, it's the kind of puppy.

104
00:08:38,000 --> 00:08:39,000
Yeah.

105
00:08:39,000 --> 00:08:40,000
Right, right, nice.

106
00:08:40,000 --> 00:08:41,000
Right.

107
00:08:41,000 --> 00:08:45,000
So now let me look inside this and, and tweak it like I mentioned.

108
00:08:45,000 --> 00:08:52,000
I'm always waiting for someone to, uh, figure out how to take advantage of the, uh, the horizontal scroll bar.

109
00:08:52,000 --> 00:08:53,000
Yeah.

110
00:08:53,000 --> 00:08:57,000
I remember, I remember a long time ago I saw a site for like the Spice Girls movie.

111
00:08:57,000 --> 00:08:58,000
It's gonna sound terrible.

112
00:08:58,000 --> 00:09:01,000
And they, uh, instead of scrolling down, you would scroll across.

113
00:09:01,000 --> 00:09:03,000
And I was like, oh, that's a novel idea.

114
00:09:03,000 --> 00:09:04,000
Right.

115
00:09:04,000 --> 00:09:05,000
Well, we just need more.

116
00:09:05,000 --> 00:09:07,000
We just need horizontal scroll, you know, buttons on that.

117
00:09:07,000 --> 00:09:08,000
We need more Megadrill bands.

118
00:09:08,000 --> 00:09:09,000
Yeah.

119
00:09:09,000 --> 00:09:10,000
That's gonna drive usability.

120
00:09:10,000 --> 00:09:11,000
That's true.

121
00:09:11,000 --> 00:09:12,000
It is.

122
00:09:12,000 --> 00:09:14,000
That's, that's one of the drivers of the internet.

123
00:09:14,000 --> 00:09:22,000
Um, so, so now, um, thankfully without the horizontal scroll you can see it all at one time.

124
00:09:22,000 --> 00:09:29,000
Um, looking inside this service, uh, what you're seeing is, uh, uh, an editor with a very simple

125
00:09:29,000 --> 00:09:31,000
JavaScript, uh, uh, script.

126
00:09:31,000 --> 00:09:35,000
And this is, this runs on the server and it's about 30 lines of code.

127
00:09:35,000 --> 00:09:40,000
And just to give you an idea of, of, uh, you know, some people ask, okay, why an editor?

128
00:09:40,000 --> 00:09:42,000
Um, you know, can I just visually assemble these things?

129
00:09:42,000 --> 00:09:45,000
And, and we will add that ease of use over time.

130
00:09:45,000 --> 00:09:49,000
But, you know, our, our focus today is really on making sure that you can build those real

131
00:09:49,000 --> 00:09:54,000
applications so that really anything you see on Facebook, you could build in assembly.

132
00:09:54,000 --> 00:09:59,000
And you can take advantage of the social graph and you can take advantage of powerful web APIs.

133
00:09:59,000 --> 00:10:02,000
Like in this case, um, here's Amazon simple storage service.

134
00:10:02,000 --> 00:10:04,000
This is a one line function call.

135
00:10:04,000 --> 00:10:10,000
So to do this in Java, using Amazon's framework is 134 lines of code.

136
00:10:10,000 --> 00:10:14,000
And that's not because Java's bad and JavaScript's good or anything like that.

137
00:10:14,000 --> 00:10:18,000
It's really just, you know, targeting a different level of productivity and a different level

138
00:10:18,000 --> 00:10:21,000
of, of, you know, user, user skill.

139
00:10:21,000 --> 00:10:25,000
So what we're trying to do with assembly is target, uh, what we call the casual developer

140
00:10:25,000 --> 00:10:31,000
or the casual technologist, someone that, um, you know, is not the, the, the deep, uh,

141
00:10:31,000 --> 00:10:34,000
software engineer, but, you know, can still do a little scripting and that kind of thing

142
00:10:34,000 --> 00:10:37,000
to, you know, to build these kinds of applications.

143
00:10:37,000 --> 00:10:40,000
And that idea I mentioned before about, you know, everything's a template.

144
00:10:40,000 --> 00:10:42,000
The idea that you can take something and then tweak it.

145
00:10:42,000 --> 00:10:44,000
You don't have to start from scratch all the time.

146
00:10:44,000 --> 00:10:47,000
Like what software engineers typically have to do to build those applications.

147
00:10:47,000 --> 00:10:49,000
Right, you can get over the, the blank screen syndrome.

148
00:10:49,000 --> 00:10:50,000
Yeah, exactly.

149
00:10:50,000 --> 00:10:51,000
Staring at a flashing cursor.

150
00:10:51,000 --> 00:10:53,000
The tyranny of the, you know, the blank editor.

151
00:10:53,000 --> 00:10:57,000
So I mentioned there's a one line function called Amazon, uh, to store the data for this

152
00:10:57,000 --> 00:10:58,000
application for each user.

153
00:10:58,000 --> 00:11:03,000
And then scrolling down what you see is, uh, is a little bit of just string parsing code.

154
00:11:03,000 --> 00:11:07,000
And then here's another one line function called back to Facebook to actually set that profile

155
00:11:07,000 --> 00:11:08,000
box content.

156
00:11:08,000 --> 00:11:13,000
So we're trying to make it very easy to, to use that existing programming model that people

157
00:11:13,000 --> 00:11:15,000
are, uh, familiar with for the applications.

158
00:11:15,000 --> 00:11:20,000
And then, you know, through the social programming, uh, effect, you know, make this easier and easier

159
00:11:20,000 --> 00:11:23,000
over time with higher level frameworks and templates and things.

160
00:11:23,000 --> 00:11:24,000
Great.

161
00:11:24,000 --> 00:11:28,000
So the one thing I want to change here is I'm just going to comment this out.

162
00:11:28,000 --> 00:11:34,000
And then I mentioned, uh, you know, like a wiki, what I do is publish a new version of that.

163
00:11:34,000 --> 00:11:37,000
And so when I publish that new version, it's live.

164
00:11:37,000 --> 00:11:42,000
And so now coming back to Facebook, uh, you remember the application here, I'm going to

165
00:11:42,000 --> 00:11:49,000
add another movie and then coming back to my profile, I'm just going to reload.

166
00:11:49,000 --> 00:11:54,000
Give that one second.

167
00:11:54,000 --> 00:11:59,000
And so now what you'll see is the list of movies with the movie posters.

168
00:11:59,000 --> 00:12:01,000
And by the way, those movie posters are coming from Flixster.

169
00:12:01,000 --> 00:12:06,000
So again, this idea of, you know, reusing the richness of the web to build those applications

170
00:12:06,000 --> 00:12:07,000
rather than doing everything yourself.

171
00:12:07,000 --> 00:12:08,000
Right.

172
00:12:08,000 --> 00:12:12,000
And, and the, the point there being the sort of compositing or mashing up or whatever you

173
00:12:12,000 --> 00:12:16,000
want to call it, you're, you're pulling multiple things together to, to one screen or,

174
00:12:16,000 --> 00:12:19,000
or whatever you call the little box there.

175
00:12:19,000 --> 00:12:20,000
Yeah.

176
00:12:20,000 --> 00:12:21,000
Profile box.

177
00:12:21,000 --> 00:12:22,000
Yeah, exactly.

178
00:12:22,000 --> 00:12:24,000
One of the other things I want to show you very quickly, uh, before I go on to the second

179
00:12:24,000 --> 00:12:30,000
part of the demo is, um, you know, one of the interesting things about Zembley, um, in

180
00:12:30,000 --> 00:12:35,000
terms of, of building for these different, uh, social platforms is that, uh, it's, it's pretty

181
00:12:35,000 --> 00:12:37,000
easy to build hybrid applications.

182
00:12:37,000 --> 00:12:42,000
And so we've built something we call, uh, pixel life, which is a iPhone Facebook hybrid

183
00:12:42,000 --> 00:12:43,000
app.

184
00:12:43,000 --> 00:12:47,000
So, um, the idea is that, um, you know, I'm bored on the train and I kind of want to, uh,

185
00:12:47,000 --> 00:12:52,000
you know, uh, tell my friends in a visual way, uh, kind of what I'm thinking or what I'm

186
00:12:52,000 --> 00:12:53,000
seeing.

187
00:12:53,000 --> 00:12:59,000
And so when I do that, um, I just hit the button and then coming back here in Facebook, I'm

188
00:12:59,000 --> 00:13:00,000
going to reload.

189
00:13:00,000 --> 00:13:03,000
And what you're going to see is, uh, you know, that same image that I just did.

190
00:13:03,000 --> 00:13:05,000
And my friends are notified of that.

191
00:13:05,000 --> 00:13:06,000
It goes into my newsfeed.

192
00:13:06,000 --> 00:13:09,000
So it's using all the, you know, all the, all the features.

193
00:13:09,000 --> 00:13:10,000
Oh, right.

194
00:13:10,000 --> 00:13:14,000
You know, of, uh, the platform to actually make that an interesting social application.

195
00:13:14,000 --> 00:13:15,000
Right.

196
00:13:15,000 --> 00:13:19,000
So now what I'd like to do is, is, um, show you a little bit more about the social programming

197
00:13:19,000 --> 00:13:21,000
and the collaborative element of Zembley.

198
00:13:21,000 --> 00:13:22,000
Mm-hmm.

199
00:13:22,000 --> 00:13:25,000
And, uh, so what I'm going to do is I'm going to create, uh, a new service.

200
00:13:25,000 --> 00:13:29,000
So this is again, a little bit of server side logic written in JavaScript.

201
00:13:29,000 --> 00:13:32,000
Just give that one second.

202
00:13:32,000 --> 00:13:33,000
And so here it is.

203
00:13:33,000 --> 00:13:34,000
I just created this one.

204
00:13:34,000 --> 00:13:36,000
Uh, I can actually just run this.

205
00:13:36,000 --> 00:13:37,000
There's no deployment.

206
00:13:37,000 --> 00:13:40,000
There's no, you know, hosting that you're thinking of.

207
00:13:40,000 --> 00:13:44,000
It's actually just, just there because, uh, you're building this at, at Zembley.

208
00:13:44,000 --> 00:13:50,000
And so now what I want to do is I want to take, modify these five lines of code, uh, to

209
00:13:50,000 --> 00:13:52,000
actually, uh, do something with Flickr.

210
00:13:52,000 --> 00:13:57,000
Oh, I thought we were going to like build Dr. Spates or Elsa or something.

211
00:13:57,000 --> 00:13:58,000
Yeah.

212
00:13:58,000 --> 00:13:59,000
We'll get there.

213
00:13:59,000 --> 00:14:00,000
Yeah.

214
00:14:00,000 --> 00:14:04,000
Um, so, so how do I, how do I make use of that, that kind of stuff?

215
00:14:04,000 --> 00:14:10,000
So what we do is we can go here to, um, you know, the find and use tab and I'm going to

216
00:14:10,000 --> 00:14:11,000
search on Flickr.

217
00:14:11,000 --> 00:14:12,000
Give that a second.

218
00:14:12,000 --> 00:14:17,000
And so in the search results here, what you're seeing is two things.

219
00:14:17,000 --> 00:14:22,000
You're seeing the raw Flickr APIs that we've made available and very easy to call in that

220
00:14:22,000 --> 00:14:28,000
one line function style within Zembley, but also things that other users of Zembley have

221
00:14:28,000 --> 00:14:31,000
built that have something to do with Flickr or on top of Flickr.

222
00:14:31,000 --> 00:14:35,000
And so it may be, uh, really just a friendlier version of the Flickr API.

223
00:14:35,000 --> 00:14:36,000
Sure.

224
00:14:36,000 --> 00:14:40,000
Or it could be, um, a mashup of, let's say the Flickr API and the Twitter API.

225
00:14:40,000 --> 00:14:44,000
And this is just sort of collaborative reuse stuff you were talking about before.

226
00:14:44,000 --> 00:14:45,000
Exactly.

227
00:14:45,000 --> 00:14:49,000
And, um, and we also, um, we also make it very easy.

228
00:14:49,000 --> 00:14:55,000
Uh, you know, if there's something out there that, uh, let's say a website like Yahoo Finance,

229
00:14:55,000 --> 00:14:59,000
and you'd love to be able to take some data from that, uh, and use it in your application,

230
00:14:59,000 --> 00:15:00,000
but there's no API.

231
00:15:00,000 --> 00:15:04,000
Um, so, uh, we integrate with our partner, uh, Dapper.

232
00:15:04,000 --> 00:15:08,000
So Dapper.net, um, they, they do, they do a really cool thing.

233
00:15:08,000 --> 00:15:12,000
But what they do is, is take any webpage on the internet and turn it into an API.

234
00:15:12,000 --> 00:15:14,000
And you can get the results.

235
00:15:14,000 --> 00:15:18,000
So I can go to Yahoo Finance, for example, and say I want these three pieces of data.

236
00:15:18,000 --> 00:15:23,000
And I identify that just in the browser by selecting some, those pieces of, of information on the

237
00:15:23,000 --> 00:15:24,000
webpage.

238
00:15:24,000 --> 00:15:28,000
And then they return that to me in XML or JSON or lots of other ways.

239
00:15:28,000 --> 00:15:29,000
Right.

240
00:15:29,000 --> 00:15:31,000
They sort of give you an, an API to screen scraping, if you will.

241
00:15:31,000 --> 00:15:32,000
Yeah, yeah.

242
00:15:32,000 --> 00:15:33,000
And they handle the messiness of that.

243
00:15:33,000 --> 00:15:34,000
Exactly.

244
00:15:34,000 --> 00:15:35,000
That scraping.

245
00:15:35,000 --> 00:15:36,000
Exactly.

246
00:15:36,000 --> 00:15:37,000
And we also make it easy to call Yahoo Pipe.

247
00:15:37,000 --> 00:15:41,000
So anything that, uh, any kind of RSS fees that people have built, uh, you know,

248
00:15:41,000 --> 00:15:45,000
information feeds, it's very easy to call, uh, through pipes.

249
00:15:45,000 --> 00:15:49,000
So that's the, uh, you know, kind of the search element of this.

250
00:15:49,000 --> 00:15:55,000
But again, this idea of social programming, uh, involves also your, uh, social graph.

251
00:15:55,000 --> 00:15:59,000
So I, I have contacts in, uh, in friends in Zambly.

252
00:15:59,000 --> 00:16:03,000
And I may want to use what they're building, uh, because, uh, uh, you know, I know them.

253
00:16:03,000 --> 00:16:04,000
I trust them.

254
00:16:04,000 --> 00:16:07,000
I, I have an idea of their skill level and so on.

255
00:16:07,000 --> 00:16:12,000
And so what I'm doing is I'm going to something that, uh, my friend, uh, Gail has created.

256
00:16:12,000 --> 00:16:16,000
Um, she's created a service that gets the list of interesting photos from Flickr.

257
00:16:16,000 --> 00:16:18,000
And I can see there's, you know, no parameters.

258
00:16:18,000 --> 00:16:20,000
This looks really easy to call.

259
00:16:20,000 --> 00:16:21,000
Let's try that.

260
00:16:21,000 --> 00:16:27,000
So I click the add to editor link and boom, there's that one line function call added to

261
00:16:27,000 --> 00:16:31,000
my program that does something cool to call Flickr.

262
00:16:31,000 --> 00:16:34,000
Now I want to point out, um, here, uh, this name.

263
00:16:34,000 --> 00:16:37,000
So, uh, Gail, it's Gail Anderson.

264
00:16:37,000 --> 00:16:42,000
Um, every user on Zambly has the opportunity to choose what we call a codename.

265
00:16:42,000 --> 00:16:48,000
Uh, and so the codename is really your private, uh, or really public namespace of things you

266
00:16:48,000 --> 00:16:49,000
create at Zambly.

267
00:16:49,000 --> 00:16:54,000
So as you create something at Zambly, uh, and other people reuse that, your codename goes

268
00:16:54,000 --> 00:16:57,000
into their code, um, and vice versa.

269
00:16:57,000 --> 00:16:59,000
So there are a couple of reasons why that's interesting.

270
00:16:59,000 --> 00:17:03,000
Me as a developer, it's kind of nice to see that name around and see that people are using

271
00:17:03,000 --> 00:17:06,000
my stuff and that makes me feel, uh, you know, feel good.

272
00:17:06,000 --> 00:17:11,000
But also, uh, for people looking at, uh, you know, the script, you can see, oh, here's

273
00:17:11,000 --> 00:17:13,000
somebody, uh, doing something with Flickr.

274
00:17:13,000 --> 00:17:17,000
Maybe she knows more about Flickr or maybe she's somebody that, uh, you know, is really,

275
00:17:17,000 --> 00:17:23,000
I can learn from, uh, let me befriend her and add her to my social graph and connect.

276
00:17:23,000 --> 00:17:28,000
So, so now that I've done that, I can come back and, and notice I'm doing all this

277
00:17:28,000 --> 00:17:29,000
without publishing it.

278
00:17:29,000 --> 00:17:32,000
So this is all just, you know, within my private sandbox here.

279
00:17:32,000 --> 00:17:34,000
I can run this, uh, service again.

280
00:17:34,000 --> 00:17:39,000
And what it's doing is it's going to Gale service, which is then going to Flickr, to actually

281
00:17:39,000 --> 00:17:43,000
pull that data structure of the interesting, uh, photos of the day.

282
00:17:43,000 --> 00:17:48,000
And then this is a, a JSON, uh, structure, which means that over here in my script, it's

283
00:17:48,000 --> 00:17:49,000
very easy to consume.

284
00:17:49,000 --> 00:17:54,000
It's just a, a, an object with some, with, with, with some attributes that are very easy

285
00:17:54,000 --> 00:17:58,000
to, uh, uh, consume and that I can call other services like Twitter and so on.

286
00:17:58,000 --> 00:17:59,000
Right, right.

287
00:17:59,000 --> 00:18:03,000
Now, I, I mean, that, that's, that's one of the things I like is because it reminds me

288
00:18:03,000 --> 00:18:08,000
of the database browsers of, uh, a different type of, of programming where it's exploring

289
00:18:08,000 --> 00:18:11,000
live data is often a faster way to figure out the model behind something.

290
00:18:11,000 --> 00:18:12,000
Yeah.

291
00:18:12,000 --> 00:18:15,000
Actually like looking at some wacky chart with boxes and arrows on it.

292
00:18:15,000 --> 00:18:16,000
Yeah.

293
00:18:16,000 --> 00:18:17,000
And that's true.

294
00:18:17,000 --> 00:18:21,000
And, and you know, the thing today is, um, uh, I mean, it, it, it's hard to overestimate

295
00:18:21,000 --> 00:18:26,000
just the value of being able to say, let me call this, you know, this thing I found on

296
00:18:26,000 --> 00:18:29,000
the web right now and just look at what I get back.

297
00:18:29,000 --> 00:18:35,000
You know, today you go to, uh, let's say the Flickr API page or the Amazon page or, you

298
00:18:35,000 --> 00:18:36,000
know, whatever API page you have.

299
00:18:36,000 --> 00:18:41,000
And sometimes they have examples, sometimes they don't, or, you know, how to find the example.

300
00:18:41,000 --> 00:18:45,000
I mean, it's, it's actually pretty tough to find that information and it slows you down

301
00:18:45,000 --> 00:18:47,000
in the process of, of, you know, developing your app.

302
00:18:47,000 --> 00:18:51,000
So the idea, the ability to be able to just, you know, instantly do that without all that

303
00:18:51,000 --> 00:18:55,000
overhead is, is really what Zembley's, uh, you know, all about trying to make it easier

304
00:18:55,000 --> 00:18:57,000
for developers to build these kinds of things.

305
00:18:57,000 --> 00:18:58,000
Right.

306
00:18:58,000 --> 00:18:59,000
That makes sense.

307
00:18:59,000 --> 00:19:00,000
So that's the end of the demo I have for you.

308
00:19:00,000 --> 00:19:01,000
That's right.

309
00:19:01,000 --> 00:19:02,000
Well, that's exciting.

310
00:19:02,000 --> 00:19:03,000
Well, thanks for showing that to us.

311
00:19:03,000 --> 00:19:04,000
Absolutely.

312
00:19:04,000 --> 00:19:04,000
My pleasure.
