LiquidFun ライブラリは C++ で書かれているため、C++ コンパイラを持つプラットフォームであれば利用することができます。Google では、このライブラリ活用を支援するため、LiquidFun ライブラリ構築メソッド、アプリケーションのサンプル、ユニット テストを Android、Linux、OSX、Windows それぞれについて用意しました。

Google では、LiquidFun がどのように活用されるのかを楽しみにしていると同時に、これをさらに良いものにするために皆さんからのご意見やご感想をお待ちしています。最新版は、GitHub のLiquidFun プロジェクト ページからダウンロードできます。また、ディスカッション リストへのご参加もお待ちしています。

Google Play ゲーム Unity 用プラグイン

Unity Technologies が開発した複数プラットフォーム対応のゲーム エンジンである Unity を使っているゲーム開発者向けに、Google Play ゲームの Unity 用プラグインを新たに提供いたします。これを使うことで、ゲーム サービスをもっと簡単に統合できるようになります。このプラグインの初期バージョンでは、sign-in(サインイン)、achievements(ゲーム実績)、leaderboards(ランキング)、cloud save(クラウド保存)を Android と iOS の両方でサポートしています。プラグインとドキュメント、サンプル コードは、GitHub のPlay Games プロジェクト ページでダウンロードできます。

Google Play に新しいゲーム カテゴリを追加

2014 å¹´ 2 月、Play Store に「シミュレーション」「ロールプレイング」「教育」などの新しいゲーム カテゴリが追加されます。アプリケーション タイプが「ゲーム」であれば、現在、Google Play デベロッパー コンソールから、アプリの新しいカテゴリを選択できるようになっています。[ストアの掲載情報] の [新カテゴリ] フィールドにて、ゲームのカテゴリを予約設定します。Google Play でゲームのカテゴリが実際に変更されるのは、2014 å¹´ 2 月の新カテゴリの公開時となります。



Web Music ハッカソンとは、ブラウザで音声処理・信号処理を行う Web Audio API、外部 MIDI デバイスと連携をする Web MIDI API など、ブラウザの持つ音楽に関わる API を使って、一日でアプリケーションを制作しよう、というイベントです。

前回のハッカソンの様子

前回のハッカソンでは TENORI-ON から出力される音声を Web Audio API で解析し、MIDI メッセージの種類と合わせて画面の動作を制御する VJ アプリケーションが最優秀賞として選ばれました。



また、WebRTC の映像・音声入力機能(getUserMeida)を使った作品も複数制作され、そのうちの 1 つ「Whiteboard Drum」は Mozilla Developer Street(modestでも紹介されました。

今回のハッカソンでも Web Audio API/Web MIDI API に限らず、様々な API を使い、自由な発想で作品を作り上げてください。

一例として、WebRTC の P2P 通信を活用した映像と音声、MIDI メッセージをネットワーク越しに送受信するデモビデオをご紹介します。




イベントの詳細は下記のとおりです。

名称:Web Music ハッカソン #2
会場:Google 東京オフィス
日時:2014 å¹´ 1 月 18 日(土)10:00 - 18:00
会費:無料
主催:Web Music Developers JP、Google
協賛:AMEI (一般社団法人 音楽電子事業協会)
参加資格:Web Audio API、Web MIDI API に関するアプリケーション開発に関心をお持ちの方 (JavaScript を書いたことのある方)
※ MIDI の知識は必須ではありません。
定員:50 名
お申込み方法こちらのお申し込みフォームからご登録ください。(先着 50 名)
定員に達しましたので、受付を終了しました。
1 月 7 日より参加できる方宛に順次参加証をメールにて送付いたします。
注意事項
  • お申込みフォームに当日ハックしたいアイデアを記入していただきます。ハッカソン当日、チームを組みやすくする目的で、お名前は伏せさせていただき事前にオンラインで共有させていただく可能性がありますのであらかじめご了承ください。
  • 音が出るアプリケーションが多くなると予想されますので、ヘッドフォン(標準のフォーンプラグ)またはイヤホンのご持参をお願い致します。
  • チームで参加される方も、参加者全員のお申し込みが必要となります。
  • 当日使われる PC はご自身で準備をお願いします。
提供予定楽器:今回も、協賛である AMEI 様のご協力により、クリムゾンテクノロジー、KORG、Roland、Yamaha 各社から楽器、ガジェットを提供して頂ける予定です。

[クリムゾンテクノロジー]
[KORG]
[Roland]
[Yamaha]


ハッカソンとは何ですか?
ハッカソンとは、新しい技術を試す 1 つのおもしろい方法です。通常チームで行われ、新しいフレームワーク、API、言語を試すことに焦点を置いたイベントです。各チームでは実験を行ったり、アプリケーションを作ったりします。イベントの最後にはお互いの成果を評価し、表彰されることもあります。

誰が参加できますか?
経験豊富なソフトウェア開発者、ハードウェア開発者が招待されます。Web Audio API、Web MIDI API をハックする絶好の機会です。当日は楽器、ガジェットの提供を予定しておりますので、思う存分効率よくハックをしていただけます。

チームメンバー全員の参加登録が必要ですか?
はい。参加者の人数把握と入館の手続き上、チームで参加される場合もチームメンバー全員の登録をお願いします。

チームに入らないといけませんか?
いいえ、必ずしもチームに入る必要はありません。ただし、これまでのハッカソンをでは仲間が 1 人ないし 2 人はいた方がより多くのことを得られるようです。

チームに入りたいのですが、知っている人がいません。どうすればよいですか?
心配はご無用です。お申込時にアイデア、またはその欠片をご記入いただきます。その情報を元にしてハッカソンのキックオフ時にテーマの発表を行いますので、その場でご興味のあるテーマのチームに参加していただけます。


実際のデバイスにおけるパフォーマンスを計測したい場合はどうでしょう?

ChromeOS を含む Chrome Beta で、USB で接続されたデバイスの検知がネイティブでサポートされるようになりました。「ツール」 > 「デバイスを検証」メニューを選択するか、about:inspect を開いてください。設定は必要ありません。これまでのように adb コマンドラインツールを使ったり、拡張機能を入れる必要もありません。(*2)

USB で接続されている間、デバイスから DevTools に画面全体のスクリーンキャストを送信することが可能です。スクリーンキャストが利用可能な場合、Elements タブの横に専用のアイコンが表示されます。


キーボードやマウスのイベントも DevTools からデバイスに送信されるため、アプリのテスト中にデバイスに触れる必要もありません。




これら モバイルエミュレーションUSB デバッグ機能、スクリーンキャストによって、DevTools を使った開発や調査、デバッグはさらに手軽になることでしょう。Chrome Dev Summit 2013 で行われた Paul Irish のセッション動画 ã§ã“れらの機能のデモをご覧頂くことができます。

*1: DevTools の Settings > Overrides で 'Show Emulation' をチェックする必要があります。
*2: Windows ユーザーの方は USB デバイスドライバーをインストールする必要があります。


これからも、Google 日本語入力をよりよくしようと、チーム一同で開発を進めていきます。お気づきの点がありましたら、ぜひプロダクト フォーラムからお知らせください。みなさんのフィードバックがなによりの励みになります。



第 3 部:Frame.js

講演者 Mr.doob (Ricardo Cabello)

ブラウザ上でシェーダートライアングルを表示するのは第一歩に過ぎません。次のステップは、それらを使ってどんな面白いことをするかです。アーティストやデザイナー、アニメーター、モデラーを魅了するにはどうすればよいでしょう? Frame.js はそんなゴールを持ったライブラリ、兼エディタです。
このセッションでは、このツールの現バージョンの機能から、内部のつくりや使い方をご紹介していきます。

"Making the browser render millions of shaded triangles per second is just the first step. The challenge now is doing something interesting with all these triangles. For that we need to attract artists, designers, animators, modellers, etc. Frame.js is a library and editor that aims to do just that.
In this talk we'll look at the current version of the tool - the internals, the usage and maybe find new uses for it."

<イベント内容>

名称:Chrome Tech Talk Night #7
日時:2013 å¹´ 12 月 9 日(月) 19:30 - 21:00 (受付 19:00 〜 19:30)
   ※ 終了後、懇親会(軽食付き)を行う予定です。
場所:Google 東京オフィス 六本木ヒルズ森タワー
会費:無料
主催:Google
ハッシュタグ: #chromejp
内容:Three.js の開発者である Mr.doob 氏をゲストに WebGL についてお話しします。

※ 英日逐次通訳あり
※ 当日はライブ配信を行う予定です (ただし、諸事情により実施しない場合があります)。

<申し込み方法>

申し込みフォームよりお申し込みください。
定員に達しましたので、受付を終了しました。

先着順による受付です。定員は 100 名です。定員になり次第、受付を締め切ります。
なお、参加証は 12 月 6 日(金)より順次ご登録いただいたメールアドレス宛にお送りする予定です。

多くの皆様のご参加をお待ちしております。

  • 辞書を更新しました。

  • Windows 版の変更点

    同期機能の廃止について

    開発版にのみ搭載されていた同期機能を、2013 å¹´12 月以降を目安に廃止します。同期対象の辞書のデータは以下のいずれかの方法で保存できます。
    [11/15 Update] 安定版をリリースしました (1.12.1590.x)。変更内容は開発版に準じます。
    [11/28 Update] 開発版と安定版を更新しました ( 開発版 : 1.12.1601.x, 安定版 : 1.12.1591.x ) 。ローマ字変換が行われる前の文字列を変換候補に表示する機能を設定で無効化できるようにしました。また、同機能が安定版で常に無効になっている問題を修正しました。

    これからも、Google 日本語入力をよりよくしようと、チーム一同で開発を進めていきます。お気づきの点がありましたら、ぜひプロダクト フォーラムからお知らせください。みなさんのフィードバックがなによりの励みになります。
    Share on Twitter Share on Facebook


    Mobile Backend Starter は、サーバー側のコーディングの不要な Backend as a Service(BaaS)スタイルのバックエンドを Google App Engine 上に簡単にアップロードできる開発環境です。モバイル アプリケーション側のクライアント ライブラリを通じて、以下のバックエンド機能を利用できます。



    Mobile Backend Starter は App Engine のアプリケーションとしてアップロードされるため、ある程度の規模までは無償で運用できるほか、 App Engine の特長であるきわめて高いスケーラビリティと優れた信頼性を備えます。またクライアント側とバックエンド側両方のソースコードがオープンソースとして公開されていますので、バックエンドの機能拡張も容易です。いわば、BaaS と Platform as a Service(PaaS)を「いいとこ取り」した環境と言えます。

    Android デベロッパーの Ryan Harter は Mobile Backend Starter を用いて Android 向けアプリ Hashnote を開発し、またたく間に 20,000 ユーザーを獲得することに成功しました。

    「Mobile Backend Starter のおかげで Android 向けアプリの開発にフォーカスしながらもバックエンドの豊富な機能を簡単に活用できました。一番のポイントは、バックエンド側のソースが公開されておりブラックボックスではないことです。そのため、Hashnote 固有のロジックをすぐに追加できたほか、バックエンド内部のコードの書き方を学ぶこともできました。」(Ryan Harter)


    iOSのサポート

    今回、この Mobile Backend Starter に新たに iOS のサポートが追加されました。iOS 向けアプリにインストールしたライブラリを用いて、上述のバックエンド機能を直接呼び出せます。App Engine から iOS デバイスに対して Apple Push Notificcation Service (APNS) によるスケーラビリティと可用性の高いプッシュ通信を行うためのバックエンド設計が新たに導入されています。すでに Android 向けにサポートされていた Google Cloud Messaging によるプッシュ通信とも統合されており、iOS 向けアプリと Android 向けアプリの間で 1:1 や 1:N のメッセージングをとても簡単に実装できます。

    使ってみよう

    お手元に iPhone または iPad、および Xcode 開発環境があれば、以下のごく簡単な手順で Mobile Backend Starter を試せます(より詳しい手順はこちらをご覧ください)。

    1. App Engine 上にバックエンドをアップロードする
    2. iOS クライアントの zip ファイルをダウンロードする(GitHub リポジトリからソースコードのダウンロードも可能です)
    3. Xcode にインポートし、サンプルを実機上で動作させる(シミュレーターでは動作しません)

    また、Android 向けサンプルもついてもこちらの手順で試せます。

    今回の iOS のサポートによって、iOS と Android の両方をサポートするサービスを、サーバー側のコードを一切書かずとも簡単に構築できるようになりました。モバイル開発の経験はあるけどサーバー側の開発は苦手......という方は、ぜひ試してみてください。なお、Mobile Backend Starter については今年の Google I/O 2013 のセッション From Nothing to Nirvana in minutes: Cloud Backend for Your Android App でも詳しく紹介されていますので、スライドおよびビデオを合わせてご覧ください。


    Share on Twitter Share on Facebook


    日本では、GDG 京都、GDG 四国、GDG 九州それぞれのコミュニティが以下の日程で開催を予定しています。 参加を希望される方は、会場ごとに参加お申し込みフォームが用意されていますので、ご登録ください。

    ■イベント概要
    ●GDG DevFest Kyoto 2013
    日程:2013 å¹´ 10 月 19 日 (土) 12:30 - 18:40 (終了後、懇親会)
    場所:京都リサーチパーク
    内容:Android と Google Apps Script のコードラボ
    定員:35 名(Android: 20 名、Google Apps Script: 15 名)
    主催:GDG 京都
    詳細:http://goo.gl/hO3VDe

    ●すだちハッカソン - DevFest Season 2013
    日程:2013 å¹´ 11 月 2 日(土)13:30 から 4 日(月)12:00 まで
    概要:ハッカソン/他コミュニティとも合同で行う予定
    場所:徳島 - 神山バレー・サテライトオフィス・コンプレックス
    定員:30 名
    主催:GDG 四国
    詳細:http://goo.gl/elEUHp

    ●GDG 九州 DevFest 温泉 in 湯布院
    日程:2013 å¹´ 11 月 2 日(土)13:00 から 4 日(月)15:00 まで
    概要:ハッカソン
    場所:日本文理大学湯布院研修所(大分県由布市湯布院町川上 3374)
    定員:30 名
    主催:GDG 九州
    詳細:http://goo.gl/uI9Xt9

    GDG Devfest Season 2013 全体に関する情報はこちらをご覧ください。
    Share on Twitter Share on Facebook


    第 1 部 : Polymer と Web Components を使ったモダンアプリケーションの作り方 (Building modern apps with Polymer & Web Components)

    講演者 Eric Bidelman | Developer Programs Engineer

    Web components are a fundamentally different way of building web apps. Shadow DOM, templates, custom elements, and HTML Imports yield a huge boost in productive and allow us to finally create reusualbe, shareable components. In this session, you'll learn how to use Google's new framework Polymer to create web component-based applications.

    Web Components は、Web アプリケーションを構築するための根本的に異なる方法です。Shadow DOM、Templates、Custom Elements、および HTML Imports は開発生産性を大きく高めるとともに、再利用や共有が可能なコンポーネントを作成することができます。このセッションでは、Web Components によるアプリケーションを作成するための Google の新しいフレームワーク「Polymer」の使い方を紹介します。


    第 2 部 : ãƒ¢ãƒã‚¤ãƒ«ã‚¦ã‚§ãƒ– UX でよくある問題とその直し方 (Common UX problems on the mobile web and how to fix them)

    講演者 Paul Kinlan | Developer Advocate

    In this talk we will find some of the ux problems users and developers face on the mobile web and show you how you can solve them

    このセッションでは、モバイルウェブにおいて、ユーザや開発者が直面するUX 問題を明らかにし、その解決方法を紹介します。


    第 3 部 : ã‚¸ãƒ£ãƒ³ã‚¯ãƒã‚ºã‚¿ãƒ¼ã‚º: Chrome レンダリングパフォーマンス (Jank Busting: Chrome Rendering Performance)

    講演者 Tom Wiltzius | Product Manager

    Building applications that scroll and animate smoothly on the mobile web is hard! In this talk we'll walk through how to figure out what's going on in the browser's tiny brain when you apply complicated CSS styles or adjust them in JavaScript, and how you can use Dev Tools and GPU acceleration to make your site render faster.

    モバイルウェブにおいて、スクロールやアニメーションをスムーズに動かすアプリケーションを構築することは難しいですよね!このセッションでは、みなさんが複雑な CSS スタイルを適用したり、JavaScript でこうしたスタイルを調整する時に、ブラウザの中で何が起きているかを把握する方法、さらに、サイトを高速にレンダリングするために Dev Tools や GPU アクセラレータをどのように使うかをご紹介します。


    <イベント概要>
    名称 : Chrome Tech Talk Night #6
    日時 : 2013 å¹´ 10 月 29 日(火) 19:00 - 21:30 (受付 18:30 〜 19:30)
        ※ 終了後、懇親会(軽食付き)を行う予定です。
    場所 : Google 東京オフィス 六本木ヒルズ森タワー
    会費 : 無料
    主催 : Google

    ※ 英日逐次通訳あり
    ※ 当日はライブ配信を行う予定です (ただし、諸事情により実施しない場合があります)。


    <申し込み方法>
    申し込みフォーム よりお申し込みください。

    定員に達しましたので、受付を終了しました。

    なお、当日英語でのライトニングトークを行いたい方がいましたら、申し込みフォームで話したい内容を記載してください。ライトニングトーク希望者が多い場合は、お話しいただける方に後日連絡します。

    先着順による受付です。定員は 80 名です。定員になり次第、受付を締め切ります。
    なお、参加証は 10 月 21 日(月)より、順次ご登録いただいたメールアドレス宛にお送りする予定です。

    多くの皆様のご参加をお待ちしております。
    Share on Twitter Share on Facebook



    この Google 日本語入力パタパタバージョン開発の裏話を聞くため、開発チームに集まってもらいました。ウェブマスターの小久保浩大郎と三浦健、ソフトウェア エンジニアの椎野裕樹、山口辰久、小松弘幸、マーケティングの虫賀千絵の 6 人です。

    Q: Google 日本語入力チームは毎年様々なエイプリルフールネタを仕込んでいますね。まずは、なぜ今年はパタパタバージョンを作ることにしたのか、教えてください。

    小松: Google 日本語入力は過去 2 回、エイプリルフールをやってますので、その流れは最初から意識していました。2010 年のドラム キーボードはキーの数が多すぎたので、その反省から 2012 年はキーの数を 1 つにしたモールスバージョンを開発しました。

    山口: モールスバージョンにどんな課題があるのか? どんな改善ができるだろうか? と考えたところ......
    椎野: 和文モールス符号を全部覚えなければならないのは、明らかな欠点だと気付いたのです!

    一同:(コイツ...気付いてなかったのかよ... 最初からわかるだろ!)

    小久保: キーの数は 1 つのまま、何も覚えなくても使える入力方法は何だろうと考えたところ、ダーツで入力できないか?というアイディアが出ました。文字を並べた板にダーツを投げるのです。馬鹿馬鹿しいでしょ?

    山口: 「投げて当てる」と言えば、宝くじの抽選では番号を書いた回転する円盤に向かって矢を射りますが、同じ方法で日本語を入力できないか?というアイディアが出て...

    椎野: 「回転するもの」と言えば、スロットマシンでも入力できそうだ、というアイディアが出たんです。他に似たものとして、歌番組の順位発表で使われる回転表示板、駅の発着案内板が候補に上がり、最終的に「パタパタ」というアイディアに辿り着きました。


    初期のデザイン案

    Q: 開発はどのように進めたのですか?

    小松: 昨年同様に今年も実機(ハードウェア)とウェブ アプリケーション(ソフトウェア)の両方を作るつもりだったので、実機を山口が、ウェブ アプリを椎野が担当して並行して開発を進めました。今年はウェブ デザイナーの小久保もプロジェクトに参加してくれたので、サイト デザインを中心にビジュアル デザイン、UX デザイン全般を一任しました。

    小久保: 各自の役割分担が明確でお互いに依存することが少なかったので、並行開発は簡単でした。JavaScript と CSS3 で書かれた体験アプリをウェブサイトに埋め込むのも一日でできました。

    山口: 僕の方ではまず、パタパタの表示機構がどういう仕組みか調べるところから始めました。フラップ(パタパタと回転する板)を取り付けたドラムを正確に回転させることで特定の文字を表示するという、意外と単純なものであることがわかりました。ただ、フラップなどの部品を全部手作りするのは難しかったので既製品のパタパタ時計を分解して再利用しました。
    使うボタンは 1 つだけというコンセプトからボタンはなるべく大きく、目立つものを選びました。筐体はパタパタに合わせて一昔前の家電やコンピュータを意識したデザインになっています。
    モーターを正確に回転させ、また USB キーボードとして動作させるための電子回路部分は自作しました。これは去年のモールス キーの電子回路にモーターを 1 個制御する機能を付け加えたものになっています。

    電子回路部分。緑のボタンを押すとモーターが回ります。

    ビデオ撮影前に微調整。

    椎野: ユーザーが体験できるウェブ アプリについては昨年の実績があったので、パタパタを回転させるアニメーションさえ実装できれば、あとは何とかなると思ってました。アニメーション GIF を使うアイディアもあったのですが、タイミングの制御が難しそうだったので、素直に CSS3 のアニメーション機能を使うことにしました。CSS3 のアニメーション機能は比較的新しい機能で、当時の Chrome、Firefox、Internet Explorer は最新バージョンでしか満足にサポートされていなかったのが最大の欠点ですね。
    プログラム コードは昨年のモールスバージョンを大幅に再利用できると思っていたのですが、入力部分の仕様が細かく食い違っているため、予想よりもスクラッチから実装する部分が多かったです。

    体験アプリの最初のデモ。CSS3 アニメーションで回るだけの簡単なもの。

    小久保: ひとつの画面で多様なステータスを持つアプリ的性格の強いものだったのでそれらの管理と演出に苦労しました。アプリ的ということで、最初はタスク遂行効率を上げるためにユーザーの自由度を上げるモードレスな UI 設計を考えたのですが、今回の要件はシーンの演出・切り替えによってユーザーを誘導する性格の強いものだと気づいたため、シーンごとにユーザーの選択肢を制限したモーダルな設計に変更しました。
    またシェアする URL はハッシュにメッセージをそのまま持たせるだけというシンプルすぎる仕様にしました。これは意図的なもので、ハックを簡単にすることで入力が面倒で難しくてもメッセージ表示の演出だけでも楽しんでもらおうと考えました。

    Q: 技術的に工夫したところなど、教えてください。

    椎野: 強いて言えば、クロス ブラウザ対応のコストを下げるために Closure Library を使い、かな漢字変換に Google Transliteration API を使ったくらいでしょうか。少人数かつ短期間で開発するために、あまり凝ったことはせずにシンプルな作りにしたのが一番の工夫ですね。

    Q: なるほど。では、デザインで工夫したところがあれば、教えてください。

    小久保: 現在の仕事ではリアルな物体の写真を扱う機会があまりありません。ましてや何かの模倣というのは普段はしないことなので、ここぞとばかりに楽しんでやりました。本物の駅の表示機は既に大半が LED 表示のものに置き換わっていて、昔のものでも実際には文字単位でパタパタするものはなかったため、空港の発着表示板のデザインを参考にしたりしました。パネル自体のデザインを CSS3 で行うことも考えたのですが、今回はディティールに凝りたかったので画像で作りました。あと駅っぽい背景の写真は実際に晴れの休日を狙って自分で駅に行って写真を撮りました。サイトを公開してすぐにネットで「これは千駄ヶ谷駅の総武線ホームから新宿方向を写したものだな」と見抜かれたので鉄のみなさんはさすがだなと思いました。

    Q: 大変だったことはなんですか?

    椎野: ウェブ アプリのデモを作って試しに遊んでみると... かなりストレスを感じるんですよね。想像以上に入力しにくいことこの上ない。少しでも入力しやすくするために、細かい仕様については二転三転させています。

    小久保: 最初のアイディアは、ボタンを押すと回転し始めて、ボタンを離すと回転が止まり、文字が入力されるというものだったんですが、狙い通りの文字を入力するのが難しすぎて......

    椎野: そこで少しわかり難いですが、ボタンを離した瞬間に文字を入力するのではなく、1 秒半ほど遅れて文字が入力されるようにしました。この 1 秒半の間に再びボタンを押した場合は、文字を入力せずにパタパタを回転させ続けます。

    小松: 何を言っているのかわかり難いと思いますが、この仕組みがあると「ちょん、ちょん」と短くボタンを押していくことで、パタパタを 1 枚ずつゆっくりと回すことができるようになるんです。この「ちょん、ちょん」入力を使うと、比較的思い通りの入力ができます。

    山口: アイディアの面白さと、遊びやすさのバランスをとるのは難しいですねぇ... 去年は入力が難しすぎたので、今年は改善したかったのですが... 今年も結局難しかったですね。(苦笑)

    小松: 今年はアイディア出しもたいへん苦労しました。ドラム キーボードからモールスへの流れは、自然で思いつきやすかったんですけどねぇ。

    山口: キーの数が少なくて、何も覚えなくても使える、という観点から「毛筆入力」というアイディアもあったんですが、ペン入力と同じで実用的すぎるという欠点(?)からボツになりました。

    椎野: 何時間もミーティングルームに篭ってのブレインストーミングは、思い出したくないですね......


    Q: 最後の追い込みが大変だったと聞いていますが。。。

    椎野: しめきりこわい... こわいよ...。いろいろなことがギリギリでしたが、隠しコマンドは今年も実装しました。山手線やその他いくつかの主要路線の駅名や特急、急行などの列車種別を入力すると駅の発車メロディーが流れたり、ちょっと特別な動きをするんです。一部の方には気付いていただけたようで嬉しい限りです。

    三浦: 効果音の作成も苦労しました。やはり、パタパタというからには、音がしっかりパタパタしている必要があります。そこで、パタという音を作るために、いろいろな種類のカードを落としたり、弾いたりして数百種類の音をサンプリングしました。その中でイメージにあったものにフィルターをかけて加工していくという感じですね。1 文字ずつ回す場合と、一斉に回り出す場合ではそれぞれ気持ちいい音となるポイントが少し変わるので、そこも微妙に調整しています。発車メロディーは駅の雑踏を思い出しながら、できるだけ駅の雰囲気が出るように、超適当につくりました。

    小久保: こ、こわいよ...。最後の最後で休日なのになぜかオフィスにいた人を捕まえてユーザー テストをしてみたところ、やはり操作方法を理解するのが難しそうだ、という問題が発覚したので急遽ヘルプを実装したりしました。まあそれが必要かもしれないというのはある程度予測はしていましたが、やはり説明なしで理解してもらえるのが理想なのでちょっと悔しいですね。


    怖い思いもしたけれど、ローンチできて本当に良かった...

    Q: パタパタバージョンを自作してみたいという方のため、基板の回路がオープンソース化されたとのこと。詳細を教えてください。

    山口: こちらに、2012 年のモールスバージョンと共にソースコードを公開してあります。
    https://code.google.com/p/mozc-morse/

    山口: パタパタ装置の設計図も一緒に公開できると良かったのですが、今回撮影用に作った装置には既製品の部品を流用したのでその部分はありません。電子回路部分とファームウェア部分のみ自作したので、この部分を公開しています。ただ、パタパタ装置が用意できない場合でも適当なモーターを用意していただければ写真のようにして使うことができます。

    電子回路とステッピングモーターを組み合わせてテストしているところ。
    USB ケーブルで Android に接続して入力している。
    ステッピングモーターにはパタパタの代わりに円盤を付けている。

    Q: パタパタとキー入力はどうやって連動させているのでしょうか?

    山口: ドラムを回すために、写真に写っているステッピングモーターを使っています。これは複数のコイルに順次通電することで少しずつ、例えば 1 周の 200 分の 1 ずつ回転させ、正確に止めることのできるモーターです。電子工作の入門書などでよく取り上げられていますので、見たことのある方もおられるかもしれません。プログラムは基準位置からどれだけ回転させたかを常に数えていて、今どの文字が表示されているかを把握しています。ボタンを離してドラムが停止すると、この文字が入力されます。

    Q: 実機の開発で苦労したことはなんですか?

    山口: ファームウェアを限られた容量に収めるのに苦労しました。開発期間の都合で去年のモールスキーと同じワンチップマイコンを使ったため、ROM の容量が 2,048 byteしかなかったのです。現在実機に載っているプログラムで 2,028 byte あり、ほぼぎりぎりの大きさです。実機をかな入力ではなくローマ字入力にしているのもこれがひとつの理由です。平仮名よりも文字数の少ない英数字にすることで容量を節約しています。

    Q: 最後に Google 日本語入力スペシャルバージョンの開発について、今後の展望を教えてください。

    小松: こちらのビデオの後半に登場するメガネ バージョンも鋭意開発中です(キリッ)。ただ、早くも大きな課題が見つかっていまして... パタパタの風でドライアイになってしまうんですね。目薬を持ち歩かなくてはならないとなると、せっかくの携帯性が損なわれてしまいます。この部分さえうまく解決できれば、実用化は近いと考えています。


    開発中のメガネ バージョン。

    小久保: とりあえずあの試作機はとんでもなく重いので、軽量化のうえ年内にはなんとか実用化の目処をつけたいですね、はい。


    重いメガネ バージョンを装着中の小久保。本当に重い。とんでもなく重い。

    Q: 皆さん、お忙しい中ありがとうございました!
    Share on Twitter Share on Facebook


    その他 :

    なお、本イベントの代理出席はできません。あらかじめご了承ください。

    ハッカソンとは何ですか?
    ハッカソンとは、新しい技術を試す一つのおもしろい方法です。通常チームで行われ、新しいフレームワーク、API、言語を試すことに焦点を置いたイベントです。各チームではおもしろい実験を行ったり、アプリケーションを作ります。イベントの最後にはお互いの成果を評価し、表彰されることもあります。

    誰が参加できますか?
    経験豊富なソフトウェア開発者、ハードウェア開発者が招待されます。Web Audio API、Web MIDI API を試す絶好の機会です。また当日は楽器の提供もいたしますので、グループで思う存分にハックをしてください。

    チームメンバー全員の参加登録が必要ですか?
    はい。参加者の人数把握と入館の手続き上、チームで参加される場合もチームメンバー全員の登録をお願いします。

    チームに入らないといけませんか?
    いいえ、必ずしもチームに入る必要はありません。ただし、これまでのハッカソンをでは仲間が 1 人ないし 2 人はいた方がより多くのことを得られるようです。

    チームに入りたいのですが、知っている人がいません。どうすればよいですか?
    ご心配はご無用です。お申込時にアイデア、またはその欠片をご記入いただきます。その情報を元にしてハッカソンのキックオフ時にテーマの発表を行いますので、その場でご興味のあるテーマのチームに参加していただけます。

    何を作ればいいの?
    Web Audio API、Web MIDI API は JavaScript の API です。これらを使ったブラウザ上で動作するアプリケーションをご作成ください。

    何を持っていばよい?
    ノート PC は各自で準備をお願いします。その他もしお気に入りの MIDI 機器、Arduino などで作ったおもしろいハードウェアなどがありましたらぜひご持参ください。
    Share on Twitter Share on Facebook


  • Web から構築した辞書を更新しました。

  • Windows 版の変更点

    Mac 版の変更点
    [8/16 Update] Mac 環境において一部のアプリケーションに対してクラッシュを引き起こす問題を修正したバージョン(1.11.1516.1)をリリースしました。
    [8/26 Update] Windows 環境において Explorer 上で候補ウィンドウなどが表示されなくなる問題等、いくつかの問題を修正したバージョン(1.11.1517.0)をリリースしました。Google 日本語入力バージョン 1.11.1515.0 で問題が発生していた場合、バージョンが 1.11.1517.0 以降に更新されていることを確認後に Windows を再起動していただくと解決します。現在のバージョンは「ばーじょん」という文字を変換していただくことで確認できます。
    [8/30 Update] Windows XP 環境においてキー入力をとりこぼすことがある問題を修正した安定版(1.11.1518.0)および開発版(1.11.1523.100)をリリースしました。
    [9/2 Update] Mac 環境において一部のアプリケーションで入力が遅くなる問題を修正した安定版(1.11.1525.1)および開発版(1.11.1530.101)をリリースしました。
    [9/5 Update] Mac 環境において入力が遅くなる問題を改善した安定版(1.11.1526.1)および開発版(1.11.1531.101)をリリースしました。

    これからも、Google 日本語入力をよりよくしようと、チーム一同で開発を進めていきます。お気づきの点がありましたら、ぜひプロダクト フォーラムからお知らせください。みなさんのフィードバックがなによりの励みになります。
    Share on Twitter Share on Facebook



    活用例

    すでに API を利用しているデベロッパーが作成したすばらしい活用例をご紹介します:


    Capella 社の Cambria Live


    Elgato 社の Game Capture HD

    Radioline 社

    これはまだ試験的な API です。YouTube API Blog をご覧いただくとともに、YouTube for Developers チャンネルに登録して最新情報にご注目ください。

    今後ともよろしくお願いいたします。
    Share on Twitter Share on Facebook


  • クラウド同期でアップロードされたデータについて、データの削除方法を変更しました。設定ダイアログからではなく、ダッシュボードページからデータの削除を行うようになります。
  • Web から構築した辞書を更新しました。
  • Windows 版の変更点
    Mac 版の変更点
    既知の不具合 
    • Windows 8 環境でかな入力モードが正常に動作しません。 
    • Windows 7 以前の環境でかな入力モードをご使用の場合、Ctrl-c や Ctrl-v といったショートカット キーが正常に動作しません。 
    • かな入力モードをご使用の方は、Google 日本語入力安定版をお使いください
    • [7/9 Update] Windows 環境において、かな入力をお使いの場合に発生する問題を修正したバージョン(1.11.1502.10x)をリリースしました。以前のバージョンでは、かな入力が正常に動作しない、かな入力時に Ctrl-c や Ctrl-v といったショートカットキーが正常に動作しないといった問題がありました。
    • [7/30 Update] Windows 環境におけるいくつかの問題を修正したバージョン (1.11.1520.10x) をリリースしました。
    これからも、Google 日本語入力をよりよくしようと、チーム一同で開発を進めていきます。お気づきの点がありましたら、ぜひプロダクト フォーラムからお知らせください。みなさんのフィードバックがなによりの励みになります。
    Share on Twitter Share on Facebook


    フォロー ボタンをウェブサイトに追加するのも簡単です。すでに +1 ボタンを設置済みであれば、新しい JavaScript も必要ありません。プラグインの設定を行い、生成されたマークアップをページに貼り付ければ完了です。

    新しいフォロー ボタンの設置例は、CelebuzzCooking LightFitness MagazineHuffington Post などのサイトでご確認いただけます。

    コミュニティの Google+ バッジ
    コミュニティを管理しているみなさんからは、以前から「ウェブ上でコミュニティへの参加を促すような方法はないのか」というご意見をいただいておりました。そこで、このたびコミュニティの Google+ バッジを公開しました。バッジはカスタマイズ性が高く、サイトのデザインになじませやすくなっています。


    暗い色のテーマ、明るい色のテーマを用いたコミュニティ バッジの例

    サイトの閲覧者が[プレビュー]ボタンをクリックすると、ブラウザの新しいタブが開きコミュニティ ページが表示されます。そこから、コミュニティのプライバシー設定が許可になっていれば、最新の投稿を確認したり、コミュニティに参加したりできます。元いたサイトに戻るときは、タブを閉じるだけです。

    ページとプロフィールの Google+ バッジをリニューアル
    前述のコミュニティ用バッジと同様、リニューアルされたページおよびプロフィールの Google+ バッジもカスタマイズ性が高く、縦型/横型モード、明るい色/暗い色のテーマ選択、カバー写真やタグラインなどの表示オン/オフなどが選択可能です。


    明るい色のテーマを用いたプロフィール バッジの例


    暗い色のテーマを用いたページ バッジの例

    旧タイプのバッジをサイトに設置していても、心配はいりません。最大 90 日間、既存のバッジの表示を続けますので、その間に新しいバッジを設定してください。90 日後、自動的に 新デザインの Google+ バッジにアップグレードされます。

    最後になりましたが、今回のプラグイン アップデートには最近リニューアルした Google+ のデザインとの統一感をとった新しいビジュアル スタイルも含まれています。これには +1 ボタンおよびシェア ボタンも含まれ、今後数週間のうちに自動的にアップデートされていきます。

    このアップデートについて、みなさんのフィードバックをお待ちしています。Google+ での意見交換をフォローして、ぜひご意見やご感想をお聞かせください。
    Share on Twitter Share on Facebook



    Wizdeo

    Vidyard


    FullScreen

    さらに詳しい情報
    YouTube Analytics API のドキュメントに加え、初めての方に有益な動画を再生リストにまとめてあります。ぜひご覧ください。



    たくさんのチャンネルの統計情報を、定期的にエクスポートしてデータ ウェアハウスにするというニーズもあるでしょう。このようなニーズに対応するため、今年後半には YouTube Analytics API のスケジュール レポート機能をリリースする予定です。どうぞご期待ください。

    YouTube API の最新情報は、YouTube for Developers チャンネルと Google+ の YouTubeDev で提供しています。ぜひチャンネル登録やフォローをしてみてください。

    今後とも YouTube をよろしくお願いいたします。
    -- Ted HamiltonChristoph Schwab-Ganser ã¨YouTube Analytics API チーム
    Share on Twitter Share on Facebook



    Mobile Backend Starter は、Google が提供する PaaS(Platform as a Service)である Google App Engine 上で動作するモバイル アプリ用バックエンドを、クリックひとつでアップロードできます。手間をかけてサーバー環境をセットアップしたりサーバー側プログラムをコーディングしたりといった作業は一切不要。以下の豊富なバックエンド機能を Android 向けアプリから直接利用できます。



    Mobile Backend Starter を使ってみよう

    Mobile Backend Starter の使い方は簡単です。以下では、Mobile Backend Starter を使いはじめるまでのステップを簡単に紹介します。なお、手順の詳細については Getting Started ドキュメントを参照してください。

    まずは http://cloud.google.com/console を開き、CREATE PROJECT ボタンをクリックして 新しいプロジェクトを作成します。つづいて、画面上に表示されるサンプルコードから Mobile Backend App を選択して Deploy ボタンをクリックすると、Mobile Backend が App Engine にアップロードされます。





    次に Setting ボタンをクリックし、認証設定を Open にセットして保存します。



    これでバックエンドが Android 向けアプリからアクセス可能になりました。最後に、ひな形となる Android クライアントをダウンロードし、Eclipse で開きます。Consts.java というファイル上の PROJECT_ID に作成したプロジェクト ID を記入します。



    この Android クライアントに含まれるサンプルである Guestbook アプリを起動すると、バックエンドとアクセスできていることを確認できます。



    Mobile Backend Starter のドキュメント ページでは、さらに Google Cloud Messaging を利用した Continuous Query や、Google アカウントによる認証処理やユーザー情報取得をテストする手順が記載されていますので合わせてご覧ください。

    Mobile Backend Starter のプログラミング

    Eclipse 上で Guestbook アプリのソース コードを眺めれば、Mobile Backend Starter のプログラミングがいかに簡単か解るはずです。例えば Guestbook アプリでは、以下のような数行のコードでゲストブックに新しいメッセージを追加しています。サーバー側コードの記述や事前のテーブル定義が不要なだけでなく、Android 開発につきものの AsyncTask の記述(非同期ネットワーク通信)、AccountPicker(Google アカウントの選択)まわりの記述、サーバー側のユーザー認証まわりのコーディングなどをすべて省略できます。
    CloudEntity newPost = new CloudEntity("Guestbook");
    newPost.put("message", <...the entered text...>);
    getCloudBackend().insert(newPost, null);
    

    また以下のコードでは、Guestbook テーブルに対して Continuous Query を実行しています。Continuous Query とは、サーバー側に保存されたデータの変化を捉えてクエリを継続的に実行する新しいメカニズムです。
    CloudQuery cq = new CloudQuery("Guestbook");
    cq.setScope(Scope.FUTURE_AND_PAST);
    List<CloudEntity> results = cloudBackendAsync.list(cq, handler);
    

    ここで、Scope.FUTURE_AND_PAST とは過去と未来の両方のデータに対して検索を行うという意味の指定です。具体的には、ゲストブックの過去の書き込み内容を検索するだけでなく、新しい書き込みがあるたびに瞬時に検索が再実行され、イベント ハンドラが呼び出されてユーザー インタフェースが更新されます。ユーザーにリロードボタンを何度も押させたりポーリングしたりしなくてもつねに最新の情報を表示でき、かつネットワークアクセスの回数を大幅に減らしてバッテリー消費を低く抑えられます。本来、こうしたサーバー プッシュ機能を利用するには Google Cloud Messaging のプログラミングが必要となりますが、Continuous Query を使えば一行の Scope 指定だけでサーバー プッシュ機能を利用できます。

    いかがでしょうか。Mobile Backend Starter ではほんのわずかな作業でモバイル アプリ用のバックエンド環境を準備でき、かつ簡単な Android プログラミングだけでインタラクティブ性の高い豊富なバックエンド機能をすぐに利用できることが理解いただけたかと思います。なお、近日中には詳細なプログラミング マニュアルも公開される予定です。Mobile Backend Starter についてのご質問や、こう使ったよ、といったレポートなどありましたら、Stack Overflow の Cloud Endpoints フォーラムにぜひご投稿ください(ただし残念ながら英語のみとなります)。
    Share on Twitter Share on Facebook