from japanese mobile-web world, to latin-1 developers. (a part of "east meets west")

70
East Meets West Yuki Sonoda Yoji Shidara Akira Matsuda Shintaro Kakutani

Upload: yoji-shidara

Post on 26-Jun-2015

3.649 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

EastMeetsWest Yuki Sonoda

Yoji ShidaraAkira Matsuda

Shintaro Kakutani

Page 2: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

EastMeetsWest Yuki Sonoda

Yoji ShidaraAkira Matsuda

Shintaro Kakutani

Page 3: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

From Japanese mobile-web world, to Latin-1 developers.

設樂 洋爾 (Yoji Shidara)[email protected]

RubyConf 2009 2009-11-19

Page 4: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

My name isYoji SHIDARA.

Page 5: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Enishi Tech Inc.Small Company.Only 2 staffs.

Page 6: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Small Office.(CEO’s flat)

Page 7: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

技relationship, link, bound, fate, chance...

“Enishi” implies:

“Tech” is for technology.

Page 8: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

We’re from Japan!

Sapporo

Tokyo San Fransisco!9.5hrs1.4hrs

@kakutani@a_matsuda@yugui

@darashi (me)

Page 9: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Sapporo is a beautiful provincial city of Japan.

Page 10: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Delicious foods are waiting for you!

Page 11: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

My works:

Page 12: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

http://buzztter.com

Real-time trendstracker for twitter.

Page 13: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

jpmobile

Page 14: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

jpmobile:A Rails Plugin forJapanese Mobile

Phones.

Page 15: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

jpmobile absorbs

Page 16: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Chaotic Specifications of Japanese Mobile

Phones.

Page 17: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Today,

Page 18: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

I’m going to take you to the chaotic

world.

Page 19: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

By the way,

Page 20: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

We have kinds of characters.

サンフランシスコ で

緊張 しています!

Page 21: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

We have kinds of characters.

I’m so nervous

at San Fransisco!

Page 22: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

鯏鮗鯡鯵鮭鯊鮎鯖鰰鮑鮫鱧鰯鰆鮠鰻鯱鮃鰍鱸鱶鯑鯣鮒鰹鯛鰤鰈鮹鯔鱚鱈鮪鯨鯲鱒鯉鯰鰐

We have lots of characters.

Page 23: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Not only characters,

Page 24: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

But alsoencodings!

Page 25: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Shift_JIS WindowsISO-2022-JP E-MailEUC-JP traditional UNIXUTF-8 modern systems

Major Encodings:

Page 26: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

UTF-8 is not the only option.

Page 27: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

We’re still using these encodingsas the situation

demands.

Page 28: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Ruby 1.9 works nice with this

situation.

Page 29: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

For example,

Page 30: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

"札幌".encode("ISO-2022-JP")#=> "\e$B;%KZ\e(B"

require ‘kconv’Kconv::kconv("札幌", Kconv::JIS, # to Kconv::UTF8 # from)#=> "\e$B;%KZ\e(B"

1.8

1.9Ruby cares about the encoding of “札幌”

We must care about the encoding of “札幌”

Page 31: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Now we’re happy!

Page 32: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

... in most cases.

Page 33: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Do you know

Page 34: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Emoji

Page 35: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Emoticon

Page 36: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

E + Moji絵 + 文字

Picture + Character

Page 37: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Emoji makes the situation worse.

Page 38: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

We have three major mobile phone carriers in Japan.

Page 39: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

They define their own emoticon

charset.

Page 40: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

(Japanese usually paint the sun red)

!"#$%&'()*+,-./01

&'(23

45 -.67&'(23

45 -.67

8 9 : ; < = ! > ? 8 @ < A B ! C < = AD EFGH : @ < ! ! < > D @ @ A : ! I < !

D 9 : ; < B ! > ? D @ < A C ! C < B AA JFGH : @ < : ! < > A @ @ > K ! I < :

A L : ; < C ! > ? A @ < A I ! C < C A> EFGM : @ ; K ! < > > @ @ > 8 ! I ; K

> L : @ > ? ! < D I @ @ D = ! I > ? A< JFGM : @ ; 8 ! < > < @ @ > D ! I ; 8

< NOPFGH : @ > = ! < D Q @ @ D B ! I > = A; RSTH : @ ; D ! < > ; @ @ > A ! I ; D

; UOPFGH : @ > B ! < D ! @ @ D C ! I > B A@ RSTM : @ ; A ! < > @ @ @ > > ! I ; A

@ NOPFGM : @ > C ! < D : @ @ D I ! I > C A? VRWGH : @ ; > ! < > ? @ @ > < ! I ; >

? UOPFGM : @ > I ! < A K @ @ D Q ! I > I A= VRWGM : @ ; < ! < > = @ @ > ; ! I ; <

= XWGH : @ > Q ! < A 8 @ @ D ! ! I > Q >K RYH : @ ; ; ! < > B @ @ > @ ! I ; ;

8K XWGM : @ > ! ! < A D @ @ D : ! I > ! >8 RYM : @ ; @ ! < > C @ @ > ? ! I ; @

88.Z[\]^_`Z_Za7

: @ > : ! < A A @ @ A K ! I > : >D JbcM : @ ; ? ! < > I @ @ > = ! I ; ?

8D d.Zefg : ; = B ! > I 8 @ < @ B ! C = B >A EbcM : @ ; = ! < > Q @ @ > B ! I ; =

8A gh^i : ; ! B ! < 8 8 @ ; ; I ! C ! B >> jk : ; ; K ! > ? ? @ < > 8 ! C ; K

8> l7 : @ = ; ! < @ = @ @ @ ; ! I = ; >< mna^7 : ; = A ! > C B @ < @ A ! C = A

8< oH : ; < ! ! > ? ; @ < A : ! C < ! >; pq : @ C 8 ! < = > @ ? A A ! I C 8

8; rstu : ; < : ! > ? @ @ < > K ! C < : >@ oMvwxPy : ; ; 8 ! > ? = @ < > D ! C ; 8

8@ zWGH : @ < K ! < A > @ @ A 8 ! I < K >? {7 : ; ! C ! < 8 D @ ; ; Q ! C ! C

8? zWGM : @ < 8 ! < A < @ @ A D ! I < 8 >=/|_}hZv4~y

: @ @ I ! < ; K @ @ < Q ! I @ I

8= XSTH : @ < D ! < A ; @ @ A A ! I < D <K Xw : ; Q A ! > : B @ ; < < ! C Q A

DK XSTM : @ < A ! < A @ @ @ A > ! I < A <8 �^6 : @ C D ! < = < @ ? A > ! I C D

D8 RWGH : @ < > ! < A ? @ @ A < ! I < > <D���^�vi��7efgy

: ; = C ! > I D @ < @ C ! C = C

DD RWGH : @ < < ! < A = @ @ A ; ! I < < <A Wx� : ; ! I ! < 8 A @ ; ; ! ! C ! I

DA XYH : @ < ; ! < A B @ @ A @ ! I < ; <>6�^l�^�v��y

: @ ; B ! < > ! @ @ > C ! I ; B

D> XYD : @ < @ ! < A C @ @ A ? ! I < @ << ��� : @ ; C ! < > : @ @ > I ! I ; C

D< �pq : @ = @ ! < @ B @ @ @ @ ! I = @ <; '�H : @ @ Q ! < ; 8 @ @ < ! ! I @ Q

D; /fg : @ < ? ! < A I @ @ A = ! I < ? <@ �pqH : @ = ? ! < @ C @ @ @ ? ! I = ?

D@ �.�g : @ < = ! < A Q @ @ A B ! I < = <? ����%�����������$������ �pqM : ; < > ! > @ I @ < A < ! C < >

D? �H : @ < B ! < A ! @ @ A C ! I < B <=[�|h^��g�H

: @ @ ! ! < ; D @ @ < : ! I @ !

D= JbcH : @ < C ! < A : @ @ A I ! I < C ;K ���� : ; ; D ! > ? B @ < > A ! C ; D

AK EbcH : @ < I ! < > K @ @ A Q ! I < I ;8 ��H : @ ; I ! < < K @ @ > Q ! I ; I

A8 Y�� ¡ : @ < Q ! < > 8 @ @ A ! ! I < Q ;D ��M : @ ; Q ! < < 8 @ @ > ! ! I ; Q

¢QQ£&'(¤¥¦§�¨©ª£¥«¬

­®¯°§�±�$

!²¬³´µ¤ª£¥«¬­®

v¶·y!]^7´µ¤ª£¥¸^l�¹º»¼¥¦§�¨©ª£¥¸^l

v¶·y!]^7´µ¤ª£¥¸^l�¹º»¼¥¦§�¨©ª£¥¸^l

¯°§�±�$¢QQ£&'(¤¥¦§�¨©ª£¥«¬

­®

!²¬³´µ¤ª£¥«¬­®

½¾�]^_`Z&'(¹º¿ÀÁÂÃÄÅÁÆuǼ&'(ÈÉÊËÇuÌÍ 8Î88

DoCoMo au SoftBank

Page 41: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

!"#$%&'()*+,-./01

&'(23

45 -.67&'(23

45 -.67

8 9 : ; < = ! > ? 8 @ < A B ! C < = AD EFGH : @ < ! ! < > D @ @ A : ! I < !

D 9 : ; < B ! > ? D @ < A C ! C < B AA JFGH : @ < : ! < > A @ @ > K ! I < :

A L : ; < C ! > ? A @ < A I ! C < C A> EFGM : @ ; K ! < > > @ @ > 8 ! I ; K

> L : @ > ? ! < D I @ @ D = ! I > ? A< JFGM : @ ; 8 ! < > < @ @ > D ! I ; 8

< NOPFGH : @ > = ! < D Q @ @ D B ! I > = A; RSTH : @ ; D ! < > ; @ @ > A ! I ; D

; UOPFGH : @ > B ! < D ! @ @ D C ! I > B A@ RSTM : @ ; A ! < > @ @ @ > > ! I ; A

@ NOPFGM : @ > C ! < D : @ @ D I ! I > C A? VRWGH : @ ; > ! < > ? @ @ > < ! I ; >

? UOPFGM : @ > I ! < A K @ @ D Q ! I > I A= VRWGM : @ ; < ! < > = @ @ > ; ! I ; <

= XWGH : @ > Q ! < A 8 @ @ D ! ! I > Q >K RYH : @ ; ; ! < > B @ @ > @ ! I ; ;

8K XWGM : @ > ! ! < A D @ @ D : ! I > ! >8 RYM : @ ; @ ! < > C @ @ > ? ! I ; @

88.Z[\]^_`Z_Za7

: @ > : ! < A A @ @ A K ! I > : >D JbcM : @ ; ? ! < > I @ @ > = ! I ; ?

8D d.Zefg : ; = B ! > I 8 @ < @ B ! C = B >A EbcM : @ ; = ! < > Q @ @ > B ! I ; =

8A gh^i : ; ! B ! < 8 8 @ ; ; I ! C ! B >> jk : ; ; K ! > ? ? @ < > 8 ! C ; K

8> l7 : @ = ; ! < @ = @ @ @ ; ! I = ; >< mna^7 : ; = A ! > C B @ < @ A ! C = A

8< oH : ; < ! ! > ? ; @ < A : ! C < ! >; pq : @ C 8 ! < = > @ ? A A ! I C 8

8; rstu : ; < : ! > ? @ @ < > K ! C < : >@ oMvwxPy : ; ; 8 ! > ? = @ < > D ! C ; 8

8@ zWGH : @ < K ! < A > @ @ A 8 ! I < K >? {7 : ; ! C ! < 8 D @ ; ; Q ! C ! C

8? zWGM : @ < 8 ! < A < @ @ A D ! I < 8 >=/|_}hZv4~y

: @ @ I ! < ; K @ @ < Q ! I @ I

8= XSTH : @ < D ! < A ; @ @ A A ! I < D <K Xw : ; Q A ! > : B @ ; < < ! C Q A

DK XSTM : @ < A ! < A @ @ @ A > ! I < A <8 �^6 : @ C D ! < = < @ ? A > ! I C D

D8 RWGH : @ < > ! < A ? @ @ A < ! I < > <D���^�vi��7efgy

: ; = C ! > I D @ < @ C ! C = C

DD RWGH : @ < < ! < A = @ @ A ; ! I < < <A Wx� : ; ! I ! < 8 A @ ; ; ! ! C ! I

DA XYH : @ < ; ! < A B @ @ A @ ! I < ; <>6�^l�^�v��y

: @ ; B ! < > ! @ @ > C ! I ; B

D> XYD : @ < @ ! < A C @ @ A ? ! I < @ << ��� : @ ; C ! < > : @ @ > I ! I ; C

D< �pq : @ = @ ! < @ B @ @ @ @ ! I = @ <; '�H : @ @ Q ! < ; 8 @ @ < ! ! I @ Q

D; /fg : @ < ? ! < A I @ @ A = ! I < ? <@ �pqH : @ = ? ! < @ C @ @ @ ? ! I = ?

D@ �.�g : @ < = ! < A Q @ @ A B ! I < = <? ����%�����������$������ �pqM : ; < > ! > @ I @ < A < ! C < >

D? �H : @ < B ! < A ! @ @ A C ! I < B <=[�|h^��g�H

: @ @ ! ! < ; D @ @ < : ! I @ !

D= JbcH : @ < C ! < A : @ @ A I ! I < C ;K ���� : ; ; D ! > ? B @ < > A ! C ; D

AK EbcH : @ < I ! < > K @ @ A Q ! I < I ;8 ��H : @ ; I ! < < K @ @ > Q ! I ; I

A8 Y�� ¡ : @ < Q ! < > 8 @ @ A ! ! I < Q ;D ��M : @ ; Q ! < < 8 @ @ > ! ! I ; Q

¢QQ£&'(¤¥¦§�¨©ª£¥«¬

­®¯°§�±�$

!²¬³´µ¤ª£¥«¬­®

v¶·y!]^7´µ¤ª£¥¸^l�¹º»¼¥¦§�¨©ª£¥¸^l

v¶·y!]^7´µ¤ª£¥¸^l�¹º»¼¥¦§�¨©ª£¥¸^l

¯°§�±�$¢QQ£&'(¤¥¦§�¨©ª£¥«¬

­®

!²¬³´µ¤ª£¥«¬­®

½¾�]^_`Z&'(¹º¿ÀÁÂÃÄÅÁÆuǼ&'(ÈÉÊËÇuÌÍ 8Î88

DoCoMo au SoftBank

U+E04A$Gj

U+E488F6607541EB60

F89FU+E63E

w/escapeSJIS

JISSJIS’

Unicode

Page 42: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

RegularEncodings

xEmoticon Encodings

Page 43: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

That’s not all.

Page 44: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Five sad stories:

Page 45: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

(1)

Page 46: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Sometimes the corresponding emoticon is not available on the other carriers.

Page 47: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

“Snow crystal”

auDoCoMo

SoftBank

N/A

N/A

Page 48: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

(2)

Page 49: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Nuances may be lost during the

translation.

Page 50: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

http://www.j-cast.com/kaisha/2009/07/31046442.html

「ホントにつまらないことなんですけど、ケータイが原因で彼女と喧嘩しちゃって…」と話すのは、首都圏に住む会社員のAさん(20代)。

“Really nonsense, but I had a quarrel with my girlfriend because of a problem with mobile phones.”- Mr. A (20-year-old office worker, Tokyo)

「彼女とケンカ」の原因「絵文字が変換されない!」

Page 51: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

(3)

Page 52: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Machine-readable tables are not

published.

Page 53: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

!"#$%&'()*+,-./01

&'(23

45 -.67&'(23

45 -.67

8 9 : ; < = ! > ? 8 @ < A B ! C < = AD EFGH : @ < ! ! < > D @ @ A : ! I < !

D 9 : ; < B ! > ? D @ < A C ! C < B AA JFGH : @ < : ! < > A @ @ > K ! I < :

A L : ; < C ! > ? A @ < A I ! C < C A> EFGM : @ ; K ! < > > @ @ > 8 ! I ; K

> L : @ > ? ! < D I @ @ D = ! I > ? A< JFGM : @ ; 8 ! < > < @ @ > D ! I ; 8

< NOPFGH : @ > = ! < D Q @ @ D B ! I > = A; RSTH : @ ; D ! < > ; @ @ > A ! I ; D

; UOPFGH : @ > B ! < D ! @ @ D C ! I > B A@ RSTM : @ ; A ! < > @ @ @ > > ! I ; A

@ NOPFGM : @ > C ! < D : @ @ D I ! I > C A? VRWGH : @ ; > ! < > ? @ @ > < ! I ; >

? UOPFGM : @ > I ! < A K @ @ D Q ! I > I A= VRWGM : @ ; < ! < > = @ @ > ; ! I ; <

= XWGH : @ > Q ! < A 8 @ @ D ! ! I > Q >K RYH : @ ; ; ! < > B @ @ > @ ! I ; ;

8K XWGM : @ > ! ! < A D @ @ D : ! I > ! >8 RYM : @ ; @ ! < > C @ @ > ? ! I ; @

88.Z[\]^_`Z_Za7

: @ > : ! < A A @ @ A K ! I > : >D JbcM : @ ; ? ! < > I @ @ > = ! I ; ?

8D d.Zefg : ; = B ! > I 8 @ < @ B ! C = B >A EbcM : @ ; = ! < > Q @ @ > B ! I ; =

8A gh^i : ; ! B ! < 8 8 @ ; ; I ! C ! B >> jk : ; ; K ! > ? ? @ < > 8 ! C ; K

8> l7 : @ = ; ! < @ = @ @ @ ; ! I = ; >< mna^7 : ; = A ! > C B @ < @ A ! C = A

8< oH : ; < ! ! > ? ; @ < A : ! C < ! >; pq : @ C 8 ! < = > @ ? A A ! I C 8

8; rstu : ; < : ! > ? @ @ < > K ! C < : >@ oMvwxPy : ; ; 8 ! > ? = @ < > D ! C ; 8

8@ zWGH : @ < K ! < A > @ @ A 8 ! I < K >? {7 : ; ! C ! < 8 D @ ; ; Q ! C ! C

8? zWGM : @ < 8 ! < A < @ @ A D ! I < 8 >=/|_}hZv4~y

: @ @ I ! < ; K @ @ < Q ! I @ I

8= XSTH : @ < D ! < A ; @ @ A A ! I < D <K Xw : ; Q A ! > : B @ ; < < ! C Q A

DK XSTM : @ < A ! < A @ @ @ A > ! I < A <8 �^6 : @ C D ! < = < @ ? A > ! I C D

D8 RWGH : @ < > ! < A ? @ @ A < ! I < > <D���^�vi��7efgy

: ; = C ! > I D @ < @ C ! C = C

DD RWGH : @ < < ! < A = @ @ A ; ! I < < <A Wx� : ; ! I ! < 8 A @ ; ; ! ! C ! I

DA XYH : @ < ; ! < A B @ @ A @ ! I < ; <>6�^l�^�v��y

: @ ; B ! < > ! @ @ > C ! I ; B

D> XYD : @ < @ ! < A C @ @ A ? ! I < @ << ��� : @ ; C ! < > : @ @ > I ! I ; C

D< �pq : @ = @ ! < @ B @ @ @ @ ! I = @ <; '�H : @ @ Q ! < ; 8 @ @ < ! ! I @ Q

D; /fg : @ < ? ! < A I @ @ A = ! I < ? <@ �pqH : @ = ? ! < @ C @ @ @ ? ! I = ?

D@ �.�g : @ < = ! < A Q @ @ A B ! I < = <? ����%�����������$������ �pqM : ; < > ! > @ I @ < A < ! C < >

D? �H : @ < B ! < A ! @ @ A C ! I < B <=[�|h^��g�H

: @ @ ! ! < ; D @ @ < : ! I @ !

D= JbcH : @ < C ! < A : @ @ A I ! I < C ;K ���� : ; ; D ! > ? B @ < > A ! C ; D

AK EbcH : @ < I ! < > K @ @ A Q ! I < I ;8 ��H : @ ; I ! < < K @ @ > Q ! I ; I

A8 Y�� ¡ : @ < Q ! < > 8 @ @ A ! ! I < Q ;D ��M : @ ; Q ! < < 8 @ @ > ! ! I ; Q

¢QQ£&'(¤¥¦§�¨©ª£¥«¬

­®¯°§�±�$

!²¬³´µ¤ª£¥«¬­®

v¶·y!]^7´µ¤ª£¥¸^l�¹º»¼¥¦§�¨©ª£¥¸^l

v¶·y!]^7´µ¤ª£¥¸^l�¹º»¼¥¦§�¨©ª£¥¸^l

¯°§�±�$¢QQ£&'(¤¥¦§�¨©ª£¥«¬

­®

!²¬³´µ¤ª£¥«¬­®

½¾�]^_`Z&'(¹º¿ÀÁÂÃÄÅÁÆuǼ&'(ÈÉÊËÇuÌÍ 8Î88

http://creation.mb.softbank.jp/web/web_pic_01.html

http://www.au.kddi.com/ezfactory/tec/spec/pdf/typeD.pdf

http://www.nttdocomo.co.jp/service/imode/make/content/pictograph/basic/

Page 54: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

(4)

Page 55: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

The official tables are not complete.(e.g. emoticons of

prior company name are hidden)

Page 56: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

(5)

Page 57: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Assignments of Unicode private area

are partially overlapping

between two carriers.

Page 58: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Solution:

Page 59: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

jpmobile

Page 60: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

!"#$%&'()*+,-./01

&'(23

45 -.67&'(23

45 -.67

8 9 : ; < = ! > ? 8 @ < A B ! C < = AD EFGH : @ < ! ! < > D @ @ A : ! I < !

D 9 : ; < B ! > ? D @ < A C ! C < B AA JFGH : @ < : ! < > A @ @ > K ! I < :

A L : ; < C ! > ? A @ < A I ! C < C A> EFGM : @ ; K ! < > > @ @ > 8 ! I ; K

> L : @ > ? ! < D I @ @ D = ! I > ? A< JFGM : @ ; 8 ! < > < @ @ > D ! I ; 8

< NOPFGH : @ > = ! < D Q @ @ D B ! I > = A; RSTH : @ ; D ! < > ; @ @ > A ! I ; D

; UOPFGH : @ > B ! < D ! @ @ D C ! I > B A@ RSTM : @ ; A ! < > @ @ @ > > ! I ; A

@ NOPFGM : @ > C ! < D : @ @ D I ! I > C A? VRWGH : @ ; > ! < > ? @ @ > < ! I ; >

? UOPFGM : @ > I ! < A K @ @ D Q ! I > I A= VRWGM : @ ; < ! < > = @ @ > ; ! I ; <

= XWGH : @ > Q ! < A 8 @ @ D ! ! I > Q >K RYH : @ ; ; ! < > B @ @ > @ ! I ; ;

8K XWGM : @ > ! ! < A D @ @ D : ! I > ! >8 RYM : @ ; @ ! < > C @ @ > ? ! I ; @

88.Z[\]^_`Z_Za7

: @ > : ! < A A @ @ A K ! I > : >D JbcM : @ ; ? ! < > I @ @ > = ! I ; ?

8D d.Zefg : ; = B ! > I 8 @ < @ B ! C = B >A EbcM : @ ; = ! < > Q @ @ > B ! I ; =

8A gh^i : ; ! B ! < 8 8 @ ; ; I ! C ! B >> jk : ; ; K ! > ? ? @ < > 8 ! C ; K

8> l7 : @ = ; ! < @ = @ @ @ ; ! I = ; >< mna^7 : ; = A ! > C B @ < @ A ! C = A

8< oH : ; < ! ! > ? ; @ < A : ! C < ! >; pq : @ C 8 ! < = > @ ? A A ! I C 8

8; rstu : ; < : ! > ? @ @ < > K ! C < : >@ oMvwxPy : ; ; 8 ! > ? = @ < > D ! C ; 8

8@ zWGH : @ < K ! < A > @ @ A 8 ! I < K >? {7 : ; ! C ! < 8 D @ ; ; Q ! C ! C

8? zWGM : @ < 8 ! < A < @ @ A D ! I < 8 >=/|_}hZv4~y

: @ @ I ! < ; K @ @ < Q ! I @ I

8= XSTH : @ < D ! < A ; @ @ A A ! I < D <K Xw : ; Q A ! > : B @ ; < < ! C Q A

DK XSTM : @ < A ! < A @ @ @ A > ! I < A <8 �^6 : @ C D ! < = < @ ? A > ! I C D

D8 RWGH : @ < > ! < A ? @ @ A < ! I < > <D���^�vi��7efgy

: ; = C ! > I D @ < @ C ! C = C

DD RWGH : @ < < ! < A = @ @ A ; ! I < < <A Wx� : ; ! I ! < 8 A @ ; ; ! ! C ! I

DA XYH : @ < ; ! < A B @ @ A @ ! I < ; <>6�^l�^�v��y

: @ ; B ! < > ! @ @ > C ! I ; B

D> XYD : @ < @ ! < A C @ @ A ? ! I < @ << ��� : @ ; C ! < > : @ @ > I ! I ; C

D< �pq : @ = @ ! < @ B @ @ @ @ ! I = @ <; '�H : @ @ Q ! < ; 8 @ @ < ! ! I @ Q

D; /fg : @ < ? ! < A I @ @ A = ! I < ? <@ �pqH : @ = ? ! < @ C @ @ @ ? ! I = ?

D@ �.�g : @ < = ! < A Q @ @ A B ! I < = <? ����%�����������$������ �pqM : ; < > ! > @ I @ < A < ! C < >

D? �H : @ < B ! < A ! @ @ A C ! I < B <=[�|h^��g�H

: @ @ ! ! < ; D @ @ < : ! I @ !

D= JbcH : @ < C ! < A : @ @ A I ! I < C ;K ���� : ; ; D ! > ? B @ < > A ! C ; D

AK EbcH : @ < I ! < > K @ @ A Q ! I < I ;8 ��H : @ ; I ! < < K @ @ > Q ! I ; I

A8 Y�� ¡ : @ < Q ! < > 8 @ @ A ! ! I < Q ;D ��M : @ ; Q ! < < 8 @ @ > ! ! I ; Q

¢QQ£&'(¤¥¦§�¨©ª£¥«¬

­®¯°§�±�$

!²¬³´µ¤ª£¥«¬­®

v¶·y!]^7´µ¤ª£¥¸^l�¹º»¼¥¦§�¨©ª£¥¸^l

v¶·y!]^7´µ¤ª£¥¸^l�¹º»¼¥¦§�¨©ª£¥¸^l

¯°§�±�$¢QQ£&'(¤¥¦§�¨©ª£¥«¬

­®

!²¬³´µ¤ª£¥«¬­®

½¾�]^_`Z&'(¹º¿ÀÁÂÃÄÅÁÆuǼ&'(ÈÉÊËÇuÌÍ 8Î88

!"#$%&'()*+,-./01

&'(23

45 -.67&'(23

45 -.67

8 9 : ; < = ! > ? 8 @ < A B ! C < = AD EFGH : @ < ! ! < > D @ @ A : ! I < !

D 9 : ; < B ! > ? D @ < A C ! C < B AA JFGH : @ < : ! < > A @ @ > K ! I < :

A L : ; < C ! > ? A @ < A I ! C < C A> EFGM : @ ; K ! < > > @ @ > 8 ! I ; K

> L : @ > ? ! < D I @ @ D = ! I > ? A< JFGM : @ ; 8 ! < > < @ @ > D ! I ; 8

< NOPFGH : @ > = ! < D Q @ @ D B ! I > = A; RSTH : @ ; D ! < > ; @ @ > A ! I ; D

; UOPFGH : @ > B ! < D ! @ @ D C ! I > B A@ RSTM : @ ; A ! < > @ @ @ > > ! I ; A

@ NOPFGM : @ > C ! < D : @ @ D I ! I > C A? VRWGH : @ ; > ! < > ? @ @ > < ! I ; >

? UOPFGM : @ > I ! < A K @ @ D Q ! I > I A= VRWGM : @ ; < ! < > = @ @ > ; ! I ; <

= XWGH : @ > Q ! < A 8 @ @ D ! ! I > Q >K RYH : @ ; ; ! < > B @ @ > @ ! I ; ;

8K XWGM : @ > ! ! < A D @ @ D : ! I > ! >8 RYM : @ ; @ ! < > C @ @ > ? ! I ; @

88.Z[\]^_`Z_Za7

: @ > : ! < A A @ @ A K ! I > : >D JbcM : @ ; ? ! < > I @ @ > = ! I ; ?

8D d.Zefg : ; = B ! > I 8 @ < @ B ! C = B >A EbcM : @ ; = ! < > Q @ @ > B ! I ; =

8A gh^i : ; ! B ! < 8 8 @ ; ; I ! C ! B >> jk : ; ; K ! > ? ? @ < > 8 ! C ; K

8> l7 : @ = ; ! < @ = @ @ @ ; ! I = ; >< mna^7 : ; = A ! > C B @ < @ A ! C = A

8< oH : ; < ! ! > ? ; @ < A : ! C < ! >; pq : @ C 8 ! < = > @ ? A A ! I C 8

8; rstu : ; < : ! > ? @ @ < > K ! C < : >@ oMvwxPy : ; ; 8 ! > ? = @ < > D ! C ; 8

8@ zWGH : @ < K ! < A > @ @ A 8 ! I < K >? {7 : ; ! C ! < 8 D @ ; ; Q ! C ! C

8? zWGM : @ < 8 ! < A < @ @ A D ! I < 8 >=/|_}hZv4~y

: @ @ I ! < ; K @ @ < Q ! I @ I

8= XSTH : @ < D ! < A ; @ @ A A ! I < D <K Xw : ; Q A ! > : B @ ; < < ! C Q A

DK XSTM : @ < A ! < A @ @ @ A > ! I < A <8 �^6 : @ C D ! < = < @ ? A > ! I C D

D8 RWGH : @ < > ! < A ? @ @ A < ! I < > <D���^�vi��7efgy

: ; = C ! > I D @ < @ C ! C = C

DD RWGH : @ < < ! < A = @ @ A ; ! I < < <A Wx� : ; ! I ! < 8 A @ ; ; ! ! C ! I

DA XYH : @ < ; ! < A B @ @ A @ ! I < ; <>6�^l�^�v��y

: @ ; B ! < > ! @ @ > C ! I ; B

D> XYD : @ < @ ! < A C @ @ A ? ! I < @ << ��� : @ ; C ! < > : @ @ > I ! I ; C

D< �pq : @ = @ ! < @ B @ @ @ @ ! I = @ <; '�H : @ @ Q ! < ; 8 @ @ < ! ! I @ Q

D; /fg : @ < ? ! < A I @ @ A = ! I < ? <@ �pqH : @ = ? ! < @ C @ @ @ ? ! I = ?

D@ �.�g : @ < = ! < A Q @ @ A B ! I < = <? ����%�����������$������ �pqM : ; < > ! > @ I @ < A < ! C < >

D? �H : @ < B ! < A ! @ @ A C ! I < B <=[�|h^��g�H

: @ @ ! ! < ; D @ @ < : ! I @ !

D= JbcH : @ < C ! < A : @ @ A I ! I < C ;K ���� : ; ; D ! > ? B @ < > A ! C ; D

AK EbcH : @ < I ! < > K @ @ A Q ! I < I ;8 ��H : @ ; I ! < < K @ @ > Q ! I ; I

A8 Y�� ¡ : @ < Q ! < > 8 @ @ A ! ! I < Q ;D ��M : @ ; Q ! < < 8 @ @ > ! ! I ; Q

¢QQ£&'(¤¥¦§�¨©ª£¥«¬

­®¯°§�±�$

!²¬³´µ¤ª£¥«¬­®

v¶·y!]^7´µ¤ª£¥¸^l�¹º»¼¥¦§�¨©ª£¥¸^l

v¶·y!]^7´µ¤ª£¥¸^l�¹º»¼¥¦§�¨©ª£¥¸^l

¯°§�±�$¢QQ£&'(¤¥¦§�¨©ª£¥«¬

­®

!²¬³´µ¤ª£¥«¬­®

½¾�]^_`Z&'(¹º¿ÀÁÂÃÄÅÁÆuǼ&'(ÈÉÊËÇuÌÍ 8Î88

RailsApp

jpmobile

Automatically translate the emoticons.

Page 61: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

jpmobile supports GPS, session management,

subscriber identification, template switching, ...

Page 62: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Conclusion:

Page 63: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

If you are asked to build a website for Japanese mobile

phones,

Page 64: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Say “No.”

Page 65: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Or use jpmobile.

Page 66: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Future works:

Page 67: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Reimplement jpmobile on

Ruby 1.9 m17n framework!

Page 68: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Thank you!

Page 69: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Questions:

After the last speech.Thank you.

Page 70: From Japanese mobile-web world, to Latin-1 developers. (a part of "East Meets West")

Visit Sapporo!

Sapporo!

Tokyo San Fransisco11.15hrs1.4hrs

We’ll haveRegional RubyKaigi in Sapporo on 5th Dec 2009 :-)