YAPC::Asia Tokyo 2010 - Japan's Perl Week

Autumn is the best season for Perl hackers to come to Japan as we have the YAPC::Asia in Tokyo. This year, at September 15-16, I attended the great conference held at the Tokyo Institute of Technology Univ.


  Thursday, September 14 - Pre-Conference Meetup 

One day before the conference, we had the PerlCasual#4 developer meetup event organized by @yusukebe. The event was born as the antithesis of Shibuya.pm's technical talk events which were filled by too deep talks, such like x86, XS, binary etc., by super-guru hackers. Casual developers need another place.

At the event, I gave at a lightening talk "Reporting OSDC.TW - Shibuya.pm in Taipei." This April, we went the OSDC.TW 2010 conference in Taiwan. Shibuya.pm people, including me, gave talks there.

The first half of my talk reports the event and the reason we went there.
And the second is about my 3D JavaScript talks.
Try my slide here and push [3] key on your keyboard to view slides in 3D mode.


Photo (left): @obra's T-shirt shows he is a "Strange Alien."
(right): the Acmencyclopedia 2010 at the after-party of day #0.

  Friday, September 15 - Conference Day #1

At the first day of the conference, I and my colleague @iandeth gave a talk. His slides are here. My part is about the Mashup Awards 6 (MA6), Japan's largest web application development contest. My slides are here.


The day #1's after-party was the official party held in the venue.
@clkao's T-shirt shows "Taiwanese." It's easy for us to see his nationality.


My ex-colleague @tsuyoshikawa is a Ruby guy but now working at a large PHP company. The company ordered him to give a talk at the Perl conference. It seems he is drunken from the stresses. :)

  Saturday, September 16 - Conference Day #2

Day #2 was Saturday and sunny. Some speakers went down to a BoF looked like a picnic to have a beer under the sun.


On the other hand, as the closing keynote, @miyagawa gave us the great talk filled with many of suggestions and encouragements for developers. The talk was this year's best talk in my opinion.


He showed us the "Secret of success" that he found during his work for Plack and his other projects.
Secret of success

* Good artists borrow, Great artists steal
* Better late than too early
* JFDI (Just f* do it)
* STFUAWSC (Shut the f* up and write some code)
* TIMTOWTDI (There is more than one way to do it.)
  BSCINABTE (But sometimes consistency is not a bad thing either)
* KISS (Keep it simple, stupid)
* glue language
* Naming

Thank you so much, the YAPC organizers and volunteers.

  Sunday, September 17 - Hackathon

Sunday, we had the post-conference-hackathon at @hidek's.



After the hackathon, we went to a Chankonabe restaurant near @hidek's as the 4th after-patry. We had too many after-parties this week with a lot of fun!

  Related Posts

Encode::JP::Emoji 0.60 Supports Unicode 6.0 Emoji!

October 11, Unicode Consortium released Unicode Version 6.0 including Emoji code points and the mapping table. Then, today, I've just shipped Encode::JP::Emoji version 0.60 which supports encoding conversion for variant emojis between Unicode 6.0 and Japanese mobile phone carriers as a fast pure Perl module.
use Encode;
use Encode::JP::Emoji;

my $sun = "\xF8\x9F";
Encode::from_to($sun, 'x-sjis-e4u-docomo', 'x-utf8-e4u-unicode');
# U+2600

my $watch = encode_utf8 "\x{231A}";
Encode::from_to($watch, 'x-utf8-e4u-unicode', 'x-utf8-e4u-kddiapp');
# U+E57A
The code above means:
$sun: from DoCoMo's F8F9 (Shift_JIS) to Unicode 6.0's U+2600.
$watch: from Unicode 6.0's U+231A to KDDI's U+E57A (UTF-8). 

Encode::JP::Emoji's Encodings

Encode::JP::Emoji modules provides numbers of encodings.
Check the figures below to see which encoding to fit for your use. 

Group #1 uses each carrier's private code points as Perl's internal string which has UTF-8 flag on.

Group #2 uses Googles's private code points internaly. This means Google's encoding could be the interchange encoding for others.

Group #3 also uses Google's internal.
See Unicode 6.0's emojis are supported here.

Tha last group #4 rejects any emojis above.
Use this group with FB_EMOJI_TEXT fallback function.

For more detail, see POD documents on CPAN.

* Original post of this is posted in Japanese.

img2html - bookmarklet for blog posting with flickr, picasa, etc.

The img2html bookmarklet below helps you to get a html source code with a <img> element which refers photo sharing service, ex. Yahoo's Flickr, Google's Picasa Web Album, etc.


You can also try just to click the link above for testing on the site.
It generates HTML source code like below:
<a href="Page URL" target="_blank" title="Page Title"><img src="Image URL" width="Image Width" height="Image Height" border="0" alt="Image ALT" /></a>
The largest image on page is picked up by the bookmarklet.
This works on flickr.

Also works on Picasa Web Album and any other websites.

Related Posts

Cantonese Alphabet - iPhone app for traveling in Hong Kong

The Canotonese Alphabet mobile application is now available on iTunes App Store. This helps you to read Cantonese, spoken in Southern China including Hong Kong. It's just US$1.99. But this now!

To enter Cantonese phrases, use iOS's built-in Traditional Chinese hand-writing keyboard. The app also have online translation feature. This means you can translate English to Cantonese to read them in Cantonese.

The Last Piece

This was the latest member of the series of my Asian Alphabet applications.

Complete all five apps for Korean (Hangul), Chinese (Simplified and Traditional), Japanese and Cantonese!

Related Posts

Japanese Alphabet - iPhone App for Kanji and Kana

The Japanese Alphabet mobile application for iPhone / iPod Touch is now on sale at App Store. This helps you to read Japanese phrases when you come to Japan, study Japanese, order something at Japanese restaurants, etc. It's just USD $1.99. Buy this now!

This allows you to enter Japanese in serveral ways. First, Hiaragana software keyboard. Originally iOS doesn't have the feature but the app has.

Second, Katakana software keyboard. Again, you can easily select a Kana character you want to enter by clicking it from the list.

You can also use iOS's built-in Traditional Chinese character hand-writing keyboard. Note that most of Kanjis used in Japan are same to Kanjis used in Taiwan. Differences are intelligently corrected by the app.

At last, you can call Google Translate from the app. Entering English phrases, you will get Japanese phrases translated and see how to read them.

Related Posts

Yapcasia-en Group Opened! CFP Until August 31! #yapcasia

I've opened the yapcasia-en group which is a mailing list for YAPC::Asia's speakers, guests and all YAPC lovers. Feel free to join the group when you have an interest in the largest Perl conference on the globe!

About YAPC::Asia Tokyo 2010

Dates: October 15-16, 2010
Venue: Tokyo Institute Of Technology, Oo-okayama, Tokyo, Japan
Map: http://maps.google.com/?cid=974026751406604607
Twitter: http://twitter.com/yapcasia
Website: http://yapcasia.org/2010/

Note that Call For Paper is open until the next Tuesday, August 31. Go to the form to submit your proposal.

Related Posts

* Meet again at YAPC::Asia 2010 Tokyo in October
* Corporate Perl in Recruit, OpenSocial and Emoji‎ - YAPC::Asia 2009 Tokyo
* YAPC::Europe 2009 Reports (ja)
* YAPC::Europe 2008 Summary (ja)
* YAPC::NA 2008 in Chicago
* YAPC::Asia 2008 Tokyo - DOM manipulation by Wiimote/Gainer over HTTP
* YAPC::Asia 2007 Tokyo + Party + Hackathon
* [YAPC] YAPC::Asia 2006 Sessions (ja)

@yapcasia's Official Tweet

For the visitors from abroad @kawanet has kindly taken to organize a mailing list http://bit.ly/cnEqFf #yapc #yapcasialess than a minute ago via Echofon

Shibuya.js won the prize at LT championship, LLTiger

July 31st, the Japan UNIX Society hosted the LL Tiger conference as a series of their annual Lightweight Language developer events. Eight teams competed at the lightening talks tournament championship held in the conference. Our team of Shibuya.js, Tokyo-based JavaScript developers group, did it to win the first prize at the hard knockout competition!

Preliminary Round

Just a day before the championship, we Shibuya.js members had an tech meetup event titled Shibuya.js beyond HTML5 as the preliminary round to pick up the presenters.

(photo by @takesako)

At the pre-round, three speakers, @gyuque, @yukoba and me was selected.

The First Round - @gyuque

On the following day, our presenter for the first round was @gyuque. He gave a talk about a software modem implemented by JavaScript. His JavaScript FSK modulator generates sound waves for data payloads. Then it plays generated .wav data encoded in base64 via data: scheme through HTML5's <audio> element.

See also @gyuque's slides on Slideshare.

The Second Round - @kawanet

At the semi-final match, I @kawanet gave a talk about 3D JavaScript. The talk was enhanced since I gave the former talk at OSDC.TW 2010 in Taipei.

See also my slides.
* Right cursor or mouse click - Proceed to the next
* Left cursor - Back to the previous
* 0 key - Return to the first slide
* 3 key - Toggle 3D mode and 2D mode
* Use red-blue glasses to see anaglyph 3D.

At the intermission after the first round, we decided to add an additional demo for the second round. Our JavaScript guru @gyuque wrote the real-time 3D demo below within just 30 minutes.

The Final Round - @yukoba vs. @takesako

At the final, our last speaker @yukoba fighted against @takesako from the Project-D Team. He is a tough rival as he is also a member of our Shibuya.js group. This means the last match is blue-on-blue.

Takesako gave a talk about an 8086 assembler implemented by JavaScript. The assembler is not normal but generates bytes covered with many ASCII arts of smileys like [^_^].

At Yukoba's turn, he gave a talk about a JVM including MIDP implemented by JavaScript. He compiles .class binary files of Java to .js source code files of JavaScript. The compiled code runs on his JS-based JVM which works on HTML5 web browsers including Google Chrome and WebKit. It means mobile phone applications for MIDP devices would run on iPhone and Android phones without any codes changed. I'm sure that his system has incredible potential for mobile game market.

See also @takesako's slides and @yukoba's video from 07:40 on Ustream.

I won an iPad!

Our team Shibuya.js won the championship at last. As the bonus prize, I got an iPad. Thanks!

Invitations for other tournaments are welcomed. ; )

Related Posts

The 2nd JUI Conference in Adobe MAX Japan 2009 - Feb 2009
The JUI 2008 Tokyo was over - Jun 2008
John Resig and The Future of JavaScript - Oct 2007
"Shuccho Shibuya.JS 24" in Mozilla 24 - Sep 2007

About Shibuya.js, see also John Resig's post.

* Original post written in Japanese is here

Memorial Service for Google Wave at Google's Tokyo Office

Tokyo, Japan - Japanese developers have held the memorial service for Google Wave somberly at Google's Tokyo office. Grieving attendees held a condolence telegram and the deceased's deadee.

Google Japan respectfully provided their new Roppongi office as a venue for the memorial service and made an arrangement to style the wallpapers in monotone.

The chief mourner, Yasushi Ando (@technohippy), pensively signed his new Google Wave introductory book which is just published this week.

A Googler behaved just positively in her video message which filled our eyes with waves of tears.

Sorry, but too many jokes covered around whole of the memorial service, in fact! :)

We all attendees enjoyed the convivial event with beers, wines and laughs.

The three types of Wave T-shirts above are now rarely acquirable though.

Thank you, Google Wave, we will never forget you on the cloud.

What is the coming next service listed on Google Graveyard?

* Japanese version of this post is here

RT Bookmarklet for Unofficial Retweet Format "RT @kawanet:" of #Twitter.

I love writing bookmarklets these days. :)

The RT bookmarklet helps you to post a retweet by unofficial style like "RT @kawanet: ..."

[ RT ]

Use the RT bookmarklet on tweet status (detail) page like below:

The tweet content will be quoted in a new tweet:


This also runs at any other domain of twitter.com as a shortcut for http://twitter.com/ top.


2010.10.09 #NewTwitter interface supported.

* Original post of this is written in Japanese.