37
8/14/2019 2 Zembly SocialSite -Sang Shin http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 1/37 1 Building Social Applications using Building Social Applications using “zembly” “zembly” Sang Shin, Technology Architect Sang Shin, Technology Architect Sun Microsystems, Inc. Sun Microsystems, Inc.  javapassion.com avapassion.com  

2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

Embed Size (px)

Citation preview

Page 1: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 1/37

1

Building Social Applications usingBuilding Social Applications using“zembly”“zembly”

Sang Shin, Technology ArchitectSang Shin, Technology Architect

Sun Microsystems, Inc.Sun Microsystems, Inc.

 javapassion.comavapassion.com 

Page 2: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 2/37

2

Topics

• Social networking phenomenon

• Impact of social networking to softwaredevelopment

• What is “zembly”?• Things you can build/publish using “zembly”

• Building service step by step

• Building widget step by step

• Building Facebook application step by step

• Summary and current status

Page 3: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 3/37

3

Social NetworkingSocial NetworkingPhenomenonPhenomenon 

Page 4: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 4/37

4

Social Networking Phenomenon

• Social networking is rapidly growing with morethan 70 million users

> Facebook, MySpace, orkut, LinkedIn, Meebo,Friendster, ...

• Primary means of mass communication among13-30 years

Page 5: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 5/37

5

Social Networking Phenomenon

"We're just at the beginning of understandinghow the social graph will change every webapplication... what is emerging is the identity andsocial subsystem of the future internet operating

system."

—Tim O'Reilly, O'Reilly Media, Inc.

Page 6: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 6/37

6

Impact of SocialImpact of SocialNetworking toNetworking toSoftware Development Software Development  

Page 7: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 7/377

Why Do You Care (as Developers)?

• Social networking offers developersunprecedented opportunities to build socialapplications that can reach millions of usersovernight

Page 8: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 8/378

Emerging Changes in the Software World

• Participation model to the software developmentis changing

> “Traditional models involving mostly softwaredevelopers” to “new models that involve everyone”

• Different metrics are emerging for determiningvalue of an application

> “Size and features” to “How much usage it gets”

• The social platforms have emerged as viabledevelopment and deployment platform

> Applications are being developed and deployed over the popular social platforms

Page 9: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 9/379

Why Social Platforms as Application

Development/Deployment Platforms?• Provides application development and deployment

right on the web

> Removes the complexity of deployment process

• Exposes facilities (e.g. APIs) to make writingapplications easier 

> Provides higher level of abstraction in applicationmodel – profile, friends, rating system, etc.

• Builds an Eco-system of applications, developers,and users

> Applications deployed are becoming the part of theEco-system, thus enhancing the value of the platform

Page 10: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 10/3710

Where is the Future Application Growth?

Page 11: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 11/37

11

Where is the Future Application Growth?

• Non-traditional apps> Widgets, Social apps, iPhone apps, Mashups,

Situational apps

• Characteristics of these apps

> Usually small

> Developed by casual developers

> Quick to build, easy to deploy

• What lit the fuse?> Polarization of social platforms: Facebook, MySpace,

Ning, Meebo, Orkut, etc.

Page 12: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 12/3712

What is “zembly”?What is “zembly”? 

Page 13: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 13/37

13

What is “zembly”?

• “zembly” is the place to create socialapplications, together 

> “zembly” allows users to easily create and host socialapplications of all shapes and sizes, targeting the

most popular social platforms on the web

• Think of “zembly” like Wikipedia for socialapplications

> a wiki for live, editable code that is more than just

about trivial widgets, but rather about full-fledgedsocial applications that can tap into the social graphand reach millions of users.

Page 14: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 14/37

14

“zembly” Provides Browser-based development

• IDE-based editor running in thebrowser 

• (X)HTML, CSS,

JavaScript, FBMLsupport

• Dynamic APIsearch &

invocation• 1-click publishing

onto the web

• Automatic hosting

Page 15: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 15/37

15

“zembly” Enables Social Programming

• Collaborativecreation of socialapplications

• Fine-grained reuseof artifacts

• News feed

• Contacts

• Custom profilepage

• Messaging

• User ratings

• Favorites

• Comments

Page 16: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 16/37

16

 Your “zembly” Your “zembly”Development EnvironmentDevelopment Environment

 You can this demo yourself! You can this demo yourself!

http://www.javapassion.com/handsonlabs/zembly_basics/#Exercise_1http://www.javapassion.com/handsonlabs/zembly_basics/#Exercise_1

Page 17: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 17/37

17

What things can youWhat things can youbuild/publish usingbuild/publish using“zembly”?“zembly”? 

Page 18: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 18/37

18

Things You Can Create with “zembly”?

• Widgets

• Services

• Facebook apps

• Meebo apps• iPhone apps

• OpenSocial apps

• orkut apps

• MySpace apps

Page 19: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 19/3719

Building a ServiceBuilding a ServiceStep by StepStep by Step

Page 20: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 20/37

20

What is a Service?

• Containsbusiness logic

• Written inJavaScript

• Can be publishedso that others cancall it

> “zembly” creates

a deployableweb service anddeploys it in itown container 

• Can take

parameters

Page 21: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 21/37

21

Steps for Creating a Service

• Write business logic in JavaScript> Using IDE-like JavaScript editor: code completion,

syntax checking, format, code snippet, change history

• Set up parameters

• Find and use other services

• Handle error conditions

> You can use built-in validation

• Test the service

• Publish the service

> Version control

Page 22: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 22/37

22

1. Exploring services built by others1. Exploring services built by others2. Building a HelloWorld service2. Building a HelloWorld service

3. Building Loan Payment service3. Building Loan Payment service

 You can this demo yourself! You can this demo yourself!

http://www.javapassion.com/handsonlabs/zembly_basics/#Exercise_2http://www.javapassion.com/handsonlabs/zembly_basics/#Exercise_2

Page 23: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 23/37

23

Demo: Building Loan Payment Service

• Write business logic in JavaScript> Calculates one's monthly mortgage payment based on

principal, interest rate, and length of loan (years)

• Set up parameters

> principal, interest, and years - required and Number type

• Test the service

• Publish the service

• Use the service

Page 24: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 24/37

24

Building a Widget Building a Widget Step By StepStep By Step 

Page 25: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 25/37

25

What is a Widget?

• Widgets provide a user friendly object that youcan embed in a web page

• Made of 

> (X)HTML

> CSS

> JavaScript

Page 26: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 26/37

26

Steps for Creating a Widget

• Write (X)HTML• Write CSS

• Write business logic in JavaScript

> Find and use other services

• Optionally add images

Page 27: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 27/37

27

1. Exploring widgets built by others1. Exploring widgets built by others2. Building Loan Payment Widget2. Building Loan Payment Widget

 You can this demo yourself! You can this demo yourself!

http://www.javapassion.com/handsonlabs/zembly_basics/#Exercise_3http://www.javapassion.com/handsonlabs/zembly_basics/#Exercise_3

Page 28: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 28/37

28

Building A FacebookBuilding A FacebookApplicationApplication 

Page 29: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 29/37

29

Creating Facebook App. through zembly

Page 30: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 30/37

30

Why Build Facebook Apps using “zembly”?

• “zembly” provides simple and consistentprogramming and deployment model

• Community of developers who can easily discover and leverage one another's work

• Rock solid hosting that is free up to a point andgrows with you -- always on & can handle largeloads

• IDE-level features such as code completion, syntaxchecking, change history, format

• Change history (during editing) and Version control(for each publishing)

Page 31: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 31/37

31

Steps for Creating a Facebook application

• Create application on facebook.com> Live facebook.com wizard page gets displayed in an

iframe

• Follow the wizard to set up Facebook parts of the application that zembly needs

1. Log in to Facebook account

2. Install Facebook developer application, if needed

3. Create a Facebook application on facebook.com4. Copy API key and secret

• Manage the application from zembly

> Build, publish, change and republish

:

Page 32: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 32/37

32

:Building Facebook ApplicationBuilding Facebook Application

by Cloningby Cloning

 You can this demo yourself! You can this demo yourself!

http://www.javapassion.com/handsonlabs/zembly_basics/#Exercise_4http://www.javapassion.com/handsonlabs/zembly_basics/#Exercise_4

Page 33: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 33/37

33

Demo:Demo:

Cloning Facebook ApplicationCloning Facebook Applicationusing zemblyusing zembly

Page 34: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 34/37

Page 35: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 35/37

35

Summary

• “zembly” is a Wikipedia of social applications• Using just browser, you can create and publish

services, widgets, Facebook apps, Meebo apps,OpenSocial apps, iPhone apps, Google gadgets,and other social applications

Page 36: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 36/37

36

Current Status

• You can participate in private beta now> zembly.com

• Open beta coming in fall

Page 37: 2 Zembly와 SocialSite를 이용한 클라우드 컴퓨팅-Sang Shin

8/14/2019 2 Zembly SocialSite -Sang Shin

http://slidepdf.com/reader/full/2-zembly-socialsite-sang-shin 37/37

Thank You!Thank You! 

Sang Shin

[email protected]

 javapassion.com