Agile Cat — in the cloud

Ruby on Rails も Windows Azure に!

Posted in Interoperability, Microsoft by Agile Cat on December 3, 2009

加速する Windows Azure のオープンソース対応

All About Microsoft からの情報ですが、Microsoft アーキテクトである Simon Davies のブログで、Ruby on Rails が Windows Azure 上の 6番目のオープンソースとして紹介されました。これまでの All Microsoft 製品という戦略から離れて、より幅広いツールの選択を実現しようとする、Ray Ozzie をはじめとした、このチームの勇気とバランス感覚に拍手です!

ここで、Wiki からの要約です・・・

Ruby on Rails

Ruby on Rails はオープンソースのWebアプリケーション・フレームワークであり、RoR または  Rails とも呼ばれる。その名のとおり、Ruby で記述されており、Model View Controller(MVC)アーキテクチャに基づいて構築されている。 他のフレームワークと比較して、よりコードでアプリケーション間発を実現するように設計されている。 Rails の公式なパッケージは、Rubyのライブラリやアプリケーションの流通ルートである、RubyGemsにより配布されている。 Railsの基本理念は「同じことを繰り返さない」(DRY:Don’t Repeat Yourself) と「設定より規約」(CoC:Convention over Configuration) である。「同じことを繰り返さない」というのは、定義などの作業は一回だけですませろとの意味である。「設定よりも規約」とは、慎重に設計された規約 (Convention) に従うことにより設定 (Configuration) を不要に(あるいは軽減)するということである。Rails はフルスタックのフレームワークであり、コンポーネントの統合は手動での設定を必要とせず自動で規約に従い行われる。例えば Ruby on Rails に組み込みの ORM ライブラリである ActiveRecord ではクラス定義において、データベースから読み取るべき属性名等を指定する必要はない。ActiveRecord は RDBMS の表定義から自動的にその情報を取得する。従ってプログラムと RDBMS の両方にそれを定義するというような冗長な作業を行う必要はない。

以下の図は、PDC 2009 の Ray Ozzie のキーノートで紹介されたものです。Microsoft のカンファレンスで、これらのロゴが紹介されるなんて、、、と、驚いた方が大半だと思います。 そして、Azure 上の Java プログラムから、これらのテクノロジーが使えることが明らかにされ、クラウドにおける Microsoft は、これまでの慣例から外れて、Windows Azure を展開していくことが宣言されたわけです。

Agile_Cat 的には、今回の PDC 2009  で最大のハイライトというか、Micosoft が始まって以来の最大の転換なのですが、このキーノートの中で割かれた時間はわずかであり、そこに同社の苦悩が表れているような気がします。 つまり、理屈では解っても、心情として納得できないという人が沢山いて、そこのへ気配りも必要なのではないかと、さらに言えば、こうした大転換に真っ向から反対している人もいるはずで、そこには Ray Ozzie の厳しい闘いがあるのではと、そんなふうに、勝手に推測しているわけです。

そんな中、PDC 2009 から 2週間後の 12月1日に、この路線を推し進める Ruby on Rails へのコミットが報じられたことは、とても良い展開だと思います。

PDC 2009 OSS

そして、はたまた Wiki からの要約ですが、これらのオープンソース・ソフトウェアについて、以下に記載していきます。

Zend Framework

ZFは使い方が自由なフレームワークである。Zend Framework の全ユーザーが従うべき開発パラダイムや開発パターンというものは存在せず、MVC、Table Data Gateway、Row Data Gateway といったデザインパターンのための、コンポーネントを提供するフレームワークである。Zend Framework は他にも、Webアプリケーション開発で必要となる多数のコンポーネントを提供する。

Zend Framework はまた、PHPコミュニティにおけるWeb開発のベストプラクティスを広める努力をしている。他のフレームワークほど規約を使わず、むしろ妥当なデフォルトを設定しておき、各アプリケーションの必要に応じてそれを上書きするという方法を提案している。

なお、Zend Framework は、Open Source Initiative(OSI) の承認した修正BSDライセンスで提供されており、コード提供者はApacheソフトウェア財団の Contributor License Agreement (CLA) をベースにしたCLAに署名しなければならない。ゼンド・テクノロジーズのアンディ・ガトマンズによれば、このようなライセンス方式を採用しているのは、ZFの商用利用で知的財産権問題を起こさないためだという。

MySQL

オープンソースで開発されており、GNU GPLと商用ライセンスのデュアルライセンスとなっている。他の多くのオープンソースプロジェクトと異なり、スウェーデンの単一の営利企業「MySQL AB」によって保持されていた。2008年2月26日にMySQL ABがサン・マイクロシステムズに買収されたことによってサン・マイクロシステムズの所有となった。またトレードマークおよび著作権もサン・マイクロシステムズが所有していた。現在サン・マイクロシステムズはOracleに買収された。なお、MySQLは、世界で最も有名なオープンソース・データベースとして知られおり、市場シェアでは他のPostgreSQLなどのライバルを圧倒している。

データの保存とアクセスを行うストレージエンジンがSQLパーサとは分離独立しており、用途に応じたストレージエンジンを選択できる「マルチストレージエンジン」方式を採用している。特に MyISAM ストレージエンジンは検索の高速性に定評があり、更新よりも参照の頻度の高いWebアプリケーションなどで活用されている。 MySQLは GPL の Community Server と、コマーシャルライセンスの MySQL Enterprise のデュアルライセンス方式で提供されている。MySQL Community Server を用いたソフトウエアを開発した場合には、次のような事項を守る必要がある。MySQL Enterprise を用いた場合には制約から除外される。MySQLを利用するソフトウェアを開発し、それを第三者に利用させる、もしくは再頒布(販売・譲渡等)する場合は、GPLに従うか、さもなければコマーシャルライセンスの購入が必要になる。Community ServerのクライアントライブラリはGPLで提供されるため、MySQLに接続するアプリケーションはすべてGPLでの公開が義務付けられる。MySQLを改造し、それを再頒布する場合は、GPLに従うか、さもなければコマーシャルライセンスの購入が必要になる。

Java

プログラミング言語 Java および、Java プラットフォームは、1990年代前半にサン・マイクロシステムズでジェームズ・ゴスリンなどの人々によって開発された。現時点における、Java 技術の標準化作業は、Java Community Process (JCP) というプロセスを経て行われている。

Javaに関わる呼称とその意味内容は、文脈に応じていくつか使い分けられている。サン・マイクロシステムズは、「Javaテクノロジ」(Java技術、Java technology)という呼称を使い、一方でJavaのさまざまな技術の形容詞として「Java」の呼称を使ってきた。多くのプログラマは、プログラミング言語の意味で「Java」の呼称を使っている。Javaの実行環境は、Java実行環境 (Java Runtime Environment; JRE) と呼ばれる。Javaの基本的な開発環境は、Java開発キット (Java Development Kit; JDK) と呼ばれる。

Javaはクラスベースのオブジェクト指向プログラミング言語である(#オブジェクト指向プログラミング)。Javaのプログラムは複数のクラスから構成され、プログラムの実行は、各クラスが実体化したオブジェクト群が相互にメッセージをやりとりしながら行われる。Javaでは、継承については実装の単一継承を採用している。ただし1つのクラス(オブジェクト)は複数のインタフェースを実装できる。Javaで扱うデータ/オブジェクトの型(データ型)は、強い静的型付けを採用している。Javaのコンパイラおよび実行環境が、型同士の整合性を検査することによって、プログラムが正しく記述されていることや、安全に動作することの検証が、可能である。

PHP

PHP: Hypertext Preprocessorとは、動的にHTMLデータを生成することによって、動的な Web ページを実現することを主な目的としたプログラミング言語、およびその言語処理系である。 PHPは、HTML埋め込み型のサーバーサイド・スクリプト言語として分類される。この言語処理系自体は、C言語で記述されている。

Web サーバー上で動作し、Webサーバー上の文書が要求されるたびに、この文書に記述されたPHPのプログラムを実行し、その結果を Web ブラウザに対して送信する。 Web ブラウザに送信されるデータは通常のHTMLであり、PHPのプログラムを含まない。この点でHTML埋め込み型のクライアントサイド・スクリプト言語(JavaScriptなど)と本質的に異なっている。

平易な文法のため初心者でも習得しやすく、また大規模な開発にも多く用いられている。多くのフレームワークやライブラリが存在し、開発の手助けとなっている。 数多くのオープンソース Web アプリケーションに利用されている一方、しばしば脆弱性の報告がなされ、過去に深刻なセキュリティホールが何度か報告されている。

Eclipse

Eclipse の歴史は、1990年代後半から始まる。当時の状況は、JBuilder、VisualCafe、そして IBM の VisualAge など第1世代のJava開発ツールが存在している。IBM は様々なプラットフォームの製品を抱えていることから、Java のマルチプラットフォームの可能性に注目していた。単なる VisualAge の代替ではなく、IBMや他社のツールを統合するための共通プラットフォームの開発という基本構想の下、1998年11月に IBMカ ナダでプロジェクトが開始された。開発に携わったのは、VisualAge の開発を行ったO bject Technology International (OTI) 研究所である。

その後、IBMはこのプラットフォームに搭載するツールの開発のために組織の編成を行い、さらにオープンソース化することで新しい開発者の引き込みを図った。2001年11月、IBM は Eclipseをオープンソース化するとともに、他の組織(Borland、MERANT、QNX Software Systems、Rational Software、Red Hat、SuSE、TogetherSoft、Webgain)と共同で初期の Eclipse.org である Eclipse Board of Stewards を設立する。公開された Eclipse は、たちまちのうちに多くの開発者の興味を惹くこととなった。また、2003年の終わりには、Eclipse Board of Stewards の参加メンバーも 80 を越えている。

しかし爆発的人気の影で、Eclipse は、IBM 以外の他団体から新たなツールが提供されないという問題を抱えていた。それは、IBM が Eclipseの制御権を握っているという認識によるものであった。Eclipse の勢いを止めないために、IBM と Eclipseを切り離すことが必要とされた。2004年2月2日、Eclipse Board of Stewards は、Eclipse 組織の再構築を発表した。非営利組織 Eclipse Foundation の結成と、Eclipseの全てを Eclipse Foundation に移管することで、全ての団体や開発者を対等に扱うこととなった。この Eclipse Foundation から、Eclipse 3.0、3.1、3.2がリリースされている。現在 Eclipse Foundationは、115以上のメンバー企業、50以上のサブプロジェクトを抱えるオープンソース組織に成長している。

2006年、Eclipse Foundation は、Eclipse 3.2に10のオープンソースプロジェクトを合わせたリリースを行った。この製品は、Eclipse Callisto と呼ばれている。

こうして見ると、オープンソースを活用しないほうがオカシイのであって、Windows Azure により、Microsoft 自身と、そのサードパーティの考え方が変わっていくのは、とても良いことだと思えます。 「ベストを尽くせることを成し,それ以外は連携せよ」、ですよね。 --- A.C.

<関連>
Microsoft は オープンソースへ走ると、O’Reilly が予言!
Eclipse for Windows Azure を MS が大歓迎
Windows Azure – Tools for Eclipse
PHP のクラウド API とオープンソース
MS オープンソース FAQ

Office Mobile 2010 はフリーのビュワー?

Posted in Mobile by Agile Cat on December 3, 2009

編集機能は Windows Mobile 6.5 + Sharepoint で?

Office Web Apps と Office Mobile 2010 という 2つのラインがあり、後者の Office Mobile 2010 がスマートフォン用のバージョンです。 All about  Microsoft によると、どちらもベータ版が無料でダウンロードが可能となっていますが、Mobile のダウンロードページは見つかりませんでした。 

http://officebeta.microsoft.com/en-us/msproducts/homeandbusiness/download-the-beta-FX100996086.aspx

対応機種およびブラウザは以下のとおりとのことです。

 

    • IE on Windows Mobile 5/6/6.1/6.5
    • Safari4 on iPhone 3G/S
    • BlackBerry 4.x and newer versions
    • Nokia S60
    • NetFront 3.4, 3.5 and newer versions
    • Opera Mobile 8.65 and newer versions
    • Openwave 6.2, 7.0 and newer versions

Office Mobile 1 Office Mobile 2

ただし、Office Web Apps が提供するのはビュワー機能であり、Office による編集をモバイルで実現するには Windows Mobile 6.5 が必要とのことです。おそらく、SharePoint を持つ、エンタープライズ向けのソリューションになるのでしょう。

Agile_Cat 的には、Nokia S60 もあるのでワクワクです。

ーーーーー

<関連>
UMPC Portal というサイト、ご存知でした?
Office 2010 は、Docs.com で Facebook とコラボ?
App Store を凌駕する、Touch Screen Web サイトの成長
Apple は Web-based サービスの重要性を理解していない、、、と Tim O’Reilly
歓迎すべきことに、Apple は制空権を失いつつある
Jobs の Adobe 批判って、自爆してません?

%d bloggers like this: