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

Post on 26-Jun-2015

3.649 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

EastMeetsWest Yuki Sonoda

Yoji ShidaraAkira Matsuda

Shintaro Kakutani

EastMeetsWest Yuki Sonoda

Yoji ShidaraAkira Matsuda

Shintaro Kakutani

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

設樂 洋爾 (Yoji Shidara)yoji.shidara@enishi-tech.com

RubyConf 2009 2009-11-19

My name isYoji SHIDARA.

Enishi Tech Inc.Small Company.Only 2 staffs.

Small Office.(CEO’s flat)

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

“Enishi” implies:

“Tech” is for technology.

We’re from Japan!

Sapporo

Tokyo San Fransisco!9.5hrs1.4hrs

@kakutani@a_matsuda@yugui

@darashi (me)

Sapporo is a beautiful provincial city of Japan.

Delicious foods are waiting for you!

My works:

http://buzztter.com

Real-time trendstracker for twitter.

jpmobile

jpmobile:A Rails Plugin forJapanese Mobile

Phones.

jpmobile absorbs

Chaotic Specifications of Japanese Mobile

Phones.

Today,

I’m going to take you to the chaotic

world.

By the way,

We have kinds of characters.

サンフランシスコ で

緊張 しています!

We have kinds of characters.

I’m so nervous

at San Fransisco!

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

We have lots of characters.

Not only characters,

But alsoencodings!

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

Major Encodings:

UTF-8 is not the only option.

We’re still using these encodingsas the situation

demands.

Ruby 1.9 works nice with this

situation.

For example,

"札幌".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 “札幌”

Now we’re happy!

... in most cases.

Do you know

Emoji

Emoticon

E + Moji絵 + 文字

Picture + Character

Emoji makes the situation worse.

We have three major mobile phone carriers in Japan.

They define their own emoticon

charset.

(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

!"#$%&'()*+,-./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

RegularEncodings

xEmoticon Encodings

That’s not all.

Five sad stories:

(1)

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

“Snow crystal”

auDoCoMo

SoftBank

N/A

N/A

(2)

Nuances may be lost during the

translation.

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)

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

(3)

Machine-readable tables are not

published.

!"#$%&'()*+,-./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/

(4)

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

prior company name are hidden)

(5)

Assignments of Unicode private area

are partially overlapping

between two carriers.

Solution:

jpmobile

!"#$%&'()*+,-./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.

jpmobile supports GPS, session management,

subscriber identification, template switching, ...

Conclusion:

If you are asked to build a website for Japanese mobile

phones,

Say “No.”

Or use jpmobile.

Future works:

Reimplement jpmobile on

Ruby 1.9 m17n framework!

Thank you!

Questions:

After the last speech.Thank you.

Visit Sapporo!

Sapporo!

Tokyo San Fransisco11.15hrs1.4hrs

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

top related