4月19日に公開された技術者のためのトークライブイベント「TechLION vol.12」のレポート記事を受け、早速「エンジニアが『好き』と伝えるためのAPI」が実装された。
技術者のためのトークライブイベント「TechLION vol.12」が、4月18日に開催された。イベントでは、「私のこと好き?」と聞く文系女子に対し、「APIを用意するから、不安になったらそこにアクセスしてよ」とまっすぐに答える「エンジニア思考」が注目を集めた。後日公開したレポート記事でも大きな反響があり、ついにはこんなコメントが寄せられた。
こうして、4月21日、「エンジニアが『好き』と伝えるためのAPI」が完成した。API開発者の@oh_sky氏によれば、「いつ彼女ができても大丈夫なように、このAPIを実装することにした」という。仕様・ソースコードは以下のとおり。
<?php App::uses('AppController', 'Controller'); class YoshioriController extends AppController { public function index() { $message = ''; $lang = 'ja'; if( isset($this->request->query['q']) && preg_match('/love/',$this->request->query['q']) ){ //英語対応 $lang = 'en'; $message = 'I love you.'; } else if( isset($this->request->query['q']) && preg_match('/((好|す)き|愛してる)[\??]?/u',$this->request->query['q']) ){ //レスポンスのデフォルトは日本語 //レスポンスにランダム性を持たせる $message_ary = array( '好きだよ。', '愛してる。', ); $message = $message_ary[mt_rand(0,count($message_ary)-1)]; } else{ $message = 'ん?'; } $response = array( 'lang'=>$lang, 'message'=>$message, ); //jsonで返す $this->set('response',$response); $this->viewClass = 'Json'; $this->set('_serialize','response'); } }
実際に、API使用例として挙げられている http://oh-sky-ohsky.sqale.jp/yoshiori?q=do+you+love+me にアクセスすると、 {"lang":"en","message":"I love you."} とレスポンスがある。また、日本語にも対応しており、「私のこと、好き?」と聞くと {"lang":"ja","message":"\u597d\u304d\u3060\u3088\u3002"} と日本語で返してくれるのも特徴だ。
現状の大きな問題点としては、不特定多数の人に「I love you.」「好きだよ。」とレスポンスしてしまうため人間関係のもつれが想定されるほか、質問内容の解析が不十分なため「リカコのこと、好き?」などと他の女性の名前を入力すると「好きだよ。」と浮気をあっさりと認めてしまうことだ。
文系女子は覚悟を。エンジニアの頭の中は、わけが分からなくて面白い。詳細は、GitHubに公開されている。
Copyright © ITmedia, Inc. All Rights Reserved.