[RakutenTechConf2013] [D-4] Singapore de Melonsoda

Post on 20-Jan-2015

307 views 3 download

Tags:

description

Rakuten Technology Conference 2013 "Singapore de Melonsoda" Levine Jacob, Furusho Yuko, Hoshikawa Sayuri (Rakuten)

Transcript of [RakutenTechConf2013] [D-4] Singapore de Melonsoda

Singapore de Melonsoda

Corin (Yuko Furusho)Jacob (Levine Jacob)Hoshipy (Sayuri Hoshikawa)

Open Services Platform Department Rakuten, Inc.

2

Schedule

2

MelonsodaNew Domain Specific Language System for Ad and Affiliate

1

SingaporeSingapore Startup ChallengeOpen APIs hackathon activity

de

3

Open

Services

Platform

Common Key Word

4

What is Open Services Platform?

Outside of Rakuten Ecosystem

SPACE

SPACE

SPACESPACESPACE

SPACE

SPACE

SPACESPACE

SPACE SPACE

SPACESPACESPACE SPACESPACE

SNS

Partner companys

Developers

5

What is Open Services Platform?

SNS

Partner companys

Developers

Review OpenBookmark

Facebook, twitter, Line

Affiliate Advertise Tag

APIs

Rakuten Ecosystem

Story 1

Singapore

Story 2

Meronsoda

6

Schedule

2

MelonsodaNew Domain Specific Language System for Ad and Affiliate

1

SingaporeSingapore Startup ChallengeOpen APIs hackathon activity

de

Self introductions

We are producers, Promote Rakuten Web service

Yuko Furusho2009 Joined RakutenPromotion@JAPAN

Levine Jacob2012 Joined RakutenPromotion@Overseas

8

Schedule

2 What is Rakuten API?

3 Rakuten API Event

4 Singapore Startup Challenge

1 Our mission

9

Schedule

2 What is Rakuten API?

3 Rakuten API Event

4 Singapore Startup Challenge

1 Our mission

10

Our mission

Developers

ProvideRakuten API

Create APPusing Rakuten API

Customer Flow

11

Schedule

2 What is Rakuten API?

3 Rakuten API Event

4 Singapore Startup Challenge

1 Our mission

12

What is Rakuten API?

APIsRakuten Ichiba API

Rakuten Auction API

Rakuten books API

Rakuten GORA API

Rakuten Travel API

Rakuten Recipe API

13

http://webservice.rakuten.co.jp/

What is Rakuten API?

We provide APIs on Rakuten WEB SERVICE.

14

Schedule

2 What is Rakuten API?

3 Rakuten API Event

4 Singapore Startup Challenge

1 Our mission

15

Are you using

Rakuten APIs?

Question

16

2013, We noticed

Application with using Rakuten API is not so increasing…

Need more support!!

Rakuten API user is not so increasing…

Need more promotion!!

17

Our Action for developers

Application Id

Techn

ic Level

High Level&

Have Account

High Level&

No Account

Low Level&

Have Account

Low Level&

No Account

Hackathon EventsTo promote Rakuten APIs

API Workshop To teachhow to use Rakuten APIs

18

Rakuten API Event Activitys in 2013

Jan Apr

API Work Shop

July

Aug

Student Hackathon

19

Mash Up Award 9

Tokyo Tokushima

Okinawa

Nagoya

Kyoto Osaka

Rakuten API Event Activitys in 2013

20

Result of promotion in Japan

After Workshop and Hackathon,Application with using Rakuten API ,andRakuten API user are Increasing than before!!

21

Schedule

2 What is Rakuten API?

3 Rakuten API Event

4 Singapore Startup Challenge

1 Our mission

27

Planning: Challenges

Problem #1: Japanese only documentation

28

Planning: Challenges

Solution #1: Translate documentation to English

29

Planning: Challenges

Problem #2: Japanese only output

30

Planning: Challenges

Solution #2: Machine translation

31

Breaktime

Photo: Jacob Levine

Delicious

32

API Workshops

Photo: Haider Aly-Reza

Time to hack

33

API Workshops

Photo: Haider Aly-Reza

How do these APIs work?

34

Mini-hackathon

Modified API call and CSS

35

Startup Challenge Launched

Rankings based on amount of sales

36

One-to-one support

Using social media to help developers

2nd Prize: JFASH

1st Prize: SuupaaCat

39

Hobby purchases

40

Shoe purchases

41

Fashion purchases

42

We open Rakuten services!We are here for you!We support any developers!Every time!Everywhere!

43

I have good newsfor Rakuten API users!!

44

Ruby SDK released!!

45

API analytics released!!

https://webservice.rakuten.co.jp/analytics

46

http://rakuten-webservice.tumblr.com/

http://www.facebook.com/RakutenWebservice

http://twitter.com/RakutenAPI

47

Schedule

2

MelonsodaNew Domain Specific Language System for Ad and Affiliate

1

SingaporeSingapore Startup ChallengeOpen APIs hackathon activity

de

Melonsoda!

Oct/26/2013Sayuri Hoshikawa

Open Services Platform DepartmentOpen Services Platform SectionAffiliate Platform Group

49

Self Introduction

Sayuri Hoshikawa

Open Services Platform DepartmentAffiliate Platform GroupRakuten Affiliate Team

My work~2011.03 2011.04 Join Rakuten2011.07- Develop Dynamic Ad Contents2013.06- Develop Something using Melonsoda

Call meHoshipy!

LanguageJavaScript

50

Application

We create an application which changes the suggestion by the condition on the client side.

Condition

Suggestion A

Suggestion B

YES

NO

51

For example

If you are a girl, we’ll suggest sweets.But if you are a boy, we’ll suggest Monster Hunter.

Are you a girl?

Suggestion B

YES

NO

52

way

By creating many conditions and suggestions, we can offer the best one for the audience.

Condition

SuggestionYES

NOCondition

SuggestionYES

NOCondition

Suggestion

Suggestion

YES

NO

53

Wishes

To realize it, we have two wishes!

1.Everyone including non-engineers can understand the logic.

2. Quickly changing logic

54

Why is this needed?

1.Everyone including non-engineers can understand the logic.

Sales person

ask

answerask

answer

If they can understand..

Change by themselves

If they can’t understand..

55

Why is this needed?

Time

Try 2nd Try 3rd

Try 4th

Try 5th

Try 6th

Try 7th

Try 8th

Try 1st

Goal

1

2Try 1st

Try 2nd

Not achieved..

We want to make AB test cycle quickly

to achieve goal in short time.

2. Quickly changing logic

56

So, to realize these wishes, we made Melonsoda!

57

Our Melonsoda

58

MelonsodaVirtual

Machine

Melonsoda Material

Ices(Condition &

Action)Menu

(Source code)

59

Melonsoda architecture

Parser

Menu

Create Ice

60

MelonsodaVirtual

Machine

Melonsoda architecture

MVM interprets by order and figures out the result

Melt

61

MelonsodaVirtual

Machine

Melonsoda architecture

Condition1’s data

MVM have informationand can decide the result

by it!

62

If you use melonsoda…

63

Change logic

It’s very easy

Menu

64

Even if Sales person..

1.Everyone including non-engineers can understand the logic.

Sales person

ask

answerask

answer

If they can understand..

Change by themselves

If they can’t understand..

65

If you use melonsoda…

So many call backs will disappear!And become readable and flexible!

66

Our happy

No more long source code changes are needed

67

To do tuning in two way

Melonsoda Not Melonsoda

Development : 5 hour

Coding : 1min

Integration Test

Release

Test

Release

Short Time!!

Design : 1 hour

Unit Test : 2 hour

68

Quickly ABtesting

Time

Try 2nd Try 3rd

Try 4th

Try 5th

Try 6th

Try 7th

Try 8th

Try 1st

Goal

1

2Try 1st

Try 2nd

Not achieved..

We want to make AB test cycle quicklyto achieve find goal

in short time.

2. Quickly changing logic

69

You can’t imagine..?

Let’s DEMO

Melonsoda!!

70

Please answer below questions.with hash tag “#melon1026”

If your answer is correct,You get a prize in DEMO!

DEMO

Q1??? float

#melon1026

Q2??? float

#melon1026

Q3

??? float #melon1026What’s this name?

71

By July

What I talked about so far is just until July,We didn’t have satisfaction before Melonsoda..

_人人人人人人_>   WE < ̄ Y^Y^Y^Y^Y^Y  ̄ 

72

Member

Freddie AgeoAlliz

73

Go to Development Camp

Then, we went to Atami!

74

Then,,

Power up Function!

75

Power up Function

1. Nested flow chart

2. Pass arguments

3. npm install

4. Pluggable ice

76

Nested flow chart

sequential ice

More complicate logic!!

77

Nested flow chart

someIce1 | Ice2 – Ice3

Horizontal Line connects adjoining ices

Vertical Line connects ices based on character’s index

Parser creates a binary tree called “Corn Tree”Each ice is placed on one corn

78

79

Pass arguments

Ice can get arguments!

Less ice

80

npm install

Melonsoda is downloaded by npm install

81

Pluggable ice

You can create ice by yourself!!It is pluggable now!

82

At last

We’ll make Melonsoda open source code in near future.So if you are interested in, please tweet “interest!!” with hash tag “melon1026”.I’ll send you the announcement of“Melonsoda night”.

I hope you also enjoy developingMelonsoda!!

Interest! #melon1026

83

Conclusion

SNS

Partner companys

Developers

84

Thank you for listening!

Q & A