Google Chrome の Developer Tools

Firebugのようなものだが、Firebugのポートではない。Google Chrome の一部。(= WebkitのWebインスペクタ)

リリース間隔は、開発版が週に1回。

主な機能

  • Mastering DOM
    • DOMを自由に編集することができる。
    • イベントのモニタリングができる。(よくわからない。FirebugAPIらしい。要調査)
  • Analyzing Network Activity
    • 各リソースについて、リクエスト/レスポンス等各種情報が取得できる。
  • Debugging JavaScript
    • デバッガ上でJavaScriptの編集ができる。(ただし元ファイルには反映されない)
    • イベントの再発行も不要? (→ 挙動がよくわからなかった。どういう操作をすればいい?)
  • Identifying performance issues
    • プロファイルパネルを開いて(?)、画面を動かすと記録される。
    • JSレベルでは簡単に見えても、ブラウザ自体の処理に時間がかかるケースがある。
    • Timelineを開くと、JSだけでなく、ブラウザの処理(再レイアウト/再レンダリングなど)もわかる。
  • Understanding memory usage
    • メモリプロファイラがある。
    • 処理前後のスナップショットを取って比較することで、メモリリークを把握することができる。(スナップショットの取得が手動なのはちょっと残念)

その他のフィーチャー

Q&A

Part1: Google App Engine for Businessの概要 / Part2: 新しいGoogle Cloudサービス

Googleのサービスの位置付け:

Google App Engine for Business

現在の利用状況:

Google Storage for Devlopers

  • データフォーマット、データ量、データ保持期間は自由。
  • アクセスコントロールあり。
  • API連携あり。

機能概要:

  • Amazon S3互換。
  • バケットは階層なし。
  • オブジェクトの種類は自由。
  • 最大サイズ: 100GB
  • アクセスキーによる認証 / Google アカウントによる認証
  • US内部ではレプリケーションされる (将来的にはUS外にも拡張予定)
  • データ制約: Read Your Writes
  • オブジェクト数は制約なし
  • バケット数は1000(?)

価格:

  • $0.17/GB/月
  • アップロード: $0.10/GB
  • ダウンロード: $0.30/GB

Google Storageを利用するアプリケーション

Prediction(予測) API

テキストの言語を予測して返す?

例: カスタマーセンターでのメールの言語別ルーティング

  1. Google Storageにアップロード
  2. 学習
  3. predict
Google BigQuery
  • adhoc analysis
  • SQLライク問い合わせ言語
  • REST/JSON-RPC/Google App Scripts
  • 数秒程度で結果が返る
  • スケーラブル

例:

  1. Google Storageにアップロード (CSV?)
  2. BigQuery Tableにインポート
  3. SQLで問い合わせ: SELECT ... FROM ... WHERE .... GROUP BY ... ORDER BY ... LIMIT ...;

その他:

  • MySQLインスタンスで動いている?
  • 将来的に、パーティショニング/シャーディングに対応予定。

Apps Marketplace で広がるクラウドビジネスチャンス

Google Apps for Business: Gmail, Google Docs等の企業向け有償提供。

提供機能

  • 企業システムとの統合
  • AD/LDAP同期
  • Exchangeとの併用
  • Outlook, iPhone, Android, Blackberry
  • 端末のリモート管理(?)
  • 99.9% SLA (⇒ 年間停止8時間45分くらいか)
  • 24x7電話サポート
  • 6千円/ユーザ/年
  • メールアーカイブオプション

導入状況

    • 250万社
    • 2,500万アカウント (×6,000円=1,500億円/年。さすがワールドワイド……)
    • 3,000社/日新規サインアップ

Google Apps Marketplace

Google Appsには、業務管理ソフトウェア(顧客管理/販売管理、承認フロー/決算フロー、モバイル決済など)のたぐいが無い。

Google Apps Marketplace: サードパーティが、Google Appsを拡張したWebアプリケーションを販売できる。(余計にベンダーロックインが怖いんだが^^;)

全体の位置付け

社内システムとの連携も可能。(いわゆる「ハイブリッドクラウド」?)

Marketplaceの利用について

Google App Engine についての最新情報

  • Pythonプリコンパイル機能 ⇒ CPU時間が半分以下。(実時間は半分になってないけど)
  • TaskQueue
    • キューのサイズを指定可能。単位がTBまであるのにはワロタw
  • BLOBにURLが付けられる。ただしパブリックURLなので注意が必要。
  • 1000件制限がなくなった。(30秒制限は依然有効)
  • バックグラウンドタスクは制限を延長する予定。
  • マルチテナンシ機能。namespaceを指定可能。ドメイン名をnamespaceに指定することも可能。
    • ○ datastore, memcache, taskqueue
    • × blobstore

後半はひたすらマルチテナンシ機能の説明だが、割とどーでもいー。(実際に何か作るなら使うだろうけど^^;)

基調講演

HTML5

  • クラウドならベンダロックインしない」⇒ いや、GAEに依存すると思いっきりロックされるじゃん(^^;
  • HTML5対応ブラウザ一覧の順序が、何気にIE9がトップ。Google Chromeは、シェアよりもテクノロジドライバの役目の方が大きいのかも。
  • ブラウザのGPUサポートによるパフォーマンスアップが意外とインパクトが大きかった。
  • ブラウザで使えるデバイスAPIの範囲がどんどん広がってる ⇒ 将来的にブラウザだけで何でもカタが付く時代になるのかねぇ……。(それはそれでどーなんだ)
    • バイスオリエンテーションAPI
    • 音声認識 (inputなどのHTMLタグに属性を付加することで、音声による入力が可能)
    • ローカルファイルへのアクセス/ブラウザへのドラッグ&ドロップ (セキュリティは大丈夫なの?)
    • Web SQLデータベース (規格化されていないはずだが、将来はどうなるの?)
  • Chrome Web Store
    • Google Chromeの画面から、Webアプリの発見や再発見、およびマネタイズができる。
    • 後で梯子外されたりしない? (Google Waveという「前科」があるので不安が拭えない)

Android関連

  • 日本のAndroidバイス総スルー状態を何とかしてくれ……。
  • 7inch Galaxyは良さげ。
  • エラーレポートの機能は確かに欲しい。
  • アプリを「盗め」ないライセンシングサーバ。
  • テザリング ⇒ 日本で使えるの?
  • モトヤフォントがcontributeされたのは素晴しい。
  • 日本androidの会1万人、ってそんなにいるのか(^^;
  • Android Appsの日本のシェア: アプリ数5位、購入数(or金額?)2位 ⇒ デバイス本体のリリース状況が今一つなのに、がんばるなぁ。

Google App Engine関連

Google日本語入力

DevQuiz

パックマン解かなくても参加できたっぽい。

BOM付きUTF-8ファイルはテキストファイルではない

では何か? 構造のあるデータ、すなわちバイナリである。C言語*風*に書けばこんな感じ。

struct {
  char signature[3];
  char body[n];
};
  • バイナリなので、shebang(“#!”)が動作しないのは当然である。
  • バイナリなので、catでつなぐとゴミが混じるのは当然である。
  • バイナリなので、grepで行頭からの前方一致に1行目が引っ掛からなくてもそれはgrepのせいではない。
  • バイナリなので、splitしたら1つ目のファイル以外にBOMが付かなくてもそれはsplitのせいではない。

BOMを付けるか付けないかの違いは好みの問題ではない。テキストデータを、テキストファイルとして保持するか、バイナリファイルとして保持するかの違いなのだ。