レベルエンター山本大のブログ

面白いプログラミング教育を若い人たちに

クラウドはパラダイムシフト確定だから、四の五のいわずにGAEとKey-Value Storageをやっとけ

Google App Engine(以下GAE)がJavaに対応してから、その衝撃的サービス内容から
「これはパラダイムシフトであり、破壊的イノベーションなのではないか」と論議されるようになった。


クラウドはとっくにバズワードではない。そして、
クラウド型のアプリケーション提供方式は、間違いなくパラダイムシフトだと断言する。


ただし、既存のものに急に取って代わるという破壊的イノベーションではないと考えている。
RDBなどは必ず生き残り役割分担の選択肢となる。いままでのインハウス型プロジェクトもなくならない。

しかし、1〜2年で開始するプロジェクトは、もう.NET or Javaといってプラットフォームを選択するまえに、アプリケーション提供形式としてインハウス or クラウドを選ぶ時代になるだろう。
管理コスト面、初期コスト面ともに優れたクラウドという選択肢が提供できない提案・企画は駆逐される。


パラダイムシフトに乗ることは強い競争力となる。
それどころか乗り遅れるとチャンスを逃すことにもなる。物怖じしている場合ではない。
僕らの会社は、会社の設立時点でオブジェクト指向の良さを認識し集中してそれに取り組んだ。
オブジェクト指向パラダイムに乗っかれたので、従前のやり方しか知らないエンジニアと比べて圧倒するパフォーマンスを出せた。


だから
今、何か新しいことに取り掛かろうか迷っているなら、
GAEとKeyValue型データ設計をやっとけ。取り掛かろうと思っていなくてもやっとけ。


具体的に何をやるかといえば、GAE上でアプリケーションを作り、その使い勝手の癖やベストプラクティス、設計上の制限を学んでおくことだ。


歴史は繰り返す。10年ほど前、僕らはRDBMSを知らない先輩達の無理な設計理論に苦しめられて育った。
正規化もくそもない、COBOLで出力したファイルをそのまま取り込んだテーブルレイアウトなどだ。
しかし、今現在RDB理論と正規化を知らないでエンジニアをやることはできない。
RDBの制限を知り、出来ることを知ることで、最適なソフトウェアを提供することができた。


だからクラウドに載せるアプリケーションでできること、できないことをまず抑える。
これによって、新しいクラウド上のアプリケーションを構築するときに、皆があなたの意見に耳を傾けることになるのだ。