<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2393198689658204489</id><updated>2011-11-28T08:16:53.141+09:00</updated><category term='IBM'/><category term='Python'/><category term='Mobile'/><category term='HP'/><category term='JBoss'/><category term='Microsoft'/><category term='MySQL'/><category term='Salesforce'/><category term='Seasar'/><category term='Force.com'/><category term='EJB3'/><category term='PaaS'/><category term='mixi'/><category term='Cloud Computing'/><category term='Amazon.com'/><category term='Web2.0'/><category term='Blogger'/><category term='Oracle'/><category term='Apple'/><category term='Java'/><category term='Google App Engine'/><category term='Google'/><category term='OpenID'/><category term='OSS'/><category term='BEA'/><category term='SpringFramework'/><category term='Tomcat'/><category term='RedHat'/><category term='Sun'/><category term='SaaS'/><category term='iPhone'/><category term='KDDI'/><category term='Linux'/><category term='au'/><category term='Eclipse'/><category term='iBatis'/><category term='livedoor'/><category term='Ubuntu'/><category term='Glassfish'/><category term='DoCoMo'/><category term='Android'/><category term='Intel'/><category term='Yahoo'/><category term='News'/><category term='FireFox'/><title type='text'>Das Tagebuch von Judith über Technologie</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>83</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-8448924504846239974</id><published>2011-05-13T02:11:00.000+09:00</published><updated>2011-05-14T05:40:20.501+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DoCoMo'/><title type='text'>フレッツ光ポータブルを使ってみた</title><content type='html'>利用開始から1ヶ月ほど。&lt;br /&gt;&lt;br /&gt;携帯性&lt;br /&gt;問題無し。タテヨコはiPhoneより小さく、厚みはiPhoneより多少厚いぐらい。&lt;br /&gt;カバンに入れて邪魔にならないサイズ。&lt;br /&gt;&lt;br /&gt;バッテリー&lt;br /&gt;問題無し。無通信時にスタンバイモードになるのが効いているのだと思う。&lt;br /&gt;&lt;br /&gt;通信品質&lt;br /&gt;問題無し。自分はdocomoのSIMを刺しているので、いPhoneでdocomoのネットワークを使えるのは大きい。&lt;br /&gt;WiFiと3Gの自動切替もすごく便利。&lt;br /&gt;&lt;br /&gt;コスパ&lt;br /&gt;問題無し。というか、月額315円（フレッツスポットを使うと+210円）という料金はすごくお得。&lt;br /&gt;&lt;br /&gt;所感&lt;br /&gt;もうすぐiPadが届くけど、フレッツ光ポータブルを使うことを見越してWiFiモデルにした。たぶん正解だろうということは容易に想像がつく。既にMBAでは恩恵を受けている。会社支給のPCもデータカードではなく、こちらで接続して使っている。&lt;br /&gt;欠点（というか気づいたこと）は、iPhoneの画面を見ているだけではWifiや3Gの電波状況がまったくわからないこと。逆に言うとこれぐらいしかデメリットを感じない。&lt;br /&gt;非フレッツなプロバイダ + EMobileな人はフレッツ + フレッツ光ポータブル + mopera定額と料金を比較してみる価値はあると思う。フレッツなのにイーモバな人はイーモバ解約してOKだと思う。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-8448924504846239974?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/8448924504846239974/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2011/05/blog-post.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8448924504846239974'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8448924504846239974'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2011/05/blog-post.html' title='フレッツ光ポータブルを使ってみた'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-3568108189057013537</id><published>2009-07-06T00:44:00.002+09:00</published><updated>2009-07-06T02:08:49.629+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mixi'/><category scheme='http://www.blogger.com/atom/ns#' term='Amazon.com'/><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='PaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><category scheme='http://www.blogger.com/atom/ns#' term='Google App Engine'/><category scheme='http://www.blogger.com/atom/ns#' term='Force.com'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Sun'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='Yahoo'/><category scheme='http://www.blogger.com/atom/ns#' term='Cloud Computing'/><title type='text'>クラウドコンピューティング、はじめました</title><content type='html'>「クラウド」とはいったい何か ITベンダーは本質を語れ&lt;br /&gt;&lt;a href="http://itpro.nikkeibp.co.jp/article/COLUMN/20090701/332996/"&gt;http://itpro.nikkeibp.co.jp/article/COLUMN/20090701/332996/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;面白いところを突いています。&lt;br /&gt;というか、このブログに書きたかったことを先に書かれたというか。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;最近、「クラウドコンピューティング、はじめました」的なベンダーが多いですよね。&lt;br /&gt;&lt;br /&gt;でも、この分野で先行し、成功しているのはGoogle、Amazon.com、Salesforce.comであり、これらのベンダーは「クラウドコンピューティング、はじめました」ではありません。&lt;br /&gt;あくまで各社が独自に提供するサービスが先に存在し、そのために整備してきたインフラの解放という形態です。&lt;br /&gt;&lt;br /&gt;Googleは言わずとしれた検索エンジンやGmailその他。&lt;br /&gt;Amazon.comはECサイト。&lt;br /&gt;Salesforce.comはCRM/SFA。&lt;br /&gt;&lt;br /&gt;そういう観点では、Yahoo、mixi、楽天などにはその素養がありますね。&lt;br /&gt;&lt;br /&gt;果たして、何を提供するのかが不明なままに「クラウドコンピューティング、はじめました」のベンダー（FとかHとかIとかUとかSとか）がうまくいくのでしょうか？&lt;br /&gt;ここに先鞭を付けるのはMicrosoftでしょうか？&lt;br /&gt;&lt;br /&gt;「クラウドコンピューティング、はじめました」がうまくいったら、クラウドコンピューティングの時代は新しいフェーズに入るのかもしれません。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-3568108189057013537?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/3568108189057013537/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2009/07/blog-post.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/3568108189057013537'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/3568108189057013537'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2009/07/blog-post.html' title='クラウドコンピューティング、はじめました'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-2880741460891212929</id><published>2009-07-01T21:15:00.003+09:00</published><updated>2009-07-01T21:26:56.687+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Force.com'/><category scheme='http://www.blogger.com/atom/ns#' term='PaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><title type='text'>エコポイントのシステムはForce.com</title><content type='html'>「エコポイントを支える情報システムの開発にも参画」---セールスフォース宇陀社長&lt;br /&gt;&lt;a href="http://itpro.nikkeibp.co.jp/article/NEWS/20090701/333049/"&gt;http://itpro.nikkeibp.co.jp/article/NEWS/20090701/333049/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;エコポイントの交換や申請始まる、Force.com使ったシステムで受け付け&lt;br /&gt;&lt;a href="http://itpro.nikkeibp.co.jp/article/NEWS/20090701/333032/"&gt;http://itpro.nikkeibp.co.jp/article/NEWS/20090701/333032/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;「エコポイント」の申し込み画面はクラウド上に。開発期間わずか1カ月？&lt;br /&gt;&lt;a href="http://www.publickey.jp/blog/09/1.html"&gt;http://www.publickey.jp/blog/09/1.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;詳しくは書けませんが、かなりの予算規模・プロジェクト規模のシステムですが、信じがたい短期間で構築しています。&lt;br /&gt;クラウドコンピューティングのパワーを感じました。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-2880741460891212929?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/2880741460891212929/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2009/07/forcecom.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/2880741460891212929'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/2880741460891212929'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2009/07/forcecom.html' title='エコポイントのシステムはForce.com'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-228785161851563487</id><published>2009-07-01T21:11:00.001+09:00</published><updated>2009-07-01T21:15:54.774+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google App Engine'/><category scheme='http://www.blogger.com/atom/ns#' term='Force.com'/><category scheme='http://www.blogger.com/atom/ns#' term='PaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><title type='text'>Force.com Free Edition</title><content type='html'>先月から、US限定で提供が始まっています。&lt;br /&gt;Force.com Platformのの無料版です。&lt;br /&gt;&lt;br /&gt;なんと、Force.com Platformの（ほぼ）全機能が、100ユーザ・ディスク容量1GBまで無料で使えます！&lt;br /&gt;Apex/Visualforceも、Web Services APIも、Force.com Sitesも無料で使えます！！&lt;br /&gt;開発サンドボックス（テスト環境）もついています！！！&lt;br /&gt;Developer Editionは開発・学習・検証用で商用利用はNGでしたが、Free Editionは商用利用もOKです！！！！&lt;br /&gt;&lt;br /&gt;サインアップ時は英語ですが、Salesforceはもともと多言語対応なので&lt;br /&gt;設定を変えればで全く問題なく日本語化できます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;少し前まではApexコードを作成できなかったのですが、久しぶりにログインしたら作成できるようになっていました。不具合だったのか、サービス内容が変更になったのかは不明ですが・・・&lt;br /&gt;ともかく、これでかなりのことができるようになりました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;注意点は、日本では公式提供されていないということです。&lt;br /&gt;&lt;br /&gt;つまり・・・&lt;br /&gt;&lt;ul&gt;&lt;li&gt;どんな簡単な問い合わせでも機能・利用方法・不具合などのサポートを日本法人からは受けられない&lt;/li&gt;&lt;li&gt;規定のユーザ数や規定のディスク容量を超えて利用したい場合に有償版へアップグレードしたくても、日本法人とアップグレード契約できない（日本国内ユーザーがUS法人と契約できるかどうかもワカラナイ）&lt;/li&gt;&lt;/ul&gt;等のシチュエーションが想定されます。&lt;br /&gt;&lt;br /&gt;それでも、自己責任で自分でなんとかできる人には朗報ですね。&lt;br /&gt;&lt;br /&gt;Google App Engineなどよりもはるかに高機能・パワフル・高開発効率なPaaSを体験してみてはいかがでしょうか？&lt;br /&gt;&lt;br /&gt;サインアップはこちら&lt;br /&gt;&lt;a href="https://www.salesforce.com/form/signup/freeforce-platform.jsp?d=70130000000EoAM"&gt;https://www.salesforce.com/form/signup/freeforce-platform.jsp?d=70130000000EoAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="http://liebejudith.googlepages.com/microad_techjudith_content.js" type="text/javascript"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-228785161851563487?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/228785161851563487/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2009/07/forcecom-free-edition.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/228785161851563487'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/228785161851563487'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2009/07/forcecom-free-edition.html' title='Force.com Free Edition'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-263514703470440693</id><published>2009-06-19T00:04:00.004+09:00</published><updated>2009-07-04T22:55:48.324+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>iPhone 3G と Google 携帯</title><content type='html'>OS が3.0にバージョンアップした iPhone 3G と HTC製 Google 携帯。&lt;br /&gt;Google 携帯を1週間ほど使ってみての個人的所感を交えての比較です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;見た目&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Google 携帯の勝ち。iPhone よりやや小ぶり・スリムです。これならポケットに入れられるサイズです。あんなにカッコ良かった iPhone がデカい・ゴツいと感じるほとです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;日本語変換&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Google 携帯の勝ち。さすがWnn。変換・予測変換の精度は iPhone を大きく引き離しています。日本の携帯の水準にかなり近づいています。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;操作性&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;ハードウェアとしての操作性はiPhone 3G の勝ち。Google 携帯は中央のトラックポイント風のスティックの操作感がイマイチ好きになれません。なんだかグラグラ・ガタガタです。&lt;br /&gt;ソフトウェア面でも、OSの動作・ブラウザの処理速度は iPhone 3G の方が速い・なめらかです。Google 携帯はやや引っかかり感＆もたつき感が。画面をタッチしても、思ったところが反応しません。人間の指先なんてかなりアバウトだと思うのですが、Google携帯はバカ正直に反応しているのでしょう。iPhoneは四角四面に反応するのではなく、「きっとここをタッチしたかったんだろうな」を読み取ってくれる感があります。非常に直感的に操作できます。日本語変換だけ見れば Google 携帯ですが、文字入力操作そのものの快適さは iPhone 3G の方が上です。数種類のキーボード画面やカナの入力方法が用意され、自分の使いやすいものを選べるのがいいですね。特に、フリック入力に慣れてしまうと手放せません。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;コンテンツ&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Android Marlket と iTunes Store。現在のところ、選択肢は圧倒的にiTunes Store が豊富です。しかし、Android のウリは Apple の目が厳しい iTunes Store に比べて Android Market がオープンであるという点のはず。開発者が数々の勝手アプリを（作ろうと思えば）どんどん作れる環境にあります。1年で Android Market がどこまで成長するのかが楽しみです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;こうして並べてしまうと、現時点ではハードは・・・で、ソフト・コンテンツは iPhone という結論に。&lt;br /&gt;&lt;br /&gt;今買うなら、個人的には iPhone 3G S をオススメしたいです。操作性は日常の使用にかなりの影響がある要素ですし、何より対応アプリの充実度が違います！&lt;br /&gt;Google携帯は、1年・2年経って Android Marketの成長ぶりを見てからでも遅くはないかと。どうしても Google が好き！とか、新しもの好きとか、まだまだこれからの Android 市場で一旗揚げたい方は今すぐ！ですが。&lt;br /&gt;また、ソフトウェアの動作のもたつきやスティックのガタつきなどは Android というよりも端末固有の問題です。メーカー各社から端末が出そろい、選択肢が豊富になると Google 携帯の魅力もまた違ってくるのでしょう。&lt;br /&gt;&lt;br /&gt;&lt;script src="http://liebejudith.googlepages.com/microad_techjudith_content.js" type="text/javascript"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-263514703470440693?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/263514703470440693/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2009/06/iphone-3g-google.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/263514703470440693'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/263514703470440693'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2009/06/iphone-3g-google.html' title='iPhone 3G と Google 携帯'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-2950403664939271764</id><published>2009-06-10T01:17:00.007+09:00</published><updated>2009-06-11T07:52:47.490+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Google App Engine'/><category scheme='http://www.blogger.com/atom/ns#' term='Mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='PaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='DoCoMo'/><category scheme='http://www.blogger.com/atom/ns#' term='Cloud Computing'/><title type='text'>Google Developer Day 2009へ行ってきました。</title><content type='html'>&lt;a href="http://code.google.com/intl/ja/events/developerday/2009/home.html" target="_blank"&gt;Google Developer Day 2009&lt;/a&gt;へ行ってきました。&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://farm3.static.flickr.com/2483/3610166977_818bc2e261_b.jpg" title="R0014405 by liebejudith, on Flickr"&gt;&lt;img alt="R0014405" height="375" src="http://farm3.static.flickr.com/2483/3610166977_818bc2e261.jpg" width="500" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;午前中はミーティングが入っていたため、午後からの参加でした。&lt;br /&gt;&lt;br /&gt;残念ながら基調講演は聴けず。&lt;br /&gt;HTML5やGoogle Waveの話があったようです。&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://farm3.static.flickr.com/2482/3611522772_75dda3833f_b.jpg" title="R0014401 by liebejudith, on Flickr"&gt;&lt;img src="http://farm3.static.flickr.com/2482/3611522772_75dda3833f.jpg" width="500" height="375" alt="R0014401" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;聴いたセッションは・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;Google App Engine&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;- Life of Google App Engine Request -&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;スピーカーはGoogleのフレッド・ソオー氏。&lt;br /&gt;&lt;br /&gt;主にGAEのDatasotre周りの実装テクニックの話でした。&lt;br /&gt;Entityに関連Entityのキーとなる値であるStringのList Propertyを持たせる話とか&lt;br /&gt;Merge Joinのテクニックとか。&lt;br /&gt;&lt;br /&gt;私はハッキリ知らないのですが、恐らくLazy Loadingができないため&lt;br /&gt;このようなテクニックが存在するのでは？と思いました。&lt;br /&gt;&lt;br /&gt;Joinの話は、Salesforce.comのForce.comも同様なのでよく理解できます。&lt;br /&gt;&lt;br /&gt;既にGAEをバリバリ触っているような上級者向けのセッションでした。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;Java で動かす Google App Engine&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;スピーカーはGoogleの夷藤 勇人氏、鵜飼 文敏氏。&lt;br /&gt;&lt;br /&gt;こちらはGAE/Jの紹介セッションといった内容。&lt;br /&gt;&lt;br /&gt;GAEが何を提供するのか？&lt;br /&gt;認証・Datasotre・キャッシュ・Email・URLフェッチ等でどんなAPIを提供し、どんな実装をしているのか？&lt;br /&gt;Sandbox制限（Force.comのガバナ制限のようなもの）、&lt;br /&gt;今後実装予定の機能、&lt;br /&gt;スケールを考えたデータ構造の設計・実装テクニック（これは直前に聞いたセッションと多少被る内容も。）&lt;br /&gt;などのお話しがありました。&lt;br /&gt;&lt;br /&gt;表面上のAPI仕様と実装とが分かれているため、API Proxyというアーキテクチャが実現でき、これによりAOP/インターセプターっぽいことができるという話があり、ちょっとうらやましかったです。&lt;br /&gt;Force.comにもAOP的な機能が欲しいです。&lt;br /&gt;&lt;br /&gt;RDBではないので、データの非正規化を恐れずに！という話はよくわかります。あまり細々と正規化してクエリが複雑になるよりは、クラウドにおいてはシンプルなクエリ一発で必要なデータを取れるようにデータ設計するべきですね。&lt;br /&gt;&lt;br /&gt;GAEのDatastoreは、「ソフトスキーマ」というアーキテクチャを採用しているそうです。これは、スキーマを固定せずにJPAやJDOのアノテーションのみでスキーマを定義するというものだそうで。&lt;br /&gt;推測するに、Force.comのメタデータに近い概念なのではないでしょうか？&lt;br /&gt;わかりやすく言えば、Force.comではDB物理層に直接テーブル定義を生成しているわけではなく、"メタデータ"と呼ばれる「データ構造の定義」をDBに格納し、実データは多数のカラムを持つ単一テーブルに格納するというアーキテクチャです。&lt;br /&gt;GAEのDatastoreは実装にBigtableが使われているので、やはり物理層にテーブルを作成しているわけではありません。アノテーション定義によってアプリケーション側からはテーブルがあるように見えていながら、その裏側で動いている実装では個々のテーブルを作成せずにデータはすべてBigtableという多数のカラムを持つ単一のテーブルに格納している・・・というアーキテクチャなのでしょう。たぶん。&lt;br /&gt;&lt;br /&gt;GAEには非同期処理・テキスト全文検索・インバウンドメール・データのインポート/エクスポート等の機能はまだ実装されておらず、今後実装予定とのことです。&lt;br /&gt;まだエンタープライズ用途では使えないかな。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;クラウドコンピューティングがもたらす５つのメリットとは &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;スピーカーはGoogleの泉 篤彦氏。&lt;br /&gt;エンタープライズ分野のプリセールスエンジニアをされている方だそうです。&lt;br /&gt;このセッションでハッキリ聞くことができました。&lt;br /&gt;Googleがエンタープライズ向けに扱っているサービスには、GAEは含まれていません。&lt;br /&gt;&lt;br /&gt;このセッションは、Google AppsのPremier/Education Editionの紹介セッションという色が濃いモノでした。&lt;br /&gt;&lt;br /&gt;クラウドコンピューティングがもたらすメリット、というお題ですが、内容はクラウドのメリット、SaaSのメリット、Googleであることのメリット、Google Apps固有のメリットが混在していました。&lt;br /&gt;&lt;br /&gt;まあ、キレイに切り分けるのは難しいのですが、気をつけないと「クラウドコンピューティングってよくワカラナイ」という人がますます増えそうです。&lt;br /&gt;&lt;br /&gt;他のクラウドサービスとの連携が容易である、というくだりではSalesforceが紹介されていました。&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://farm3.static.flickr.com/2448/3611054692_131d9147bf_o.jpg" title="イメージ 1 by liebejudith, on Flickr"&gt;&lt;img alt="イメージ 1" height="395" src="http://farm3.static.flickr.com/2448/3611054692_bfa3535e8c.jpg" width="500" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;Google エンタープライズ　エコシステムとは –Google Enterprise Partner–&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;こちらも引き続き泉氏のセッション。&lt;br /&gt;&lt;br /&gt;エンタープライズ向けサービスのパートナー制度の紹介でした。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;Google テクノロジー ライトニングトーク&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;サイオステクノロジー松尾さんによる、自作のGAE向けフレームワーク"Kay"の紹介。&lt;br /&gt;デバッガを使えるのがいいですね。Force.comもブレークポイントを置いて、ステップ実行して、変数の値を確認して・・・とできたらいいのに。&lt;br /&gt;&lt;br /&gt;Seessaaの安藤さんによる、Rails on GAE/Jの話。&lt;br /&gt;当初はエライ大変な手順を踏まないとGAE/J上でRailsを動作させることはできなかったのを、とてもとてもカンタンにした、というお話し。&lt;br /&gt;&lt;br /&gt;日本Androidの会の近藤さんによる、Androidが組み込み業界へ与えるインパクトのお話し。将来はPCと携帯の垣根が無くなるという展望をお話しされていました。&lt;br /&gt;&lt;br /&gt;スパイスボックスラボラトリの神部さんによる、Open Social Hackathonのお話し。Hackathonに参加しよう！というメッセージを熱く語っていました。&lt;br /&gt;&lt;br /&gt;E-flowの久野氏による、Dalvik VM実装のお話し。Google謹製のDalvik VMがケータイJavaの2～5倍も遅かったので、自分で実装してケータイJavaと同等まで持って行ったお話し。非常に素晴らしい成果だと思います。一方で、Dalvik VMとは何か？に一切触れなかったので、会場には「そもそもDalvik VMってなに？」な人が多かったのでは？と心配になりました。&lt;br /&gt;&lt;br /&gt;最後に、松尾氏がTokyo GTUG（Tokyo Google Technology Users Group）を立ち上げました、と紹介されていました。&lt;br /&gt;&lt;br /&gt;Tokyo GTUG&lt;br /&gt;&lt;a href="http://groups.google.com/group/tokyo-gtug" target="_blank"&gt;http://groups.google.com/group/tokyo-gtug&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;個人的に（職業柄？）Googleのエンタープライズ向けサービス戦略の情報を得たかったのですが、今のところGoogleのエンタープライズ向けサービスはGoogle Appsと検索アプライアンス、企業向けGoogle Map APIという内容のようです。&lt;br /&gt;GAEはデータ管理やユーザの権限コントロールが不十分だったり、ワークフローなどが実装されてなかったりと、エンタープライズ用途にはまだまだですね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;なんと、事前登録者全員に携帯電話がプレゼントされました。&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://farm4.static.flickr.com/3601/3611586938_b1e308084d_b.jpg" title="R0014524 by liebejudith, on Flickr"&gt;&lt;img src="http://farm4.static.flickr.com/3601/3611586938_b1e308084d_m.jpg" width="240" height="180" alt="R0014524" /&gt;&lt;/a&gt;&lt;a target="_blank" href="http://farm4.static.flickr.com/3357/3610773197_6e04013c88_b.jpg" title="R0014521 by liebejudith, on Flickr"&gt;&lt;img src="http://farm4.static.flickr.com/3357/3610773197_6e04013c88_m.jpg" width="240" height="180" alt="R0014521" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Google製OS「Android」搭載のHTC製端末です。&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://farm3.static.flickr.com/2459/3610774323_b4d016ff0c_b.jpg" title="R0014523 by liebejudith, on Flickr"&gt;&lt;img src="http://farm3.static.flickr.com/2459/3610774323_b4d016ff0c_m.jpg" width="240" height="180" alt="R0014523" /&gt;&lt;/a&gt;&lt;a target="_blank" href="http://farm4.static.flickr.com/3325/3611583534_4659e523e3_b.jpg" title="R0014509 by liebejudith, on Flickr"&gt;&lt;img src="http://farm4.static.flickr.com/3325/3611583534_4659e523e3_m.jpg" width="240" height="180" alt="R0014509" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;先日、サンフランシスコで行われたGoogle I/Oでも入場者に配られたそうですが&lt;br /&gt;まさか、日本でもやるとは！&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://farm3.static.flickr.com/2464/3610985898_2ce45a36f0_b.jpg" title="R0014470 by liebejudith, on Flickr"&gt;&lt;img src="http://farm3.static.flickr.com/2464/3610985898_2ce45a36f0_m.jpg" width="240" height="180" alt="R0014470" /&gt;&lt;/a&gt;&lt;a target="_blank" href="http://farm3.static.flickr.com/2466/3610989160_05ef7001a6_b.jpg" title="R0014492 by liebejudith, on Flickr"&gt;&lt;img src="http://farm3.static.flickr.com/2466/3610989160_05ef7001a6_m.jpg" width="240" height="180" alt="R0014492" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Googleさん、太っ腹です。&lt;br /&gt;&lt;br /&gt;これはdocomoから発売されるHT-03Aとほぼ同等のものです。&lt;br /&gt;&lt;a href="http://www.nttdocomo.co.jp/product/foma/pro/ht03a/index.html" target="_blank"&gt;http://www.nttdocomo.co.jp/product/foma/pro/ht03a/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;docomo発売前なので、この日この端末を手にした人は&lt;br /&gt;恐らく日本で最も早く日本語入力可能なAndroid端末を入手したことに&lt;br /&gt;なるのではないでしょうか。&lt;br /&gt;&lt;br /&gt;あともらったのは、タオルとかステッカーとか。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://farm4.static.flickr.com/3339/3610271565_64239af1df_b.jpg" target="_blank" title="R0014497 by liebejudith, on Flickr"&gt;&lt;img alt="R0014497" height="375" src="http://farm4.static.flickr.com/3339/3610271565_64239af1df.jpg" width="500" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;事前登録の時にTシャツのサイズを聞かれたので&lt;br /&gt;てっきりTシャツをもらえるのかと思っていましたが・・・&lt;br /&gt;急遽タオルに変更になったのでしょうか。&lt;br /&gt;&lt;br /&gt;&lt;script src="http://liebejudith.googlepages.com/microad_techjudith_content.js" type="text/javascript"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-2950403664939271764?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/2950403664939271764/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2009/06/google-developer-day-2009.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/2950403664939271764'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/2950403664939271764'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2009/06/google-developer-day-2009.html' title='Google Developer Day 2009へ行ってきました。'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm3.static.flickr.com/2483/3610166977_818bc2e261_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-1484171860008386008</id><published>2009-04-20T23:08:00.010+09:00</published><updated>2009-04-21T07:34:20.987+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='OSS'/><category scheme='http://www.blogger.com/atom/ns#' term='Sun'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle'/><category scheme='http://www.blogger.com/atom/ns#' term='Glassfish'/><category scheme='http://www.blogger.com/atom/ns#' term='Cloud Computing'/><title type='text'>沈みゆく太陽</title><content type='html'>今日はいったい、世界中でどれだけの人がこんなタイトルで&lt;br /&gt;ブログエントリを書いているのでしょうか？&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;かねてより売却先を探していたSun Microsystemsは&lt;br /&gt;先日報道のあったIBMではなく、Oracleに買収されることが決定したそうです。&lt;br /&gt;&lt;br /&gt;オラクル、74億ドルでサンの買収に合意、ハードウェア市場へ進出（ Computerworld.jp）&lt;br /&gt;&lt;a href="http://www.computerworld.jp/topics/ma/143009.html"&gt;http://www.computerworld.jp/topics/ma/143009.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;オラクル、サンの買収で最終合意（CNET Japan）&lt;br /&gt;&lt;a href="http://japan.cnet.com/news/biz/story/0,2000056020,20391986,00.htm"&gt;http://japan.cnet.com/news/biz/story/0,2000056020,20391986,00.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;［速報］オラクルが74億ドルでサンを買収（ITpro総合）&lt;br /&gt;&lt;a href="http://itpro.nikkeibp.co.jp/article/NEWS/20090420/328819/"&gt;http://itpro.nikkeibp.co.jp/article/NEWS/20090420/328819/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;[oracle] Oracle、Sunを買収!!!!!（S/N Ratio (by SATO Naoki) by satonaoki）&lt;br /&gt;&lt;a href="http://d.hatena.ne.jp/satonaoki/20090420/p2"&gt;http://d.hatena.ne.jp/satonaoki/20090420/p2&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ラウンドアップ：オラクル、サン買収に至るまでを振り返る&lt;br /&gt;&lt;a href="http://japan.cnet.com/news/biz/story/0,2000056020,20391994,00.htm"&gt;http://japan.cnet.com/news/biz/story/0,2000056020,20391994,00.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;米オラクル、サンマイクロを74億ドルで買収へ（Reuters: テクノロジー）&lt;br /&gt;&lt;a href="http://jp.reuters.com/article/technologyNews/idJPJAPAN-37591820090420"&gt;http://jp.reuters.com/article/technologyNews/idJPJAPAN-37591820090420&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;【速報】オラクルが74億ドルでサンを買収（＠IT）&lt;br /&gt;&lt;a href="http://www.atmarkit.co.jp/news/200904/20/oracle.html"&gt;http://www.atmarkit.co.jp/news/200904/20/oracle.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;非常に驚きましたが、ニューヨーカーなビジネスマン集団のIBMよりは&lt;br /&gt;シリコンバレー企業のOracleのほうがずっとしっくりくる組み合わせとも言えます。&lt;br /&gt;プロダクトの品揃えでも、被りよりも補完の要素が多いですし。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;特にOracle が欲しいのは、Javaテクノロジのリーダーという地位と&lt;br /&gt;サーバおよびストレージでしょう。&lt;br /&gt;&lt;br /&gt;MySQLは微妙な立場ですね。&lt;br /&gt;Oracle DBのシェアを下げた強敵でしたから。&lt;br /&gt;&lt;br /&gt;Oracleはオープンソースからは一歩引いた立場と見えるので、&lt;br /&gt;Sunの持っているOSSプロダクトがどうなるか、この先に注目です。&lt;br /&gt;&lt;br /&gt;Oracleがこの買収を最大限に活かせれば、向かうところ敵なしですね。&lt;br /&gt;ライバルと呼べるのはIBMぐらいでしょうか。&lt;br /&gt;&lt;br /&gt;ハードウェア、データベース、アプリケーションサーバ、&lt;br /&gt;Javaテクノロジ、サーバ仮想化、ビジネスアプリケーション、&lt;br /&gt;クラウドプラットフォーム、OS、SOA・・・&lt;br /&gt;エンタープライズ分野でのソリューションをほぼ全方位カバーすることになります。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;しかし・・・&lt;br /&gt;&lt;br /&gt;私自身、Sunには多くの知り合いがいる・・・と思っていたら&lt;br /&gt;気がつけば既に退職されている方の方が圧倒的に多いという状況でした。&lt;br /&gt;&lt;br /&gt;奇しくも今日もまた、大変お世話になった方がSunを退職されると&lt;br /&gt;ブログに書かれた日でもありました。&lt;br /&gt;（ご本人からは1週間ほど前に聞いていたのですが・・・）&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ここ数年は株価（＝企業価値とも言い換えられますが・・・）が&lt;br /&gt;下がる一方だったSunですが、数々の業界のカリスマを輩出し、&lt;br /&gt;Javaという一大プラットフォームを築いたSunは&lt;br /&gt;いちエンジニアとして憧れの企業でした。&lt;br /&gt;そのSunが無くなってしまうのは本当に寂しい限りです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-1484171860008386008?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/1484171860008386008/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2009/04/blog-post.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/1484171860008386008'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/1484171860008386008'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2009/04/blog-post.html' title='沈みゆく太陽'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-7150051509989221131</id><published>2009-01-05T22:32:00.003+09:00</published><updated>2009-01-06T06:21:17.726+09:00</updated><title type='text'>YAGNIは「今必要なことだけをやれ」ではなく</title><content type='html'>XPの提唱する「YAGNI（You Aren't Going to Need It）」は&lt;br /&gt;XPの思想から離れて個人への戒めの言葉として使われる場面が多くなった今、&lt;br /&gt;&lt;br /&gt;「今必要なことだけをやれ」ではなく、&lt;br /&gt;&lt;br /&gt;「今必要とされていることすべてを今すぐやれ」&lt;br /&gt;&lt;br /&gt;の方がより的確なのではないかと実感する今日この頃です。&lt;br /&gt;&lt;br /&gt;「今必要なことだけをやれ」と言うと、とたんに待ち姿勢・受け身になってしまう人が多いのです。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-7150051509989221131?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/7150051509989221131/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2009/01/yagni.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/7150051509989221131'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/7150051509989221131'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2009/01/yagni.html' title='YAGNIは「今必要なことだけをやれ」ではなく'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-801701707231139886</id><published>2009-01-04T23:54:00.019+09:00</published><updated>2009-01-09T12:07:30.106+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='PaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><category scheme='http://www.blogger.com/atom/ns#' term='Tomcat'/><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='iBatis'/><category scheme='http://www.blogger.com/atom/ns#' term='Google App Engine'/><category scheme='http://www.blogger.com/atom/ns#' term='OSS'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='SpringFramework'/><category scheme='http://www.blogger.com/atom/ns#' term='Python'/><category scheme='http://www.blogger.com/atom/ns#' term='Cloud Computing'/><title type='text'>Google App EngineのJava版「Stax」を触ってみました</title><content type='html'>&lt;a href="http://www.stax.net/" target="_blank"&gt;Amazon EC2上で提供されるJava版PaaSサービス「Stax」&lt;/a&gt;をちょっと触ってみました。今のところはβサービスで、まだ実装されていない機能もあったりしますが無料で試すことができます。&lt;br /&gt;「Google App EngineのJava版」としてニュース記事等でも紹介されています。&lt;br /&gt;&lt;br /&gt;Java対応のGoogle App Engineとも言うべき「Stax Networks」ローンチ&lt;br /&gt;&lt;a target="_blank" href="http://jp.techcrunch.com/archives/20081216stax-networks-launches-google-app-engine-for-java/"&gt;http://jp.techcrunch.com/archives/20081216stax-networks-launches-google-app-engine-for-java/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-size:x-large;"&gt;用意されている環境&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Apache Tomcat/6.0.16&lt;/li&gt;&lt;li&gt;MySQL/5.0.51&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;要するにServlet2.5/JSP2.1環境を使えるってことですね。JVMはJavaSE5相当のようです。&lt;br /&gt;GoogleもSalesforce.comも、Servletコンテナにはより軽いResineを採用していますが、ここはTomcatですね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-size:x-large;"&gt;サポートするフレームワーク&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Apache Struts（ただし、1.xではなく2.0.11）&lt;/li&gt;&lt;li&gt;Apache Wicket&lt;/li&gt;&lt;li&gt;Adobe Flex/BlazeDS&lt;/li&gt;&lt;li&gt;Google Web Tool Kit&lt;/li&gt;&lt;li&gt;Adobe ColdFusion 8&lt;/li&gt;&lt;li&gt;JRuby on Rails&lt;/li&gt;&lt;/ul&gt;とかドキュメントには書いてありますが、アプリケーションの初期作成時のテンプレートとして、デフォルトで必要なライブラリを入れてくれて、最低限の設定済みのxmlファイル類を入れてくれるってだけです。&lt;br /&gt;逆に、WEB-INF/libにライブラリをつっこんで、web.xmlを編集して、WEB-INFに必要な設定ファイルを追加すれば他のフレームワークも使えます。DI/AOPコンテナもORマッピングフレームワークも使えます。&lt;br /&gt;Struts1.3.8/Spring2.5.6/iBATIS2.3.4とか、JSF1.2RI/Spring2.5.6/Hibernate3.3.1とか、試してみたら動きました。この分ならSeasar2を使ったアプリも問題なく動作するでしょう。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-size:x-large;"&gt;アカウントの作成&lt;/span&gt;&lt;br /&gt;StaxのWebサイト &lt;a target="_blank" href="http://www.stax.net/"&gt;http://www.stax.net/&lt;/a&gt; へ行きます。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_qRW47nLTz-8/SWDOFTG0UxI/AAAAAAAAHZU/DlSGxrdJLM4/s1600-h/top.jpg" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 366px;" src="http://4.bp.blogspot.com/_qRW47nLTz-8/SWDOFTG0UxI/AAAAAAAAHZU/DlSGxrdJLM4/s400/top.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5287452552956498706" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;「Apply for the Beta」をクリックしてサインアップ画面へ行き、メールアドレスを入力して送信すると認証メールが送られてくるので、そこに書いてあるURLにアクセスするとサインアップ終了です。簡単です。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_qRW47nLTz-8/SWDOFpnX39I/AAAAAAAAHZc/8mFz78K4Euc/s1600-h/signup.jpg" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 327px;" src="http://4.bp.blogspot.com/_qRW47nLTz-8/SWDOFpnX39I/AAAAAAAAHZc/8mFz78K4Euc/s400/signup.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5287452558998626258" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;改めてStaxのWebサイトからログインするとアプリケーション管理画面に入れます。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_qRW47nLTz-8/SWDYGNGUbTI/AAAAAAAAHZ0/3sWJRh42cC8/s1600-h/console.jpg" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 307px;" src="http://3.bp.blogspot.com/_qRW47nLTz-8/SWDYGNGUbTI/AAAAAAAAHZ0/3sWJRh42cC8/s400/console.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5287463563639942450" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;管理画面では、TomcatのログやApacheのアクセスログ等の参照、アプリケーションの作成・DBの作成・設定・パフォーマンスやアクセス監視モニタの参照等を利用できます。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_qRW47nLTz-8/SWIlBCjlerI/AAAAAAAAHaE/VpqLDIQWqhY/s1600-h/console.JPG" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 345px;" src="http://2.bp.blogspot.com/_qRW47nLTz-8/SWIlBCjlerI/AAAAAAAAHaE/VpqLDIQWqhY/s400/console.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5287829612282608306" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-size:x-large;"&gt;アプリケーションの作成&lt;/span&gt;&lt;br /&gt;管理画面左側メニューの「Create App」をクリックすると、アプリケーションを作成できます。ユニークな名前を付けましょう。Application Core Runtimeからフレームワークを選べますが、前述の通り、Servlet2.5/JSP2.1環境で動作するものなら好きなモノを使えます。用意されているもの以外のフレームワークを使うのなら「Basic Servlet and JSP」を選択してもかまいません。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_qRW47nLTz-8/SWDOGMLkqQI/AAAAAAAAHZs/pgbDBTgeGAA/s1600-h/createapp.jpg" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 332px;" src="http://3.bp.blogspot.com/_qRW47nLTz-8/SWDOGMLkqQI/AAAAAAAAHZs/pgbDBTgeGAA/s400/createapp.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5287452568277264642" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Stax SDK &lt;a target="_blank" href="http://stax-downloads.s3.amazonaws.com/sdk/stax-sdk-0.2.12-dist.zip"&gt;http://stax-downloads.s3.amazonaws.com/sdk/stax-sdk-0.2.12-dist.zip&lt;/a&gt; をダウンロードして解凍しておきます。&lt;br /&gt;&lt;a target="_blank" href="http://www.stax.net/appconsole/createapp"&gt;http://www.stax.net/appconsole/createapp&lt;/a&gt; から、任意の名前のアプリケーションを作成します。&lt;br /&gt;解凍したディレクトリ中の「Stax Console」ショートカットを起動します。&lt;br /&gt;コマンドラインコンソールが起動するので、そこから&lt;br /&gt;stax getapp -a [ユーザ名]/[アプリ名] -u [ユーザ名] -p [パスワード]&lt;br /&gt;を実行すると、アプリケーションのひな形がダウンロードされます。このひな形はEclipseプロジェクトになっているので、そのままEclipseへインポート可能です。でもこのプロジェクトはWTP互換じゃないのが残念です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-size:x-large;"&gt;アプリケーションの構造&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;webapp: JavaEE Webアプリケーションディレクトリ&lt;/li&gt;&lt;li&gt;src: Java ソースファイルディレクトリ&lt;/li&gt;&lt;li&gt;conf/stax-application.xml: Stax デプロイメントディスクリプタ&lt;/li&gt;&lt;/ul&gt;webappディレクトリの中は通常のServletアプリと同じなので、WEB-INF/libに好きなライブラリを入れたり、WEB-INF/web.xmlを編集したり、設定ファイルやTLDを追加したり、自由にできます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-size:x-large;"&gt;DBの作成&lt;/span&gt;&lt;br /&gt;管理画面左側メニューの「Create DB」をクリックすると、アプリケーションを作成できます。任意のDB名、ユーザー名、パスワードを設定します。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_qRW47nLTz-8/SWDOFyQeUrI/AAAAAAAAHZk/BD2DjQpFnAQ/s1600-h/createdb.jpg" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 332px;" src="http://4.bp.blogspot.com/_qRW47nLTz-8/SWDOFyQeUrI/AAAAAAAAHZk/BD2DjQpFnAQ/s400/createdb.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5287452561318498994" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;DB作成後、テーブルやら何やらを作成するには、なんとTCP:3306が開いているのでMySQL Query Browser や mysql コマンドが使えます（＾＾；（←いいのか？）&lt;br /&gt;アプリケーションのconfディレクトリにあるstax-application.xmlに、下記の設定を追記します。&lt;br /&gt;&lt;br /&gt;&amp;lt;resource name="jdbc/db01" auth="Container" type="javax.sql.DataSource"&amp;gt;&lt;br /&gt;&amp;lt;param name="username" value="[ユーザ名]" /&amp;gt;&lt;br /&gt;&amp;lt;param name="password" value="[パスワード]" /&amp;gt;&lt;br /&gt;&amp;lt;param name="url" value="jdbc:stax://[DB名]" /&amp;gt;&lt;br /&gt;&amp;lt;/resource&amp;gt;&lt;br /&gt;&lt;br /&gt;Javaアプリケーションからは、JNDI参照名「java:comp/env/jdbc/[DB名]」でLookupできます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-size:x-large;"&gt;アプリケーションのデプロイと動作確認&lt;/span&gt;&lt;br /&gt;コマンドラインから&lt;br /&gt;stax deploy -a [ユーザ名]/[アプリ名] -u [ユーザ名] -p [パスワード]&lt;br /&gt;とすると、作成したアプリケーションをアップロードできます。&lt;br /&gt;Antを使ってWARファイルからのデプロイも可能です。WARファイルをそのままアップロードできるUIがあればいいのに。。。&lt;br /&gt;&lt;br /&gt;次のURLからアプリケーションの動作を確認できます。&lt;br /&gt;http://[アプリ名].[ユーザ名].staxapps.net/&lt;br /&gt;&lt;br /&gt;何度アップロード/デプロイし直しても反映されるので、クラスローダはカスタマイズしていじっているっぽいですね。Tomcatのデフォルトのリロード機能ではヒープメモリがすぐに破綻しますから。&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;[追記]&lt;br /&gt;サーバのログを見るとTomcatまんま再起動しているっぽいです。&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;一度デプロイしたアプリケーションは削除できません（＾＾；削除機能はまだ未実装のようです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-size:x-large;"&gt;ちょっと触った所感&lt;/span&gt;&lt;br /&gt;Tomcat/MySQL/Eclipse環境に慣れた人ならすぐに開発できるのが良いですね。フレームワークもお仕着せのものだけでなく好きなものを選べますし、使い慣れたRDBがそのまま使えます。Python/Django/webappsにどうしてもなじめず、Google App Engineを放り出してしまった私には嬉しいポイントです。&lt;br /&gt;懸念としては、サーバの信頼性・可用性・セキュリティと正式サービス開始後の料金体系です。まあ、これはすべてのクラウドサービスに言われていることですが。Amazon E2Cを利用しているのでこのレベルではある程度の信頼性はありますが、その上で動作しているアプリケーションサーバレベルではStaxの技術力・資金力・信頼性が問われるところでしょう。&lt;br /&gt;&lt;br /&gt;Amazon EC2上に構築されたってのが、次世代のビジネスモデルを予感させます。自前のデータセンターを持たずにSaaS/PaaS事業を展開するという例はこれからも増える可能性がありますね。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-801701707231139886?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/801701707231139886/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2009/01/google-app-enginejavastax.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/801701707231139886'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/801701707231139886'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2009/01/google-app-enginejavastax.html' title='Google App EngineのJava版「Stax」を触ってみました'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_qRW47nLTz-8/SWDOFTG0UxI/AAAAAAAAHZU/DlSGxrdJLM4/s72-c/top.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-5085453431626165778</id><published>2008-12-31T06:39:00.004+09:00</published><updated>2009-01-05T00:50:08.507+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='PaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Cloud Computing'/><title type='text'>2008年を振り返って</title><content type='html'>2008年は「SaaS元年」とも言われましたが、振り返ってみると「SaaS」よりも「クラウドコンピューティング」という言葉の方が幅を利かせていた感があります。&lt;br /&gt;&lt;br /&gt;SaaSはクラウドコンピューティングの使い道の1つ・クラウドコンピューティングの1形態ではあります。&lt;br /&gt;&lt;br /&gt;クラウドコンピューティングの現状は、まだまだ多くのベンダーが研究開発段階・試験サービス段階だったり、多くのユーザー企業が評価段階だったりするためか、サービスよりもクラウドそのもののアーキテクチャに目を向ける人が多かったような気もしました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;でも、クラウドがどんなアーキテクチャで構成されているのかなんて、わからなくていいんです。マルチテナントとか、内部がP2P的構成になっているとか、メタデータアーキテクチャとか、仮想化レイヤーの構成とか、内輪の話であって、ユーザにとってはどうでもいいんです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;そんなことはわからなくていいのが、「クラウド」なのですから。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;そういう意味では、各社のクラウドコンピューティングのインフラが整いつつあり、その上でユーザに対してどんなサービス/プラットフォームが提供されるのか？が問われ、内容と質が比較される2009年こそが、真の「SaaS/PaaS元年」になるのかもしれません。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;「クラウドコンピューティングはバズワードに過ぎない」と言う人もいますが、違います。確実に、実用化・事業化・収益化している大手が存在する分野ですから。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;今年もあとわずか。ありがとうございました。&lt;br /&gt;来年からは私自身の立ち位置が少々変わるため、これまでのように思いつきでふらっと書くことはできないと思いますが、今後ともよろしくお願い申し上げます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2008年12月31日&lt;br /&gt;&lt;br /&gt;liebejudith拝&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-5085453431626165778?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/5085453431626165778/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/12/2008.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5085453431626165778'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5085453431626165778'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/12/2008.html' title='2008年を振り返って'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-3353825058789825582</id><published>2008-12-10T00:56:00.011+09:00</published><updated>2008-12-10T07:59:42.021+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><category scheme='http://www.blogger.com/atom/ns#' term='Cloud Computing'/><title type='text'>Force.com Sites を試してみました</title><content type='html'>Force.com Sites は、Salesforce.com が提供する Force.com を使って、外部公開向けサイトを構築できる機能です。&lt;br /&gt;今までの Salesforce.com の提供する機能は、社内向け・組織内部向けが中心だったのですが Force.com Sites で外部公開サイトの作成も同じようにできるようになったみたいです。しかも、従来の機能とバッチリ連携・組み合わせできます。&lt;br /&gt;&lt;br /&gt;Google App Engine でも「外部公開向けサイトを構築」という意味では同じようなことができるのですが、Force.com Sites は従来の Force.com と全く同じように、SaaS 形式で用意された開発環境上でサイトを作れること、Salesforce の機能と完全にシームレスに連携できること、それから・・・恐らく・・・料金が違います。Force.com Sites はまだ正式サービスではないので料金体系も明らかになっていないのですが。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;「※Force.com SitesはDreamforce 2008で発表され、現在はDreamforce参加者にのみ開発者プレビューが提供されてます。」とあったので、そうかと思っていたのですが、1週間ぐらい前から開発者プレビューが開始されていたようです。&lt;br /&gt;ここから申し込めるので、さっそく登録してみました。すでにDeveloperアカウントを持っている人はかなりカンタンに申し込みができます。&lt;br /&gt;&lt;a href="http://developer.force.com/iwantsites" target="_blank"&gt;http://developer.force.com/iwantsites&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;登録後にログインすると、左側の「開発」メニューに「サイト」というメニューが追加されていました。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_qRW47nLTz-8/ST6Vk6Pt_vI/AAAAAAAAFvE/XRnDQ9G3C3M/s1600-h/menu.JPG" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 131px; height: 320px;" src="http://1.bp.blogspot.com/_qRW47nLTz-8/ST6Vk6Pt_vI/AAAAAAAAFvE/XRnDQ9G3C3M/s320/menu.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5277820274667814642" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://wiki.apexdevnet.com/index.php/JP_Sites?useskin=dfcjskin" target="_blank"&gt;ドキュメントは英語のみ&lt;/a&gt;ですが、管理画面はすべて日本語化されています。&lt;br /&gt;&lt;br /&gt;まず最初に、ドメインを登録します。自分が所有している完全オリジナルドメインも使えるようです。ドメインは一度設定すると後から変更ができないようです。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_qRW47nLTz-8/ST6VmBeKg-I/AAAAAAAAFvk/iAGOfrxdhOk/s1600-h/top01.JPG" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 231px;" src="http://3.bp.blogspot.com/_qRW47nLTz-8/ST6VmBeKg-I/AAAAAAAAFvk/iAGOfrxdhOk/s320/top01.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5277820293787321314" /&gt;&lt;/a&gt;&lt;br /&gt;次に、サイトを作成します。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_qRW47nLTz-8/ST6Vlue4r8I/AAAAAAAAFvU/uP0Py2Q5CPc/s1600-h/newsite.JPG" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 242px;" src="http://3.bp.blogspot.com/_qRW47nLTz-8/ST6Vlue4r8I/AAAAAAAAFvU/uP0Py2Q5CPc/s320/newsite.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5277820288690073538" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;「フィードの有効化」にチェックを淹れるだけで、フィード配信も可能です。&lt;br /&gt;&lt;br /&gt;通常の公開サイトで使いそうなページはデフォルトでテンプレートが用意されています。&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_qRW47nLTz-8/ST6VluQY2WI/AAAAAAAAFvc/Eh7eWqoGqQs/s1600-h/pagelist.JPG" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 249px;" src="http://3.bp.blogspot.com/_qRW47nLTz-8/ST6VluQY2WI/AAAAAAAAFvc/Eh7eWqoGqQs/s320/pagelist.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5277820288629266786" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;もちろん、Visual Force を使って自由に新規作成・編集可能です。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_qRW47nLTz-8/ST6Vk1tN8DI/AAAAAAAAFvM/QOnrothOV4A/s1600-h/newpage.JPG" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 261px;" src="http://1.bp.blogspot.com/_qRW47nLTz-8/ST6Vk1tN8DI/AAAAAAAAFvM/QOnrothOV4A/s320/newpage.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5277820273449365554" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;こんな感じでサイトを作っていきます。なんだか CMS っぽい色合いも濃くなってきた感があります。SaaS 形式の CMS。&lt;br /&gt;&lt;br /&gt;いやぁー、これから楽しくなりそうです。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-3353825058789825582?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/3353825058789825582/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/12/forcecom-sites.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/3353825058789825582'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/3353825058789825582'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/12/forcecom-sites.html' title='Force.com Sites を試してみました'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_qRW47nLTz-8/ST6Vk6Pt_vI/AAAAAAAAFvE/XRnDQ9G3C3M/s72-c/menu.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-4169616165406889442</id><published>2008-12-09T02:26:00.003+09:00</published><updated>2008-12-09T02:30:54.255+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='SpringFramework'/><title type='text'>Spring Framework 3.0 M1 のEL式</title><content type='html'>Spring Framework 3.0 M1 のEL式&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;bean&amp;nbsp;id=&amp;quot;beanA&amp;quot;&amp;nbsp;class=&amp;quot;com.developpez.hikage.spring3.BeanA&amp;quot;&amp;nbsp;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;property&amp;nbsp;name=&amp;quot;valueTwo&amp;quot;&amp;nbsp;value=&amp;quot;test&amp;quot;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/bean&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;bean&amp;nbsp;id=&amp;quot;beanB&amp;quot;&amp;nbsp;class=&amp;quot;com.developpez.hikage.spring3.BeanB&amp;quot;&amp;nbsp;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;property&amp;nbsp;name=&amp;quot;valueOne&amp;quot;&amp;nbsp;value=&amp;quot;#{beanA.valueTwo}&amp;quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/property&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/bean&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;とか書ける実行時評価式のようです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-4169616165406889442?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/4169616165406889442/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/12/spring-framework-30-m1-el.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/4169616165406889442'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/4169616165406889442'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/12/spring-framework-30-m1-el.html' title='Spring Framework 3.0 M1 のEL式'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-1770599642767529029</id><published>2008-12-08T23:08:00.004+09:00</published><updated>2008-12-09T16:06:52.920+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google App Engine'/><category scheme='http://www.blogger.com/atom/ns#' term='PaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><title type='text'>Force.com for Google App Engine</title><content type='html'>Force.com for Google App Engine&lt;br /&gt;&lt;a href="http://developer.force.com/appengine" target="_blank"&gt;http://developer.force.com/appengine&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;というのがリリースされたみたいです。GAEからForce.comのAPIを呼び出せるPythonライブラリだそうです。&lt;br /&gt;コンシューマ向けのフロントはGAEで、顧客情報管理はセールスフォースで、のような利用が想定されているのでしょうか。&lt;br /&gt;来年からサービス開始すると発表されている&lt;a href="http://wiki.apexdevnet.com/index.php/JP_Sites?useskin=dfcjskin" target="_blank"&gt;Force.com Sites&lt;/a&gt;も外部公開サイト向けの機能ですが、まだ一部ユーザ向けプレビューのみで料金体系や利用上の制約条件が発表されていません。Force.com Sites では完全独自ドメインでの利用は難しいですし。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-1770599642767529029?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/1770599642767529029/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/12/forcecom-for-google-app-engine.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/1770599642767529029'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/1770599642767529029'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/12/forcecom-for-google-app-engine.html' title='Force.com for Google App Engine'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-2604624314830428129</id><published>2008-12-07T12:40:00.007+09:00</published><updated>2008-12-09T02:36:43.657+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='SpringFramework'/><title type='text'>Spring Framework 3.0M1 リリース</title><content type='html'>Spring Frameworkの次期バージョン3.0の最初のマイルストーンがリリースされましたね。&lt;br /&gt;&lt;a href="http://blog.springsource.com/2008/12/05/spring-framework-30-m1-released/" target="_blank"&gt;http://blog.springsource.com/2008/12/05/spring-framework-30-m1-released/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ドキュメントはまだJavadocしかありません。&lt;br /&gt;&lt;br /&gt;BeanFactory#getBean()がGenerics対応してます。&lt;br /&gt;・・・WebアプリではWebApplicationContextを使うからあまり関係ありませんが（笑）&lt;br /&gt;&lt;br /&gt;@Configurationや@Beanは入っていませんね・・・&lt;br /&gt;3.0で入ると言われていたSpring Java Config は、今のところは標準でバンドルされていないようです。&lt;br /&gt;&lt;br /&gt;Changelogをざっと見たところ、主要なポイントはこんな感じです。&lt;br /&gt;&lt;ul&gt;&lt;li&gt;JavaSE5サポート（Genericsや可変長引数など）&lt;br /&gt;&lt;/li&gt;&lt;li&gt;JUnit 4.5 および JRuby 1.1 のサポート&lt;br /&gt;&lt;/li&gt;&lt;li&gt;WebLogic 8.1 および WebSphere 5.1 のサポートを削除&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ネイティブ TopLink API のサポートを削除（JPA使いましょう）&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Commons Attributes のサポートの削除（Java5のアノテーションを使いましょう）&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Jakarta JSTL for JSP1.2 のサポートを削除（JSP2.0を使いましょう）&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Struts 1.x Action delegation をサポート（DelegatingRequestProcessorを使いましょうってことかな？）&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ContextLoaderServlet および Log4jConfigServlet を削除（もう要らないよね？ってことかな？）&lt;br /&gt;&lt;/li&gt;&lt;li&gt;JUnit 3.8は非推奨に&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Bean定義で#{...}式をサポート&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Atom/RSS Feed View を追加&lt;br /&gt;&lt;/li&gt;&lt;li&gt;"spring:url" および "spring:param" JSP タグを追加&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Atom/RSS Feed View というのはAtom/RSSフィードの生成・パブリッシング機能で、&lt;a href="https://rome.dev.java.net/" target="_blank"&gt;Project ROME&lt;/a&gt;の機能を利用しています。&lt;br /&gt;&lt;br /&gt;あとは、Spring ELというのが導入され、Bean定義で#{…}が使えるとのことですが・・・Javadocだけで、マニュアルもサンプルアプリケーションも無い状況ではいまいちピンと来ません・・・&lt;br /&gt;&lt;br /&gt;明記されている箇所を見つけられなかったのですが、J2SE1&lt;br /&gt;4.2以前のサポートは削除され、JavaSE5以降が前提となっている可能性も高そうです。&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;※追記：思いっきり「Note that Spring Framework 3.0 requires Java 5 or above and J2EE 1.4 or above. We are building on Java 6 and Java EE 5 as the primary platform levels - but rest assured, we will retain compatibility with Java 5 enabled J2EE 1.4 servers such as WebLogic 9 and WebSphere 6.1.」とありました・・・（汗；&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-2604624314830428129?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/2604624314830428129/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/12/spring30m1.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/2604624314830428129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/2604624314830428129'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/12/spring30m1.html' title='Spring Framework 3.0M1 リリース'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-5524660163469343908</id><published>2008-12-07T11:44:00.006+09:00</published><updated>2008-12-08T08:02:17.190+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='PaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><category scheme='http://www.blogger.com/atom/ns#' term='Cloud Computing'/><title type='text'>世界初のJava-PaaSはMSが実現？</title><content type='html'>この週末、Windows AzureのPDC2008と公式ページでの発表資料を見てました。&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;AzureがJavaをサポート?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.microsoft.com/azure/" target="_blank"&gt;AzureのWebサイト&lt;/a&gt;の至る所に「Windows Azure welcomes third party tools and languages such as Eclipse, Ruby, PHP, and Python.」&lt;br /&gt;とあるので、.NET以外のアプリケーションもサポートしそうですね。&lt;br /&gt;&lt;a href="http://www.microsoft.com/azure/howdoesitwork.mspx" target="_blank"&gt;How Does It Work?というタイトルのページ&lt;/a&gt;のComming Soon のところにある図には、Eclipse/Python/Ruby/PHPのロゴが掲載されています。&lt;br /&gt;&lt;a href="http://www.microsoft.com/azure/howdoesitwork.mspx" target="_blank"&gt;http://www.microsoft.com/azure/howdoesitwork.mspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;個人的に注目したいのは「Eclipse」です。Javaもサポートされるのでしょうか？&lt;br /&gt;この、PDC2008発表資料の5ページ目には、Javaのロゴが出てきます。&lt;br /&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB01.pptx" target="_blank"&gt;http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB01.pptx&lt;/a&gt;&lt;br /&gt;確かに、現在Windows Server上で動作するモノは基本的にAzureでもサポートすると言ってますし。&lt;br /&gt;でも「Eclipse」ではなく明確に「Java」と記載されている記述は、他には見つけられませんでした。&lt;br /&gt;&lt;br /&gt;Google App Engine がサポートを予定している Python 以外の言語に Java が含まれるという噂もありますが、世界初のJava-PaaSを提供するのがMicrosoftということになったら面白いですね。&lt;br /&gt;&lt;br /&gt;まあ、Application Serverは開発者側で用意しなければならないと思うので、ミドルウェアやアプリケーションフレームワークまで用意されている Google App Engine や Force.com よりは一段低いレイヤーになるとは思いますが。&lt;br /&gt;とは言え、独自のアプリケーションサーバやフレームワークよりも、使い慣れたモノが使える方が嬉しい人も多そうではあります。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;AzureはWindows？&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;それにしても・・・&lt;br /&gt;&lt;br /&gt;まだスクリーンショット等が公開されていないので詳細は不明ですが、ネット上で稼働するということは、クライアントPCからは専用クライアントツール・ブラウザ・開発環境のエクステンション等から接続し、利用するのでしょうか？&lt;br /&gt;&lt;br /&gt;もしそうなら、初のGUIの無いWindowsということに。&lt;br /&gt;&lt;br /&gt;Windowsの登場以降、「ウィンドウ」という概念によるGUI操作こそが「Windows」という名前の由来だと思っていたのですが。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;スケーラビリティの俳句&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;余談ですが。&lt;br /&gt;&lt;br /&gt;これは、PDC2008での講演資料資料にあったものです。&lt;br /&gt;&lt;br /&gt;The Haikus Of Scalability（スケーラビリティの俳句）&lt;br /&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB54.pptx" target="_blank"&gt;http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB54.pptx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;You are born nameless You cannot afford the truth You are one of many&lt;br /&gt;初雪や&lt;br /&gt;水仙の葉の&lt;br /&gt;たわむ迄&lt;br /&gt;&lt;br /&gt;Your words echo loss&lt;br /&gt;You fail fast, safely return You try again, again&lt;br /&gt;谷水や&lt;br /&gt;石も歌詠む&lt;br /&gt;山櫻&lt;br /&gt;&lt;br /&gt;芭蕉・鬼貫ですね。&lt;br /&gt;&lt;br /&gt;スケーラビリティを絡めて何を言いたいのか、全然わかりません（＾＾；&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="http://liebejudith.googlepages.com/microad_techjudith_content.js" type="text/javascript"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-5524660163469343908?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/5524660163469343908/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/12/java-paasms.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5524660163469343908'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5524660163469343908'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/12/java-paasms.html' title='世界初のJava-PaaSはMSが実現？'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-160631960925855685</id><published>2008-12-05T02:36:00.001+09:00</published><updated>2008-12-05T03:15:54.882+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><title type='text'>なんも考えずに"リテラル".equals(s)と書け</title><content type='html'>なんも考えずに"リテラル".equals(s)と書け&lt;br /&gt;&lt;a href="http://d.hatena.ne.jp/nowokay/20081204#1228409639" target="_blank"&gt;http://d.hatena.ne.jp/nowokay/20081204#1228409639&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;私は逆の意見です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;"リテラル".equals(s)&lt;br /&gt;&lt;br /&gt;は私にとって既にトリッキーで、一瞬ではありますが「ん？」と考えなければならないコードです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;たとえば、「"OK"が処理結果なら」と「処理結果が"OK"なら」はどちらが自然でわかりやすいでしょう？&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;「こちらのほうが美しい」という理由よりも、「こちらのほうが安全」という理由で書き方を選んだほうがいい。&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;より多くの人が違和感なく自然に理解できるコードこそが安全だと私は考えます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;・・・まぁ、気持ちはわからなくはないのですが。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="http://liebejudith.googlepages.com/microad_techjudith_content.js" type="text/javascript"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-160631960925855685?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/160631960925855685/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/12/equalss.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/160631960925855685'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/160631960925855685'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/12/equalss.html' title='なんも考えずに&quot;リテラル&quot;.equals(s)と書け'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-7769950772187734903</id><published>2008-12-04T01:02:00.001+09:00</published><updated>2008-12-04T01:25:00.816+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IBM'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><category scheme='http://www.blogger.com/atom/ns#' term='Cloud Computing'/><title type='text'>「ソフトウエア＋サービス」を指向するMicrosoftの苦悩</title><content type='html'>パッケージとクラウド（SaaS/PaaS）の両方をやろうとする企業は辛そうですね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;「ソフトウエア＋サービス」を指向するMicrosoftの苦悩&lt;br /&gt;&lt;a href="http://itpro.nikkeibp.co.jp/article/COLUMN/20081203/320635/" target="_blank"&gt;http://itpro.nikkeibp.co.jp/article/COLUMN/20081203/320635/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;IBMのクラウドコンピューティングコンサルティングサービス、利害の衝突を巻き起こす?&lt;br /&gt;&lt;a href="http://www.infoq.com/jp/news/2008/12/IBM-Cloud-Conflict-of-Interests" target="_blank"&gt;http://www.infoq.com/jp/news/2008/12/IBM-Cloud-Conflict-of-Interests&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;案の定というべきか、わかっていたことではあるのですが。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-7769950772187734903?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/7769950772187734903/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/12/microsoft.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/7769950772187734903'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/7769950772187734903'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/12/microsoft.html' title='「ソフトウエア＋サービス」を指向するMicrosoftの苦悩'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-3344764085537645963</id><published>2008-12-03T10:14:00.003+09:00</published><updated>2008-12-03T13:34:48.977+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><title type='text'>public static final</title><content type='html'>・・・って、うっかりメソッドの宣言部に書いたら普通にコンパイルできました。&lt;br /&gt;&lt;br /&gt;オーバーライド禁止を表す"final"を、オーバーライドという概念のないクラスメソッドに付けてもコンパイラに怒られないんですね。&lt;br /&gt;&lt;br /&gt;付ける意味も全くないし、動作もまったく変わらないのですが（笑）&lt;br /&gt;&lt;br /&gt;Java言語仕様 8.4.3.2 static Methods、8.4.3.3 final Methodsのどちらにも、クラスメソッドにfinalを付けるとどうなる、という規定はありませんね。&lt;br /&gt;&lt;a href="http://java.sun.com/docs/books/jls/third_edition/html/classes.html#8.4.3.2" target="_blank"&gt;http://java.sun.com/docs/books/jls/third_edition/html/classes.html#8.4.3.2&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;長いことJavaに関わっていますが、今さら気づきました。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-3344764085537645963?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/3344764085537645963/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/12/public-static-final.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/3344764085537645963'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/3344764085537645963'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/12/public-static-final.html' title='public static final'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-3899481513247538717</id><published>2008-11-29T01:25:00.014+09:00</published><updated>2008-12-03T07:37:18.789+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='PaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><category scheme='http://www.blogger.com/atom/ns#' term='Cloud Computing'/><title type='text'>セールスフォース・ドットコム岡本君が語るクラウドコンピューティング</title><content type='html'>差別化できないところにリソースを割くべきか：&lt;br /&gt;クラウドサービス提供ベンダーの視点からみたクラウドの現状&lt;br /&gt;&lt;a href="http://www.itmedia.co.jp/enterprise/articles/0811/28/news043.html" target="_blank"&gt;http://www.itmedia.co.jp/enterprise/articles/0811/28/news043.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;この記事を読んで、日本のIT業界ではクラウドコンピューティングへの認識がいかに遅れているかを再確認しました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;岡本君ほどの男がこの内容で講演をしなければならない現実。&lt;br /&gt;&lt;blockquote&gt;彼が、こういう活動に「やれやれ」と思っているのか、充実感を感じているのかは聞いてみないとわかりませんが。&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;あ・・・なんか誤解を招いていたかも知れません（汗；&lt;br /&gt;ようやく気づきました。&lt;br /&gt;岡本君ほどいろいろ知っていてアイディアも持っている人が話す内容が、聞き手の目線に合わせて会社紹介とクラウドって何？とクラウド使いましょうだけじゃもったいないですよね。岡本君ならもっと面白い話ができるのにね。でも周りがついていかないんだろうなぁ。&lt;br /&gt;&lt;br /&gt;・・・って言いたかったのです。&lt;br /&gt;叩いたワケじゃないんです。岡本君、ごめんね。&lt;br /&gt;会社としては、今はこういう場でこういう話をすることは重要なんだろうね。&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;マルレクという、日本のエンタープライズ系IT業界の最先端に興味を持つ人々が集まるこのセミナーで、この内容で講演が行われる現実。&lt;br /&gt;&lt;blockquote&gt;まだまだ認知度低いんですね。&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;この程度の内容なら、私にだって喋れます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;クラウドコンピューティングを「市場を形成するビジネス」として認識できていない層がまだまだ多いということなのでしょう。&lt;br /&gt;国内ではまだまだ黎明期なのでしょうか。&lt;br /&gt;&lt;br /&gt;事実、実用化・収益化できているベンダーはごくわずかです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;・・・。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://techjudith.blogspot.com/2008/10/saaspaas.html" target="_blank"&gt;このブログでも何度か言及してる&lt;/a&gt;ので繰り返しになりますが、「どんなビジネスをやるのか？」が無いままに、ビジョンも不明確なままデータセンターだけ作って「SaaS参入」「クラウド参入」などと言い出すベンダーが多いがために、クラウドコンピューティングという言葉は「バズワード」とさえ言われるようになってしまいました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://techjudith.blogspot.com/2008/06/saasit.html" target="_blank"&gt;春頃に、このブログで「SaaSありきでうまくいくはずはない」と書きました&lt;/a&gt;が、この有様です。&lt;br /&gt;「SaaSの収益化は難しい」&lt;br /&gt;「SaaS（という言葉）はサービスの打ち上げにはいいが、利益には結びつきにくいのが現状だ」&lt;br /&gt;&lt;a href="http://www.itmedia.co.jp/enterprise/articles/0811/07/news118.html" target="_blank"&gt;http://www.itmedia.co.jp/enterprise/articles/0811/07/news118.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;未だにこんな発言をする大手SIerが幅を利かせていますし。&lt;br /&gt;&lt;blockquote&gt;クラウドに興味を持っている顧客はいる。だが必ず「信頼性は？」と聞かれる。それは残念ながら，今のところないに等しい。「自己責任で使ってください，その代わり安いですよ」。そういうものだと理解している。&lt;/blockquote&gt;&lt;a href="http://itpro.nikkeibp.co.jp/article/COLUMN/20081031/318289/" target="_blank"&gt;http://itpro.nikkeibp.co.jp/article/COLUMN/20081031/318289/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;まだまだですね。はぁ・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="http://liebejudith.googlepages.com/microad_techjudith_content.js" type="text/javascript"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-3899481513247538717?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/3899481513247538717/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/11/blog-post.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/3899481513247538717'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/3899481513247538717'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/11/blog-post.html' title='セールスフォース・ドットコム岡本君が語るクラウドコンピューティング'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-2027690888351695788</id><published>2008-11-15T02:11:00.002+09:00</published><updated>2008-11-15T14:35:37.957+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSS'/><title type='text'>OSS</title><content type='html'>最近、仕事では某国内ベンダー謹製のRDBMS、某国内SIer謹製の社内DAOフレームワーク、某国内ベンダー謹製のWebアプリケーションフレームワークを使っていますが、すべてプロプライエタリ・クローズドソースプロダクトです。&lt;br /&gt;しかも、あまり情報がないマイナーな製品。&lt;br /&gt;&lt;br /&gt;ドキュメントの不備・エラーメッセージの不親切・アヤシイ挙動というものは多かれ少なかれどんな製品にもあるモノですが、OSSならソースコードが公開されているのに・・・という、あまりにも大きいOSSのメリットを反面教師的にひしひしと実感中です。&lt;br /&gt;&lt;br /&gt;ソースコードは最後の砦。ドキュメントになんと書いてあろうが、どんなメッセージを吐こうが、ネット上にどんな情報が転がっていようが、ソースコードが絶対です。プログラムは書いてあるとおりにしか動かないのですから。&lt;br /&gt;ネット上の玉石混合な情報や不備の多いドキュメントに振り回され、ベンダーからの回答を待ち、どれだけの時間を消費したことか。&lt;br /&gt;しかし、ソースコードさえ見られればすぐにわかることは多いのです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;こうして書いてみると、何を今更な・ごく平凡な・アタリマエのことしか言ってないのですが・・・本当に実感しているのです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;まあ、ノウハウも情報もあまり無いマイナーでクローズドなプロダクトよりはOSSってことで。&lt;br /&gt;&lt;br /&gt;OSSを使う側でもいいけど、中の人になってしまえば公開されていないコードや情報にアクセスもできる？・・・というのも1つの手ですね（笑）&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-2027690888351695788?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/2027690888351695788/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/11/oss.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/2027690888351695788'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/2027690888351695788'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/11/oss.html' title='OSS'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-4658047949476140647</id><published>2008-11-06T02:07:00.005+09:00</published><updated>2008-11-06T20:18:57.477+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Amazon.com'/><category scheme='http://www.blogger.com/atom/ns#' term='Google App Engine'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='PaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='Cloud Computing'/><title type='text'>Salesforce.comが新サービスを発表</title><content type='html'>Salesforce.comが、&lt;a href="http://www.salesforce.com/dreamforce/DF08/" target="_blank"&gt;米サンフランシスコで開催中のDreamforce&lt;/a&gt;で、様々な新サービスを発表しました。&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Force.comアプリを外部公開サイトにできるForce.com Sites&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Force.comアプリでGoogle Visualizationを利用できる&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Force.comアプリのAmazon EC2/S3対応&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Force.comアプリからFaceBook APIを利用できる&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;各機能の解説は各種ニュースサイトにお任せするとして・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;この中で私が注目するのは「Force.com Sites」です。&lt;br /&gt;&lt;a href="http://developer.force.com/sites" target="_blank"&gt;http://developer.force.com/sites&lt;/a&gt;&lt;br /&gt;単なる外部公開するWebアプリケーションPaaSプラットフォームとして強力なGoogle App Engine対抗となり得るばかりか、独自ドメインも使えるようですし、SFDCがこれまで提供してきたCRM等と連携して、アンケートやお問い合わせ・サポートなど、マーケティングツールとして幅広く使えそうですね。&lt;br /&gt;Google App Engineで同じことをやろうとしたら自分で作り込まなくてはならない部分があまりにも多すぎます。&lt;br /&gt;SaaSベースのCRMを提供している他ベンダー（OracleやSugarCRMなど）が同じことをやろうとしてもまた、自分で作り込まなくてはならない部分があまりにも多すぎます。&lt;br /&gt;この機能はまだDreamforce参加者限定のプレビュー版ということですが、この機能を使うにはライセンス料がそれほど安くはなさそう・・・と予測しますが・・・。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;それから、Amazon EC2/S3対応。&lt;br /&gt;&lt;a href="http://wiki.apexdevnet.com/index.php/Amazon_Toolkit" target="_blank"&gt;http://wiki.apexdevnet.com/index.php/Amazon_Toolkit&lt;/a&gt;&lt;br /&gt;&lt;a href="http://techjudith.blogspot.com/2008/10/forcecomapex.html" target="_blank"&gt;つい先日のエントリー&lt;/a&gt;で、オープン性・互換性についての懸念を書いたばかりですが、SFDCはちゃんと対応を考えていました。&lt;br /&gt;&lt;br /&gt;まだチュートリアルをちゃんと見ていませんが・・・&lt;br /&gt;&lt;br /&gt;Force.comで作成したアプリをAMIにしてAmazon VM上で動作させることができるのかな？&lt;br /&gt;&lt;br /&gt;私は、ユーザがクラウドコンピューティングへの抵抗を感じるポイントとして、セキュリティ面の他に互換性の問題があると思います。&lt;br /&gt;クラウドコンピューティングプロバイダのサービス廃止は、フェイルオーバー、サービス障害、プロプライエタリ技術による囲い込み以上に大きな問題です。ユーザは、SFDCのアプリを使えば使うほど、「これが無くなったらどうしよう？」と思いますから。&lt;br /&gt;作成したアプリが、SFDCのクラウド上でも、Amazonのクラウド上でも動作できるならば、ユーザにとって大きなメリットになるでしょう。&lt;br /&gt;&lt;br /&gt;ストレージとしてS3が使えるのも大歓迎です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://wiki.apexdevnet.com/index.php/Facebook_Toolkit" target="_blank"&gt;Facebook連携&lt;/a&gt;は・・・&lt;br /&gt;日本国内ユーザはあまり多くないのでまぁいいでしょう（笑）&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-4658047949476140647?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/4658047949476140647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/11/salesforcecom.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/4658047949476140647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/4658047949476140647'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/11/salesforcecom.html' title='Salesforce.comが新サービスを発表'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-6022508671704083866</id><published>2008-11-06T00:30:00.005+09:00</published><updated>2008-11-06T01:17:54.090+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='SpringFramework'/><title type='text'>SpringFramework 2.5.6 リリース</title><content type='html'>&lt;a href="http://www.springsource.org/node/813" target="_blank"&gt;されました。&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;主な変更点は&lt;br /&gt;&lt;ul&gt;&lt;li&gt;AspectJ 1.6.2 対応（1.5.x、1.6.x との互換背は保持）&lt;br /&gt;&lt;/li&gt;&lt;li&gt;EHCache 1.5.0 対応（1.2 以上との互換背は保持）&lt;br /&gt;&lt;/li&gt;&lt;li&gt;TestNG 5.8 対応（5.5 以上との互換背は保持）&lt;br /&gt;&lt;/li&gt;&lt;li&gt;OpenJPA 1.1.0 対応（1.2.0 と同様、1.0 との互換性は保持）&lt;br /&gt;&lt;/li&gt;&lt;li&gt;EclipseLink 1.0.1 対応&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;など。&lt;br /&gt;&lt;br /&gt;changelogは&lt;a href="http://static.springframework.org/spring/docs/2.5.x/changelog.txt" target="_blank"&gt;こちら&lt;/a&gt;。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;来週木曜日に、&lt;a href="http://www.springsource.org/node/798" target="_blank"&gt;次期バージョン Spring3.0 について何か発表&lt;/a&gt;があるようですね。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-6022508671704083866?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/6022508671704083866/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/11/springframework-256.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6022508671704083866'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6022508671704083866'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/11/springframework-256.html' title='SpringFramework 2.5.6 リリース'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-8549498235281273258</id><published>2008-10-19T22:13:00.005+09:00</published><updated>2008-10-21T07:03:15.163+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='FireFox'/><title type='text'>FireFox3.1β1</title><content type='html'>遅ればせながら使ってみました。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_qRW47nLTz-8/SPsyhdRgo4I/AAAAAAAAFOM/LD70o9UowX4/s1600-h/firefox3.1b1.JPG" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_qRW47nLTz-8/SPsyhdRgo4I/AAAAAAAAFOM/LD70o9UowX4/s320/firefox3.1b1.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5258852540260328322" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;JavaScriptが速いという噂は本物のようです。&lt;br /&gt;&lt;br /&gt;今のところ、私の中では Google Chrome と双璧です。&lt;br /&gt;&lt;br /&gt;強いて言えばアドレスバーにキーワード入力して、候補も検索も瞬時に選べる使い勝手ではChromeが優位です。新しいタブを開くときに、カレントのタブのすぐ隣に開く動作も慣れると使いやすいですね。&lt;br /&gt;しかし、ChromeはたまにIME（私はAtok愛用です）が効かなくなるのが痛い・・・&lt;br /&gt;&lt;br /&gt;Chromeは複数プロセスで動作するのが面白いと思います。&lt;br /&gt;多くのブラウザで採用されている同一プロセスでの動作は、元々はリソースの節約という目的もあったと思うのですが、クライアントPCのスペックがこれだけ上がれば複数プロセスでもかまわないという、割り切りというか、いままでの常識をひっくり返す発想がいかにもGoogleらしいです。&lt;br /&gt;&lt;br /&gt;FireFoxはLinuxにも対応しているのが◎です。&lt;br /&gt;Google ChromeもLinux対応しないかな・・・&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-8549498235281273258?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/8549498235281273258/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/10/firefox311.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8549498235281273258'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8549498235281273258'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/10/firefox311.html' title='FireFox3.1β1'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_qRW47nLTz-8/SPsyhdRgo4I/AAAAAAAAFOM/LD70o9UowX4/s72-c/firefox3.1b1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-7351967042137258933</id><published>2008-10-19T20:32:00.006+09:00</published><updated>2008-10-21T07:03:28.222+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Amazon.com'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Sun'/><category scheme='http://www.blogger.com/atom/ns#' term='PaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='Cloud Computing'/><title type='text'>Force.comのApex</title><content type='html'>約1年前に発表されたSalesforce.comが提供するアプリケーション開発環境・動作環境「Force.com」。&lt;br /&gt;Salesforce.comは「SDKを配布するからインストールしてアプリ開発してね」ではなく、アプリケーションの統合開発環境・テスト環境までもWeb上に乗っけてきました。統合開発環境のSaaS化です。アカウントを取得すればブラウザを起動するだけでSalesforce.comのクラウド上でアプリ開発可能です。&lt;br /&gt;しかも既に実用化・収益化できています。Salesforce.comの強みであり、他社がなかなか追いつけない要素の1つでしょう。&lt;br /&gt;はじめて知ったときは、何てスゴイモノを作ったんだ！と驚愕しました。&lt;br /&gt;&lt;br /&gt;しかし・・・&lt;br /&gt;&lt;br /&gt;プログラミング言語が「Apex」という独自言語なのが惜しいところ。&lt;br /&gt;&lt;br /&gt;中身を開けてみればJavaに似ているし、シンプルで覚えやすいのですが・・・&lt;br /&gt;開発者の視点から見るとどんなにカンタンでも「新しい言語を覚えなくてはいけない」というだけで壁が1枚できるものです。&lt;br /&gt;&lt;br /&gt;「マルチテナント」と「安全性」を両立するためには、Salesforceのプラットフォームのコア部分が動いているモノ(ここはJavaです)を共有させるわけにはいかず、もう1層上にVM（のようなモノ）を乗っける必要があることは理解できます。&lt;br /&gt;&lt;br /&gt;でも、そこがJavaであってもいいはず。&lt;br /&gt;&lt;br /&gt;やはり、過去のSunと他社との経緯を無視できなかったのでしょう。&lt;br /&gt;&lt;br /&gt;Sunは、Java標準仕様に独自の拡張や独自の制約を設けることに関しては煩いですから。&lt;br /&gt;&lt;br /&gt;MicrosoftはJavaに独自の拡張をしたためにSunに訴えられ、長い法廷闘争の末にJava2以降の実装を許されなくなりました。&lt;br /&gt;&lt;br /&gt;最近では、GoogleのAndroidも独自のアーキテクチャゆえ、SunとGoogleの間で少し揉めました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;そんなわけで、Sunが進めているProject Carolineには注目しています。SunはProject Carolineで、JavaによるPaaSを実現しようとしています。&lt;br /&gt;&lt;br /&gt;Sunの中の人に聞いた限りでは、Project CarolineがSunのクラウドコンピューティング戦略のメインストリームというわけでもなく、SunのPaaSはProject Carolineで行くと決まっているわけでもなく、ただの研究開発プロジェクトの1つでしかない、ということですが・・・&lt;br /&gt;&lt;br /&gt;将来的には、EclipseもSaaS/PaaS化したいという噂もちらほら。&lt;br /&gt;&lt;br /&gt;Amazon/Oracleあたりで、Xenベースのオープンなアーキテクチャなクラウドコンピューティングという流れもあります。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;これらが実用化されたらForce.com/Apexやばいかも。&lt;br /&gt;&lt;br /&gt;今はSalesforce.comが先行しています。他社が追いつくまでに時間がかかるので、その間にデファクトを握ってしまおうという方針でしょうか。&lt;br /&gt;それとも、オープンなアーキテクチャへの大幅な方針転換の可能性も視野に入れているのでしょうか。&lt;br /&gt;&lt;br /&gt;個人的には、Force.comのプログラミング言語がJavaになってくれたら言うことナシです。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-7351967042137258933?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/7351967042137258933/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/10/forcecomapex.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/7351967042137258933'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/7351967042137258933'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/10/forcecomapex.html' title='Force.comのApex'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-6771196556226180877</id><published>2008-10-05T13:05:00.011+09:00</published><updated>2008-10-19T20:36:22.987+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Amazon.com'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='PaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><category scheme='http://www.blogger.com/atom/ns#' term='JBoss'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><category scheme='http://www.blogger.com/atom/ns#' term='Google App Engine'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Sun'/><category scheme='http://www.blogger.com/atom/ns#' term='HP'/><category scheme='http://www.blogger.com/atom/ns#' term='RedHat'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='Yahoo'/><category scheme='http://www.blogger.com/atom/ns#' term='Intel'/><category scheme='http://www.blogger.com/atom/ns#' term='Cloud Computing'/><title type='text'>最近のクラウド・SaaS・PaaS</title><content type='html'>&lt;span style="font-size:large;"&gt;Cloud Computing&lt;/span&gt;&lt;br /&gt;最近、データセンターを作っただけで「クラウド参入」とか言ってる企業、多くないですか？&lt;br /&gt;「データセンター」を「クラウド」と言い換えているだけのような。&lt;br /&gt;&lt;a target="_blank" href="http://www.computerworld.jp/topics/cloud/123069.html"&gt;「クラウド・コンピューティング」は「仮想化」以来の“乱用語大賞”&lt;/a&gt;&lt;br /&gt;&lt;a target="_blank" href="http://www.computerworld.jp/topics/cloud/123069.html"&gt;「過大な情報がIT業界に混乱を招く」とガートナーが警鐘&lt;/a&gt;&lt;br /&gt;　　&lt;span class="Apple-style-span"  style="font-size:small;"&gt;※「MSとIBMが使い出した時点でバズワード化する」とはS社のO氏の発言。（＾＾；&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:large;"&gt;SaaS&lt;/span&gt;&lt;br /&gt;実態はただのWebアプリやASPなのに「SaaS参入」とか言ってる企業、多くないですか？&lt;br /&gt;SaaSと言いながらクラウド環境・マルチテナント環境ではないため、いったいどれだけスケールするのか不安で仕方ない「SaaSもどき」が増えてきました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:large;"&gt;PaaS&lt;/span&gt;&lt;br /&gt;これを実用化・収益化できている企業はごくわずか。さすがに猫も杓子も「PaaS」と言い出すまでには至っていませんね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:large;"&gt;各社の動向&lt;/span&gt;&lt;br /&gt;最近の各社の動きはどうなっているのでしょうか？&lt;br /&gt;大きく分けると、&lt;br /&gt;&lt;ol&gt;&lt;li&gt;クラウドインフラのみ提供&lt;br /&gt;&lt;/li&gt;&lt;li&gt;アプリケーションを提供（SaaS）&lt;br /&gt;&lt;/li&gt;&lt;li&gt;アプリケーション動作環境を提供（PaaS）&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;といった分類になるでしょうか。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:large;"&gt;Yahoo/HP/Intel連合&lt;/span&gt;&lt;br /&gt;まだ研究開発段階。クラウドインフラと、もしかしたらPaaSも？&lt;br /&gt;&lt;a target="_blank" href="http://www.computerworld.jp/topics/cloud/117109.html"&gt;HP、インテル、ヤフーの3社、クラウド・コンピューティングの共同研究プロジェクトを発表&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:large;"&gt;ユニシス&lt;/span&gt;&lt;br /&gt;「SaaSはじめます」と言ったが、その後進んでいるのだろうか？「乗り遅れたくない」感で言ってみただけ？&lt;br /&gt;&lt;a target="_blank" href="http://www.atmarkit.co.jp/news/200806/04/unisys.html"&gt;日本における早急なPaaS、CaaSの確立を目指す～ユニシス&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:large;"&gt;富士通&lt;/span&gt;&lt;br /&gt;「SaaSはじめました」と言ったが、その後進んでいるのだろうか？「乗り遅れたくない」感で言ってみただけ？&lt;br /&gt;&lt;a target="_blank" href="http://japan.internet.com/busnews/20080208/5.html"&gt;富士通が SaaS 3 サービスを開始&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:large;"&gt;IBM&lt;/span&gt;&lt;br /&gt;データセンターをばんばん作っている。その上で何をやるのだろう・・・。クラウドインフラと、もしかしたらPaaSも？&lt;br /&gt;&lt;a target="_blank" href="http://japan.cnet.com/news/ent/story/0,2000056022,20361198,00.htm"&gt;IBM、「Blue Cloud」コンピューティング計画を発表&lt;/a&gt;&lt;br /&gt;&lt;a target="_blank" href="http://journal.mycom.co.jp/news/2008/09/26/025/index.html"&gt;IBM、世界4カ所にクラウド・コンピューティング・センターを開設&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:large;"&gt;Sun&lt;/span&gt;&lt;br /&gt;Project Carolineは大注目。Salesforce.comが成し得ていない、標準言語（Java）によるPaaSを実現しようとしている。でもまだ研究開発段階。&lt;br /&gt;&lt;a target="_blank" href="http://www.computerworld.jp/news/plf/104069.html"&gt;サン、PaaSモデルの研究プロジェクト「Project Caroline」を披露&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:large;"&gt;Google&lt;/span&gt;&lt;br /&gt;Google App Engineはアプリケーション実行環境の提供という形式でPaaSをやっているけど、アプリケーションの開発作業はローカルマシン上で行ってそれをアップロードするしかない。&lt;br /&gt;ここ1年ぐらい、エンタープライズ分野では最近目立った動きがないが、Mobile側（Android）からクラウドの使い道を広げようとしている。うまくいけばこっちの切り口からエンタープライズ分野へ食い込んでいけるのかも。&lt;br /&gt;「独創的な」という言葉がぴったりなこの企業の動きには常に要注目。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:large;"&gt;Amazon.com&lt;/span&gt;&lt;br /&gt;インフラの提供はしっかりやっているけど、その上で何をするのか？は利用者任せ。今のところ、Amazon.com自身はECサイト以上のサービスをしていない。Amazon WSは、実質はレンタルサーバっぽい使われ方がほとんどなのでは？&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:large;"&gt;Microsoft&lt;/span&gt;&lt;br /&gt;クラウド上にWindows Serverが乗っかって、何が嬉しいのだろうか・・・&lt;br /&gt;MSのクラウドへの取り組みは、Office Suiteにしろ、OSにしろ、結局クライアントパッケージをインストールしないと使えない「非SaaS」なものになるでしょう。&lt;br /&gt;&lt;a target="_blank" href="http://japan.cnet.com/news/ent/story/0,2000056022,20381408,00.htm"&gt;MSのバルマーCEO、「Windows Cloud」の詳細に言及&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:large;"&gt;Oracle&lt;/span&gt;&lt;br /&gt;Siebel on Demandなど一部SaaSを提供しているけど、いったいどのぐらい儲かっているのだろうか。MS同様、パッケージライセンスの売上によって過去最高利益を更新し続けているこの企業が、本気でSaaS/PaaSに取り組むとは考えにくい。&lt;br /&gt;Amazon WS上にOracle Databaseを乗っけるパッケージの提供も始めるらしいけど、自社パッケージをクラウドに乗せますという点ではWindows Cloudと同じ。自分でアップロードして展開して設定してね、という点ではもっとひどいかも。すぐに使えるDaaS(Database as a Service)を用意していたらちょっとは「ほう」と思ったかも。&lt;br /&gt;&lt;a target="_blank" href="http://blogs.oracle.com/otnjp/2008/09/post_7.html"&gt;オラクルのクラウドへの第一歩&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;RedHat&lt;/span&gt;&lt;br /&gt;Amazon WS上でJBossが動くようになるらしい。&lt;br /&gt;&lt;a target="_blank" href="http://journal.mycom.co.jp/articles/2008/09/26/redhat/index.html"&gt;Red Hatが見据える次世代のアーキテクチャ&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:large;"&gt;Salesforce.com&lt;/span&gt;&lt;br /&gt;結局、「クラウドだけどSaaS/PaaSではない」サービスは、ユーザーにとってはハードウェア準備・運用の手間は省けるけど、サーバソフトウェアの構築・管理、アプリケーション開発をしなければならないことは変わらず。&lt;span class="Apple-style-span"  style="font-size:small;"&gt;MSのアプローチはまた独特だけど。&lt;/span&gt;&lt;br /&gt;また、クラウドはそれだけではその存在に意味は無く、クラウド上で提供されるサービスがビジネスとして確立しないと成り立たない。エンタープライズ分野でインフラ・ミドルウェア・アプリケーション・開発環境まで（クラウドからSaaS/PaaSまで）トータルに提供し、実用化・収益化できているのは、事実上SFDCのみか・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;今のところ、Salesforce.comが独走態勢で、他企業が技術・サービス両面で追いつくのはもう少し先になると思う。&lt;br /&gt;&lt;br /&gt;SFDCを脅かすのは、オープン化の波かもしれない。&lt;br /&gt;Amazon WSがXenベースであるため、JBossやOracleは対応できた。&lt;br /&gt;アメリカではAmazon WS互換の他社サービスも始まっているらしい。Amazon WSのバックアップやフェイルオーバー用途に使えるとのこと。&lt;br /&gt;数年後にはプロプライエタリなテクノロジによる囲い込みをオープンソースが切り崩すという波がクラウドコンピューティングの世界にも来るかもしれない。&lt;br /&gt;&lt;br /&gt;&lt;script src="http://liebejudith.googlepages.com/microad_techjudith_content.js" type="text/javascript"&gt;&lt;br /&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-6771196556226180877?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/6771196556226180877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/10/saaspaas.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6771196556226180877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6771196556226180877'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/10/saaspaas.html' title='最近のクラウド・SaaS・PaaS'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-8759609654268435646</id><published>2008-09-14T11:05:00.000+09:00</published><updated>2008-09-14T11:11:10.900+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>iPhone 2.1</title><content type='html'>iPhone が 2.1 へアップデートされました。&lt;br /&gt;&lt;br /&gt;IT系のニュースサイト等では、&lt;br /&gt;&lt;ul&gt;&lt;li&gt;バッテリーの持ちがよくなったこと&lt;/li&gt;&lt;li&gt;日本語の連文節変換が可能になったこと&lt;/li&gt;&lt;li&gt;その他多数のバグフィックス&lt;/li&gt;&lt;/ul&gt;等が報じられています。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2日ほど使ってみた感想。&lt;br /&gt;&lt;br /&gt;日本語の連文節変換も嬉しいのですが、変換や変換候補の表示動作そのものがかなり速くなったような気がします。アップデート以前は、特にWebブラウザ上での入力時などで「フリーズしたのか？」と思うほど遅く・重くなるケースも少なくなかったのですが・・・&lt;br /&gt;&lt;br /&gt;それから、明らかに電波の入りが良くなっています。これはソフトウェアのアップデートではなく、私の自宅周辺の基地局が増強されただけかもしれませんが。&lt;br /&gt;&lt;br /&gt;すべての iPhone ユーザーへ、2.1 へアップデートすることをオススメしたいと思います。&lt;br /&gt;&lt;br /&gt;&lt;script src="http://liebejudith.googlepages.com/microad_techjudith_content.js" type="text/javascript"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-8759609654268435646?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/8759609654268435646/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/09/iphone-21.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8759609654268435646'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8759609654268435646'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/09/iphone-21.html' title='iPhone 2.1'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-6090871413015696372</id><published>2008-09-13T00:16:00.008+09:00</published><updated>2008-09-14T13:43:37.298+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>Android</title><content type='html'>Android は、Google が開発している携帯電話向け OS &amp;amp; プラットフォームです。&lt;br /&gt;Apple iPhone のような、大画面・PC ライクなタッチパネル操作の UI の携帯端末が実現されます。&lt;br /&gt;&lt;br /&gt;近々、台湾 HTC 製の端末が完成し、アメリカやドイツなどでサービスが開始されることが決まっていますが・・・&lt;br /&gt;&lt;br /&gt;日本でも近々 Andoroid 携帯がサービス開始されるという噂もあります。そんなタイミングで Android のユーザグループ「日本 Android の会」が発足しました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;その発足記念式典に行ってきました。&lt;br /&gt;&lt;a href="http://android.siprop.org/index.php?FrontPage" target="_blank"&gt;http://android.siprop.org/index.php?FrontPage&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;目玉は、なんと言っても Google の Android チームのエンジニア Adrian Havill 氏による記念講演。&lt;br /&gt;かなりムリをして仕事を抜けて聴きに来た価値がありました。&lt;br /&gt;&lt;br /&gt;・・・しかし、その内容はコンフィデンシャルとのこと。&lt;br /&gt;&lt;br /&gt;講演開始前に、報道も個人ブログもその内容を公表しないように、とアナウンスがありました。写真もNG。&lt;br /&gt;（発足式典のプログラムは Android の会 Web サイト上で公開されているので、彼が記念講演を行ったという事実のみなら書いても大丈夫でしょう・・・）&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:x-small;"&gt;　　以前から感じていましたが、Google は世界中の情報をどん欲に集めますが、&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:x-small;"&gt;　　自らの情報を出すことには非常に慎重な企業ですね。。。&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;会長の早稲田大学客員教授・丸山先生の基調講演によれば、Android はオープンソースであること、クラウドコンピューティングが前提であることが特徴なのだとか。&lt;br /&gt;&lt;br /&gt;Google のクラウド上のサービスを利用することが前提となっている携帯という感じです。&lt;br /&gt;&lt;br /&gt;ビジネス上・マーケティング上の観点から見ると、オープンソースソフトウェアの SDK を使ってアプリを自由に作成し、作成したアプリを自由に配布できるという点が大きな特徴でしょう。&lt;br /&gt;&lt;br /&gt;Apple の iPhone は、キャリア主導の壁は壊しましたが、ユーザから見るとソフトウェアの配布・販売がキャリアから Apple に移っただけとも言えます。&lt;br /&gt;&lt;br /&gt;Google Android は、誰でもアプリケーションを自由に配布できるところが大きく異なります。&lt;br /&gt;&lt;br /&gt;これが吉と出るか、凶と出るか・・・&lt;br /&gt;&lt;br /&gt;Google のやり方は、誰にでも開放されるオープン性が素晴らしいのですが、どこにどんなソフトウェアがあるのか、わかりにくくなる可能性があります。&lt;br /&gt;Apple のやり方なら、iTunes Store に行けばすべての iPhone アプリケーションを探すことができるというわかりやすさ・利便性があります。&lt;br /&gt;&lt;br /&gt;加えて、Apple には独自の洗練された統一感のあるデザイン性・遊び心・ブランド力があり、一般ユーザには圧倒的に iPhone のほうが受けがいいのではないでしょうか。&lt;br /&gt;私は iPhone でも Google のサービスばかり使っているぐらいなので、Android にはとても興味があるのですが・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;会場には、端末のサンプルも展示されていました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_qRW47nLTz-8/SMqMhYO7IWI/AAAAAAAAEXM/PAPGisrdRrk/s1600-h/IMG_0116.JPG" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" target="_blank"&gt;&lt;img alt="" id="BLOGGER_PHOTO_ID_5245159221094981986" src="http://1.bp.blogspot.com/_qRW47nLTz-8/SMqMhYO7IWI/AAAAAAAAEXM/PAPGisrdRrk/s320/IMG_0116.JPG" style="cursor: pointer;" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ちょっと、印象がダリの La persistencia de la memoria（The Persistence of Memory・記憶の持続 &lt;span style="font-size:78%;"&gt;※メモリの永続化ではありません（＾＾；&lt;/span&gt; ）に似てませんか？&lt;br /&gt;きっと、時計が宙に浮いているシュールさがそう思わせるのでしょう。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;会場で、Google にいる知人に久しぶりに会いました。&lt;br /&gt;最近「よくわからない肩書きランキング」で「エバンジェリスト」が第1位であることが話題になっていますが、これは IT エンジニアにはとても馴染みのある肩書きですよね。&lt;br /&gt;しかしこの Google の知人の肩書きは「デベロッパーアドボケイト」でした。これはさすがに初めて見ました（笑）&lt;br /&gt;&lt;br /&gt;&lt;a href="http://android.siprop.org/index.php?FrontPage" target="_blank"&gt;日本 Android の会&lt;/a&gt;&lt;br /&gt;&lt;a href="http://code.google.com/android/" target="_blank"&gt;Google Android&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="http://liebejudith.googlepages.com/microad_techjudith_content.js" type="text/javascript"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-6090871413015696372?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/6090871413015696372/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/09/android.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6090871413015696372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6090871413015696372'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/09/android.html' title='Android'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_qRW47nLTz-8/SMqMhYO7IWI/AAAAAAAAEXM/PAPGisrdRrk/s72-c/IMG_0116.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-8967826738677129296</id><published>2008-09-10T09:32:00.002+09:00</published><updated>2008-09-10T09:43:25.223+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Tomcat'/><title type='text'>Tomcat 5.5.27 リリース</title><content type='html'>&lt;a href="http://mail-archives.apache.org/mod_mbox/www-announce/200809.mbox/&amp;lt;48C56449.4050408@apache.org&amp;gt;" target="_blank"&gt;http://mail-archives.apache.org/mod_mbox/www-announce/200809.mbox/&amp;lt;48C56449.4050408@apache.org&amp;gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;変更点は下記を参照。&lt;br /&gt;&lt;a href="http://tomcat.apache.org/tomcat-5.5-doc/changelog.html" target="_blank"&gt;http://tomcat.apache.org/tomcat-5.5-doc/changelog.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Jasperのクォーテーションに対する挙動の変更は 6.0.18 と同様。システムプロパティ org.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING で以前のバージョンと同じ動作にするかどうかを設定できる点も 6.0.18 と同様ですね。&lt;br /&gt;&lt;br /&gt;あとは、CATALINA_HOME に設定したパスにスペースが含まれている場合に対応したことや、Session.getAttribute(null) および Session.removeAttribute(null) で NullPointerException が発生しないようにしたこと（これは仕様では明確になっていないが、Tomcat5.0以来のルールだそうです）等。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-8967826738677129296?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/8967826738677129296/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/09/tomcat-5527.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8967826738677129296'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8967826738677129296'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/09/tomcat-5527.html' title='Tomcat 5.5.27 リリース'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-4424167406396281485</id><published>2008-09-03T23:24:00.010+09:00</published><updated>2008-09-05T07:10:35.640+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><title type='text'>Chrome</title><content type='html'>Google の新しいブラウザ &lt;a href="http://www.google.com/chrome/index.html?hl=ja" target="_blank"&gt;Chrome&lt;/a&gt;。&lt;br /&gt;&lt;br /&gt;さっそく使っています。&lt;br /&gt;&lt;br /&gt;とにかく速い！！！&lt;br /&gt;&lt;br /&gt;JavaScript の実行速度が、他のブラウザに比べて体感できるほどに、圧倒的に速い！！！&lt;br /&gt;この速さについていくのに慣れるまで時間がかかるのでは？と思うほどに速い！！！&lt;br /&gt;&lt;br /&gt;Gmail、Google Reader、Google Document をはじめとした Ajax を利用しているサイトの操作感が軽く、この上なく快適・快適。&lt;br /&gt;Internet Explorer は言うに及ばず（正直、IE で Gmail なんか使えたモノではありません）、FireFox3 に比べても明らかに速いと感じます。&lt;br /&gt;&lt;br /&gt;内部的には、Apple の Safari や Android と同じエンジンが使われているとのことです。&lt;br /&gt;Safari では Thinklpad のトラックポイントでスクロールできないという問題がありましたが、Chrome では Thinkpad でも問題なくスクロールできています。&lt;br /&gt;&lt;br /&gt;ユーザーインタフェースもシンプルで、フォントもきれい。非常に使い勝手の良いブラウザです。&lt;br /&gt;&lt;br /&gt;まだβリリースですが、今のところ不具合も不安定さも見あたらず。このブラウザを使わない理由も見あたらず。&lt;br /&gt;この、Google が巻き起こしたブラウザ革命に、ただただ驚くばかりです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;今まで FireFox3 を常用していましたが、メインのブラウザは今日から Chrome に決定です。&lt;br /&gt;・・・というのにはさすがにムリがありますが（笑）、しばらく使ってみようと思います。&lt;br /&gt;&lt;br /&gt;追記：&lt;br /&gt;Gmailに添付されているファイルの名前に日本語を使っていると、日本語の部分は"-"で置き換えられてしまうという不便がありました。化けているのではなく意図的に置換している感じなので、不具合というよりは不都合・不便ですね。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.google.com/chrome/index.html?hl=ja" target="_blank"&gt;Google Chrome&lt;/a&gt;&lt;br /&gt;&lt;a href="http://googlejapan.blogspot.com/2008/09/google-chrome.html" target="_blank"&gt;Google Japan Blog: Google Chrome をリリースしました&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-4424167406396281485?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/4424167406396281485/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/09/chrome.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/4424167406396281485'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/4424167406396281485'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/09/chrome.html' title='Chrome'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-6281096936744861703</id><published>2008-08-08T00:44:00.009+09:00</published><updated>2008-08-27T19:04:26.169+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='JBoss'/><category scheme='http://www.blogger.com/atom/ns#' term='Glassfish'/><category scheme='http://www.blogger.com/atom/ns#' term='Tomcat'/><title type='text'>Tomcat 6.0.18 重大な変更</title><content type='html'>2008年7月31日にリリースされた Apache Tomcat の最新バージョン 6.0.18 ですが、JSP の処理系である Jasper にこんな変更が。&lt;br /&gt;&lt;a href="http://tomcat.apache.org/tomcat-6.0-doc/changelog.html" target="_blank"&gt;&lt;br /&gt;Changelog&lt;/a&gt; にこのような記載があります。&lt;br /&gt;&lt;br /&gt;45015: You can't use an unescaped quote if you quote the value with that character.&lt;br /&gt;&lt;br /&gt;これにより、カスタムタグの属性値に Runtime Expression を埋め込んだ際に、式の中に "" を記述する場合はエスケープが必要になりました。&lt;br /&gt;&lt;br /&gt;つまり、従来は&lt;br /&gt;&lt;br /&gt;&amp;lt;t:tag&amp;nbsp;value=&amp;quot;&amp;lt;%=&amp;nbsp;request.getAttribute(&amp;quot;name&amp;quot;)%&amp;gt;&amp;quot;&amp;nbsp;/&amp;gt;&lt;br /&gt;&lt;br /&gt;とか書けたのに、&lt;br /&gt;&lt;br /&gt;&amp;lt;t:tag&amp;nbsp;value=&amp;quot;&amp;lt;%=&amp;nbsp;request.getAttribute(\&amp;quot;name\&amp;quot;)%&amp;gt;&amp;quot;&amp;nbsp;/&amp;gt;&lt;br /&gt;&lt;br /&gt;と書かなくてはならない状況になってしまったのです。&lt;br /&gt;&lt;br /&gt;今まで動作していたのに、Tomcat のバージョンを上げたら動かなくなるアプリケーションも少なくないでしょう。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Tomcat 開発プロジェクトは、たまーに、こういうことをしますね。&lt;br /&gt;現実論・実用性よりも、下位互換性を崩してでも理想論・あくまで仕様としての正しさを追い求めるというか。&lt;br /&gt;&lt;br /&gt;setCharacterEncoding() の時もそうでした。&lt;br /&gt;&lt;br /&gt;商用のアプリケーションサーバ製品ではこのようなことはしないでしょう。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;内部的に Tomcat や Tomcat と同じ実装を使う JBoss や Glassfish も、次回以降のバージョンは要注意ですね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;追記：&lt;br /&gt;動いていた方がオカシイという声もいただきますが、それは正論ふりかざしているだけです。今まで動いていたものが動かなくなるのは、現場をあまりに無視した行為です。setCharacterEncoding()の時もそれで大ブーイングだったわけで。&lt;br /&gt;&lt;br /&gt;さらに追記：&lt;br /&gt;システムプロパティ org.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING で挙動を元に戻す設定ができるようになっているとのことです。（takayoshiさんよりコメント欄にて情報をいただきました。ありがとうございます）&lt;br /&gt;setCharacterEncoding()の時もそうでしたが、Reference Implementationにも使われる実装ということで仕様に忠実でなければという立場と、現場でも利用されることを意識しなければならない立場の板挟み感が伝わってきます（笑）&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-6281096936744861703?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/6281096936744861703/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/08/tomcat6018_08.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6281096936744861703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6281096936744861703'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/08/tomcat6018_08.html' title='Tomcat 6.0.18 重大な変更'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-2501366878435670616</id><published>2008-08-02T01:50:00.000+09:00</published><updated>2008-08-02T01:51:35.935+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>iPhone 1週間使ってみて</title><content type='html'>&lt;b&gt;&lt;font size="4"&gt;タッチパネル UI&lt;/font&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;素晴らしい！&lt;br /&gt;「進む」「戻る」「選択する」「スクロールする」「拡大する」「縮小する」といった操作が直感的で意のままに操れます。&lt;br /&gt;レスポンスも速く、Apple 製品特有の動きのなめらかさと遊び心があり、「操作が楽しい！」とさえ思わせてくれる端末です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;font size="4"&gt;電話機能&lt;/font&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;全く問題なし。音も良いです。&lt;br /&gt;強いて難を挙げると、電話している見た目がちょっと変なことぐらいでしょうか。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;font size="4"&gt;iPod 機能&lt;/font&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;素晴らしい！&lt;br /&gt;タッチパネルによる操作は、従来の iPod よりも格段に使い勝手が向上しています。&lt;br /&gt;&lt;br /&gt;音は、昨年買った iPod nano とそう変わらないだろうと思っていたら&lt;br /&gt;&lt;br /&gt;・・・だいぶ違いました。&lt;br /&gt;&lt;br /&gt;iPod nano はナチュラルめ・柔らかめな音に対してiPhone はシャキッとクリア・明快でエッジの効いた音です。悪く言うとちょっと硬めでギラついています。&lt;br /&gt;&lt;br /&gt;昨年、ヘッドフォンを、SHURE の E2C から SE110 に変えました。&lt;br /&gt;&lt;br /&gt;E2C が硬めでエッジが効いた音なのに対してSE110 はナチュラル系な音作りです。&lt;br /&gt;&lt;br /&gt;なので、iPhone + SE110 の組み合わせはちょうど良い感じでした。&lt;br /&gt;iPhone + E2C だとギラギラし過ぎて、すぐに聴き疲れしてしまいそうです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;font size="4"&gt;日本語入力機能&lt;/font&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;タッチパネルからの入力作業そのものは快適です。&lt;br /&gt;しかし、辞書・変換機能が全然ダメです。&lt;br /&gt;日本語を入力する際は動作がとても重いです。&lt;br /&gt;フリーズしたかと思うぐらいの時も。&lt;br /&gt;この辺は国産の端末に一日の長があります。&lt;br /&gt;&lt;br /&gt;ジャストシステムあたりと組んで日本製の IME を搭載して欲しかった・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;font size="4"&gt;メール機能&lt;/font&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;IMAP/POP メールを普通に使えるのがとても良いです。&lt;br /&gt;標準の @i.softbank.jp のアドレスは 30 日間しか保存できませんが私は @i.softbank.jp のアドレスは使っていないので、全く問題に感じません。&lt;br /&gt;絵文字は、表示は可能ですが入力できませんが、普段から絵文字を使っていないので、これもまた問題に感じません。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;font size="4"&gt;Webブラウジング&lt;/font&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Mac と同じブラウザ Safari を搭載しています。&lt;br /&gt;描画が速く、フォントがとにかくキレイ。&lt;br /&gt;でもちょっと不安定ですね。突然強制終了することが1日に何度も。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;font size="4"&gt;オサイフケータイ&lt;/font&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;iPhone は対応していません。&lt;br /&gt;私はモバイルスイカを使っていますが、カード型の Suica も持っているのでこれがないと困る・・・とは思いませんでした。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;font size="4"&gt;ワンセグ&lt;/font&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;iPhone は対応していません。&lt;br /&gt;でもこれまでも私が使っていた携帯はワンセグ機能は無いし、私は基本的にテレビをあまり観ないので、これも困りませんでした。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;日本の携帯電話は、ヨーロッパともアメリカとも、他のアジア諸国とも違う独自の文化を進化・発展させてきました。&lt;br /&gt;この独自進化は時に「携帯電話のガラパゴス諸島」と揶揄されるほどです。&lt;br /&gt;&lt;br /&gt;日本語連文節変換・予測変換・絵文字・デコメ・オサイフケータイ・ワンセグケータイ・・・&lt;br /&gt;&lt;br /&gt;こういったガラパゴスケータイ特有の機能を存分に使いたい方にとっては、今の iPhone は使いにくく不満の残る端末だと思います。&lt;br /&gt;&lt;br /&gt;しかし今の iPhone を「ガラパゴスケータイ」ではなく、モバイルインターネット端末ととらえると、非常に良くできた端末と言えます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ここで注意していただきたいのは"今の"iPhone はという話なのです。&lt;br /&gt;iPhoneは、Mac OS の上でソフトウェアが動作している、PC に近いアーキテクチャを持っています。&lt;br /&gt;OS を含めた、ほぼすべてのソフトウェアが今後アップデートされる可能性があるのです。&lt;br /&gt;端末を買い換えることなく、中身がごっそり入れ替わることも起こり得ます。&lt;br /&gt;&lt;br /&gt;これが iPhone のすごいところ。&lt;br /&gt;&lt;br /&gt;狭い日本市場を分け合っているキャリアやメーカー主導ではなく、グローバルカンパニーである Apple 主導で端末やソフトウェアが提供されます。&lt;br /&gt;ソフトウェアベンダーが頑張って品質を上げてくることが期待されます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;・・・とは言え、現状、利用にあたっては多少のガマンや妥協が必要なのもまた事実です。&lt;br /&gt;&lt;br /&gt;次世代のモバイルデバイスを先陣切って体験できる！&lt;br /&gt;というところに喜びを感じられない方には、今はオススメできかねるのも正直なところです。&lt;br /&gt;&lt;br /&gt;今は手を出さずにちゃんと成熟するのを待ってもよいのではないでしょうか。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-2501366878435670616?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/2501366878435670616/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/08/iphone-1.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/2501366878435670616'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/2501366878435670616'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/08/iphone-1.html' title='iPhone 1週間使ってみて'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-930078504198429497</id><published>2008-08-01T01:24:00.000+09:00</published><updated>2008-08-01T01:26:41.099+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Tomcat'/><title type='text'>Tomcat6.0.18リリース</title><content type='html'>6.0.16からの変更点はほとんどバグフィックスのみと言っていいでしょう。&lt;br /&gt;&lt;br /&gt;Changelog&lt;br /&gt;&lt;a href="http://tomcat.apache.org/tomcat-6.0-doc/changelog.html" target="_blank"&gt;http://tomcat.apache.org/tomcat-6.0-doc/changelog.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Download&lt;br /&gt;&lt;a href="http://tomcat.apache.org/download-60.cgi" target="_blank"&gt;http://tomcat.apache.org/download-60.cgi&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="http://liebejudith.googlepages.com/microad_techjudith_content.js" type="text/javascript"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-930078504198429497?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/930078504198429497/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/08/tomcat6018.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/930078504198429497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/930078504198429497'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/08/tomcat6018.html' title='Tomcat6.0.18リリース'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-1846478638432410054</id><published>2008-07-27T23:22:00.000+09:00</published><updated>2008-07-27T23:23:05.099+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>iPhone買ってみました。</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_qRW47nLTz-8/SIyEL6FGLHI/AAAAAAAAC_c/nJd7D6Opbe4/s1600-h/IMG_9115.JPG" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_qRW47nLTz-8/SIyEL6FGLHI/AAAAAAAAC_c/nJd7D6Opbe4/s320/IMG_9115.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5227698607574363250" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;いろいろいじってみるのはこれからです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1日使っただけですが・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Ajaxを使ったサイトを含めてPCのサイトを普通に見られること。&lt;br /&gt;&lt;br /&gt;画面の拡大縮小が自由自在なこと。&lt;br /&gt;&lt;br /&gt;IMAP対応さえしていればどのメールアカウントも普通に使えること。&lt;br /&gt;&lt;br /&gt;iPodにもなること。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;が、いいなと思いました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;携帯のメールアドレス変更になっています。&lt;br /&gt;&lt;br /&gt;できる限り変更お知らせのメールを出しましたが、&lt;br /&gt;&lt;br /&gt;届いていない方は連絡ください。&lt;br /&gt;&lt;br /&gt;電話番号は変わっていないので。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-1846478638432410054?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/1846478638432410054/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/07/iphone.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/1846478638432410054'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/1846478638432410054'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/07/iphone.html' title='iPhone買ってみました。'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_qRW47nLTz-8/SIyEL6FGLHI/AAAAAAAAC_c/nJd7D6Opbe4/s72-c/IMG_9115.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-1647439521474539524</id><published>2008-07-23T11:43:00.001+09:00</published><updated>2008-07-23T11:46:29.975+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BEA'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='SpringFramework'/><category scheme='http://www.blogger.com/atom/ns#' term='EJB3'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle'/><title type='text'>BEA 買収後の Oracle のミドルウェア戦略</title><content type='html'>少し前に某 ML で得た情報ですが・・・&lt;br /&gt;&lt;br /&gt;今月初めに、BEA 買収後の Oracle のミドルウェアの統合方針が発表されています。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.oracle.com/products/middleware/docs/oracle-middleware-strategy-briefing-072008.pdf"&gt;http://www.oracle.com/products/middleware/docs/oracle-middleware-strategy-briefing-072008.pdf&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;JavaEE アプリケーションサーバは、OC4J を捨てて WebLogic Server へ統合される模様です。&lt;br /&gt;しかし（というか、もちろん）ORM フレームワークは Toplink です。&lt;br /&gt;&lt;br /&gt;WebLogic Server は、Pitchfork という Spring Framework ベースの DI/AOP コンテナを内包しており、事実上 Oracle のアプリケーションサーバは Oracle ADF + Spring + Toplink という構成になりそうです。&lt;br /&gt;&lt;br /&gt;商用 JavaEE アプリケーションサーバ製品は、IBM と Oracle の2強時代になりそうですね。&lt;br /&gt;&lt;br /&gt;統合開発環境は、従来通り Eclipse Pack と JDeveloper の2本立て。BEA Workshop の機能は Eclipse Pack の一部として取り込まれていくようです。&lt;br /&gt;&lt;br /&gt;Beehive は消えゆく運命に・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="http://liebejudith.googlepages.com/microad_techjudith_content.js" type="text/javascript"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-1647439521474539524?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/1647439521474539524/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/07/bea-oracle.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/1647439521474539524'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/1647439521474539524'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/07/bea-oracle.html' title='BEA 買収後の Oracle のミドルウェア戦略'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-4519373916710346735</id><published>2008-07-23T10:51:00.000+09:00</published><updated>2008-07-23T11:19:49.939+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='OSS'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><title type='text'>Eclipse 3.4 Ganymede の日本語化</title><content type='html'>Eclipse の最新バージョン3.4 Ganymede リリースと同時に、&lt;a href="http://www.eclipse.org/babel/"&gt;Babel Project&lt;/a&gt; により国際化対応可となりましたが・・・&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.eclipse.org/babel/"&gt;Babel が提供する Language Pack&lt;/a&gt; を入れると、入らなくなるプラグインが多数存在する模様です。&lt;br /&gt;&lt;br /&gt;今のところ、&lt;a href="http://sourceforge.jp/projects/propedit/"&gt;プロパティファイルエディタ&lt;/a&gt;や Spring IDE が入らず困っています。&lt;br /&gt;&lt;br /&gt;正確には、これらのプラグインは &lt;a href="http://www.eclipse.org/babel/"&gt;Babel Language Pack&lt;/a&gt; のインストール前やアンインストール後ならインストールでき、インストール後はもう一度 &lt;a href="http://www.eclipse.org/babel/"&gt;Babel Language Pack&lt;/a&gt; を入れても問題なさそうなのですが、不便ですね・・・&lt;br /&gt;&lt;br /&gt;&lt;script src="http://liebejudith.googlepages.com/microad_techjudith_content.js" type="text/javascript"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-4519373916710346735?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/4519373916710346735/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/07/eclipse-34-ganymede.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/4519373916710346735'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/4519373916710346735'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/07/eclipse-34-ganymede.html' title='Eclipse 3.4 Ganymede の日本語化'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-1708862829706869212</id><published>2008-07-23T10:03:00.001+09:00</published><updated>2008-07-23T10:05:29.372+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='OSS'/><category scheme='http://www.blogger.com/atom/ns#' term='SpringFramework'/><title type='text'>Spring Framework 2.5.5 リリース</title><content type='html'>一ヶ月も前に出ていました。&lt;br /&gt;2.5.4の時も、今回もアナウンスがないのでダウンロードページを直接見ないとアップデートがわかりません。&lt;br /&gt;&lt;br /&gt;&lt;b&gt;主な変更点&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Hibernate 3.3.0対応&lt;/li&gt;&lt;li&gt;iBATIS SQL Maps 2.3.2対応&lt;/li&gt;&lt;li&gt;IBM JDK1.6対応&lt;/li&gt;&lt;li&gt;DriverManagerDataSourceが削除され、代わりにSimpleDriverDataSourceが追加。クラスローディングとシンクロナイぜーションの都合らしい。&lt;/li&gt;&lt;li&gt;MS SQL Server用のエラーコード対応&lt;/li&gt;&lt;li&gt;HibernateTransactionManagerに"hibernateManagedSession"フラグが追加&lt;/li&gt;&lt;li&gt;Hibernate/OpenJpa/TopLink/EclipseLink利用時にDerbyとH2をサポート&lt;/li&gt;&lt;li&gt;Hibernate/TopLink/JDO/JPAのプロキシクラスはORMプロバイダのクラスローダが生成するように変更（OSGi対応）&lt;/li&gt;&lt;li&gt;iBATIS SqlMapで複数のSqlMapConfigファイルに対応&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;その他詳細はChangeLogを参照。&lt;br /&gt;&lt;a href="http://static.springframework.org/spring/docs/2.5.x/changelog.txt" target="_blank"&gt;http://static.springframework.org/spring/docs/2.5.x/changelog.txt&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="http://liebejudith.googlepages.com/microad_techjudith_content.js" type="text/javascript"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-1708862829706869212?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/1708862829706869212/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/07/spring-framework-255.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/1708862829706869212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/1708862829706869212'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/07/spring-framework-255.html' title='Spring Framework 2.5.5 リリース'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-8378447991596040756</id><published>2008-07-04T23:57:00.000+09:00</published><updated>2008-07-04T23:58:31.648+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='SpringFramework'/><category scheme='http://www.blogger.com/atom/ns#' term='Seasar'/><title type='text'>今度のSpringユーザー会勉強会はSlim3！</title><content type='html'>&lt;a href="http://springframework.jp/index.php?%CA%D9%B6%AF%B2%F1#swy35rsc" target="_blank"&gt;http://springframework.jp/index.php?%CA%D9%B6%AF%B2%F1#swy35rsc&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;なんと、Seasar のひがさんがSpringユーザー会の勉強会にて Slim3 を紹介してくださいます！！！&lt;br /&gt;&lt;br /&gt;Spring な人も、Seasar な人も、あらゆる意味で注目です。&lt;br /&gt;&lt;br /&gt;&lt;script src="http://liebejudith.googlepages.com/microad_techjudith_content.js" type="text/javascript"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-8378447991596040756?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/8378447991596040756/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/07/springslim3.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8378447991596040756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8378447991596040756'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/07/springslim3.html' title='今度のSpringユーザー会勉強会はSlim3！'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-2314062678910061248</id><published>2008-07-03T22:58:00.006+09:00</published><updated>2008-07-05T06:11:29.145+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><title type='text'>Tour de Force Tokyo 2008 へ行ってきました</title><content type='html'>Salesforce.com の開発者向けイベント &lt;a href="http://www.salesforce.com/jp/events/crm-events/2008-07-03.jsp" target="_blank"&gt;Tour de Force Tokyo 2008&lt;/a&gt; へ行ってきました。&lt;br /&gt;&lt;br /&gt;午前に行われた基調講演は US 本社CEO兼会長であるマーク・ベニオフ氏の講演。&lt;br /&gt;立ち見を含めてギッシリ満員御礼でした。&lt;br /&gt;&lt;br /&gt;以前から Salesforce.com に興味を持ち、開発者アカウントでいろいろいじっていた私にはあまり目新しい内容ではありませんでしたが、その中で PaaS こそが Web3.0 であると言い切っていたのが印象的でした。&lt;br /&gt;&lt;small&gt;これには、多方面からいろいろな意見があるかとも思いますが・・・&lt;/small&gt;&lt;br /&gt;いつもながらマーク・ベニオフ氏のメッセージはわかりやすく、しかし日本で発言するには少々刺激的にも感じます。&lt;br /&gt;&lt;br /&gt;午後のセッションはシステム管理者、IT管理者およびビジネスアナリスト向け (アプリケーション構築初級)、開発者、プログラマ向け (Apex/Visual Force を駆使したプログラミング上級者向け)、ISV,起業家向けと分かれていました。もちろん私は開発者、プログラマ向けのセッションに参加しました。SFDC へ転職した後輩はシステム管理者、IT管理者およびビジネスアナリスト向けのセッションを担当していたらしいのですが・・・。&lt;br /&gt;&lt;br /&gt;セッションの内容そのものは私には新しい情報ではありませんでしたが、デモコーナーで SFDC のエンジニアの方とお話しして、作成したアプリケーションのテストについての情報を得られたのが収穫でした。&lt;br /&gt;&lt;br /&gt;Force Builder (Web上での開発環境) では、作成したアプリケーションには JUnit のようなメソッド単位のテストコードを書くことができ、75%以上のカヴァレッジが得られないと本番環境へのリリースができないようになっているそうです。&lt;br /&gt;ただしテストコードは Force Builder に限られていて、ForceIDE (Eclipse プラグインでの開発環境) でのユニットテスティングフレームワークが提供されていないのが残念ですが・・・&lt;br /&gt;UI 上のテストは、セレニウムなどを使うしかなさそうです。&lt;br /&gt;しかし、SFDC のすべてのエンジニアがそのあたりを把握しているわけではなさそうです。初めに私が質問した方はテストについてはほとんど答えられませんでした。&lt;br /&gt;後でSFDC へ転職した後輩に聞いたらすべてクリアになりましたが（笑）&lt;br /&gt;&lt;br /&gt;エンタープライズ向けアプリケーションの開発では、手動＆目視によるテストのみなどという状況はありえません。&lt;br /&gt;少し規模のあるカスタムアプリケーションを作成した場合はユニットテスティングフレームワークが必要になると思われますので、開発者向けの機能に関する今後の展開に期待したいところです。&lt;br /&gt;カスタムオブジェクトを扱う、DbUnit のように更新系テストのための機能を提供するテスティングフレームワークも欲しいですね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;それから、せっかくのテクニカルセッションなので、電源と無線LANを用意して、ノートPCをお持ちの方はその場で試せます！みたいになってるとよかったかも。&lt;br /&gt;体験コーナーの台数も多くなかったし。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-2314062678910061248?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/2314062678910061248/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/07/tour-de-force-tokyo-2008.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/2314062678910061248'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/2314062678910061248'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/07/tour-de-force-tokyo-2008.html' title='Tour de Force Tokyo 2008 へ行ってきました'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-8497226600354278371</id><published>2008-06-29T13:14:00.006+09:00</published><updated>2008-07-01T22:34:14.604+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='JBoss'/><category scheme='http://www.blogger.com/atom/ns#' term='Glassfish'/><title type='text'>JBoss 5.0 CR1 は今週リリース</title><content type='html'>だそうです。  &lt;br /&gt;&lt;br /&gt;JBoss の CR 版は、一般的に言うところの RC 版です。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.jboss.org/feeds/post/jboss_as_5_0_status" target="_blank"&gt;http://www.jboss.org/feeds/post/jboss_as_5_0_status&lt;/a&gt;  &lt;br /&gt;&lt;br /&gt;そして、6-7週後にCR2のリリース、そしてGAと続くのだそうです。  &lt;br /&gt;&lt;br /&gt;しかし。  &lt;br /&gt;&lt;br /&gt;ここ2年ぐらい、JBoss Application Server のロードマップは全くアテになりませんね。当初のロードマップでは、JBoss 5.0 はたしか昨年春には出ていたはずなのに。RedHat/JBoss は Seam &amp; WebBeans の開発にかかりっきりなのでしょうか。 &lt;br /&gt;JBoss 4.2は &lt;a href="http://jcp.org/en/jsr/detail?id=250" target="_blank"&gt;JSR-250 Common Annotations&lt;/a&gt; がちゃんと実装されていないので、Web コンテナ上で JNDI リソースや EJB オブジェクトのアノテーションによるインジェクションが動作しません。 &lt;br /&gt;JBoss 4.2は、まだ JavaEE5 に完全対応できていないのです。  &lt;br /&gt;&lt;br /&gt;JBoss 5.0 Beta4 は、JMS がうまく動作しなかったり、アプリケーションの自動再デプロイがうまく動作しなかったりセキュリティロールによるアクセス制御がうまく動作しなかったりと、まだまだ安定しません。&lt;br /&gt;&lt;br /&gt;JavaEE5 完全対応の OSS のアプリケーションサーバとしては、&lt;a href="https://glassfish.dev.java.net/ja/" target="_blank"&gt;Glassfish&lt;/a&gt; や &lt;a href="http://geronimo.apache.org/" target="_blank"&gt;Apache Geronimo&lt;/a&gt; がありますが、個人的には JBoss が好きです。Eclipse が標準で対応していて、zip を展開するだけで使えるという手軽さがいいですね。&lt;a href="http://ja.netbeans.org/" target="_blank"&gt;NetBeans&lt;/a&gt; を使う人なら &lt;a href="https://glassfish.dev.java.net/ja/" target="_blank"&gt;Glassfish&lt;/a&gt; がいいのでしょうけど。。。  &lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-8497226600354278371?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/8497226600354278371/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/06/jboss-50-rc1.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8497226600354278371'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8497226600354278371'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/06/jboss-50-rc1.html' title='JBoss 5.0 CR1 は今週リリース'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-5037712734804805400</id><published>2008-06-29T13:07:00.000+09:00</published><updated>2008-06-29T13:14:01.597+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><title type='text'>Eclipse の最新バージョン 3.4 Ganymede がリリースされました</title><content type='html'>これも数日前のことですが・・・&lt;br /&gt;&lt;br /&gt;Eclipse の最新バージョン 3.4 Ganymede がリリースされました。&lt;br /&gt;毎年6月末にリリースというサイクルがすっかり定着しているようです。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.eclipse.org/downloads/" target="_blank"&gt;http://www.eclipse.org/downloads/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;昨年の 3.3 Europa リリース時に IBM は LanguagePack を Donate しないという方針を打ち出したため、しばらく公式の Language Packが 無いという状況が続いていました。（これが日本国内での Eclipse シェア伸び悩み＆公式日本語版リリースのある NetBeans 活況化の要因の一つかも？と思っています。）&lt;br /&gt;&lt;br /&gt;Eclipse.org では多国語翻訳プロジェクト「Babel」が立ち上がったもののいっこうに動かず、日本では有志による翻訳プラグイン Pleiades が非公式ではあるものの、それなりに普及するという状況でしたが・・・&lt;br /&gt;その Pleiades が Eclipse.org の Babel プロジェクトに翻訳成果を Donate し、晴れて Eclipse.org 公式の Language Pack がリリースされています。&lt;br /&gt;&lt;br /&gt;しかも、3.3 Europa、3.4 Ganymede 両対応で、さらにアップデートサイト対応です。&lt;br /&gt;アップデートマネージャに下記のURLを登録して利用できます。&lt;br /&gt;&lt;br /&gt;(Europa)&lt;br /&gt;http://download.eclipse.org/technology/babel/update-site/europa&lt;br /&gt;(Ganymede)&lt;br /&gt;http://download.eclipse.org/technology/babel/update-site/ganymede&lt;br /&gt;&lt;br /&gt;Pleiades プロジェクトの皆さん、ありがとう！&lt;br /&gt;&lt;br /&gt;WTP3.0 を中心に Ganymede を使い倒してみたいと思います。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-5037712734804805400?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/5037712734804805400/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/06/eclipse-34-ganymede.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5037712734804805400'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5037712734804805400'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/06/eclipse-34-ganymede.html' title='Eclipse の最新バージョン 3.4 Ganymede がリリースされました'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-303063074909468533</id><published>2008-06-29T13:00:00.000+09:00</published><updated>2008-06-29T13:07:27.829+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Sun'/><title type='text'>Sun の John Gage 氏が退社</title><content type='html'>少し前のニュースですが。&lt;br /&gt;&lt;br /&gt;J・ゲージ氏、サン・マイクロシステムズを退社--クリーンテクノロジー投資家に転身&lt;br /&gt;&lt;a href="http://japan.cnet.com/news/ent/story/0,2000056022,20374980,00.htm" target="_blank"&gt;http://japan.cnet.com/news/ent/story/0,2000056022,20374980,00.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;JavaOneで最初に総合司会的役割で登場する、あの John Gage 氏です。&lt;br /&gt;&lt;br /&gt;映画俳優のような、渋さとダンディさとかっこよさとオーラのある方でした。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://jp.sun.com/communities/blogs/" target="_blank"&gt;サン・マイクロシステムズ社員のブログ&lt;/a&gt;では、Gage 氏が来日・来訪したことは書いていますが、退社したことには一切触れられていないのが、ちょっと不思議な感じがします。惜しむ声があってもよさそうなのですが・・・なにか不文律でもあるのでしょうか。&lt;br /&gt;それとも、自社社員の退社については触れないのが常識？&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-303063074909468533?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/303063074909468533/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/06/sun-john-gage.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/303063074909468533'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/303063074909468533'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/06/sun-john-gage.html' title='Sun の John Gage 氏が退社'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-6581248519679254633</id><published>2008-06-14T18:46:00.003+09:00</published><updated>2008-06-14T18:49:28.717+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><title type='text'>Google と富士ソフトの提携</title><content type='html'>率直に、素直に、単純に、驚きました。&lt;br /&gt;&lt;br /&gt;全く正反対の企業文化を持つこの2社の提携。&lt;br /&gt;&lt;br /&gt;「Googleで変えたい」と富士ソフトの堀田副社長 (ITmedia)&lt;br /&gt;&lt;a href="http://www.itmedia.co.jp/enterprise/articles/0806/11/news137.html" target="_blank"&gt;http://www.itmedia.co.jp/enterprise/articles/0806/11/news137.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;この2社に共通するのは「エンジニアは死ぬほど忙しい」という点だけかも（笑）&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-6581248519679254633?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/6581248519679254633/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/06/google.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6581248519679254633'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6581248519679254633'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/06/google.html' title='Google と富士ソフトの提携'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-6515582441457775361</id><published>2008-06-11T00:45:00.004+09:00</published><updated>2008-06-11T06:19:54.870+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='au'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='DoCoMo'/><title type='text'>Google Developer Day 2008 Japan</title><content type='html'>Google Developer Day 2008 Japan&lt;br /&gt;&lt;a href="http://code.google.com/intl/ja/events/developerday/2008/home.html" target="_blank"&gt;http://code.google.com/intl/ja/events/developerday/2008/home.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;行きたかったー！！！&lt;br /&gt;今月いっぱいまでは1日たりとも休めない仕事なので、泣く泣く諦めました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;↓↓↓　このへんを見て、行った気分になることにします。　↓↓↓&lt;br /&gt;&lt;br /&gt;グーグルが日本で開発者イベント、取り組むべき「三つの課題」とは&lt;br /&gt;&lt;a href="http://itpro.nikkeibp.co.jp/article/NEWS/20080610/307447/" target="_blank"&gt;http://itpro.nikkeibp.co.jp/article/NEWS/20080610/307447/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Androidの真価は“モバイル・マッシュアップ”---グーグルの担当者がデモ&lt;br /&gt;&lt;a href="http://itpro.nikkeibp.co.jp/article/NEWS/20080610/307445/" target="_blank"&gt;http://itpro.nikkeibp.co.jp/article/NEWS/20080610/307445/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;[Google Developer Day 2008]OpenSocialのセッション&lt;br /&gt;&lt;a href="http://builder.japan.zdnet.com/member/u332219/blog/2008/06/10/entry_27002287/" target="_blank"&gt;http://builder.japan.zdnet.com/member/u332219/blog/2008/06/10/entry_27002287/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;[Google Developer Day 2008]Google Gadgets&lt;br /&gt;&lt;a href="http://builder.japan.zdnet.com/member/u332219/blog/2008/06/10/entry_27002291/" target="_blank"&gt;http://builder.japan.zdnet.com/member/u332219/blog/2008/06/10/entry_27002291/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;[Google Developer Day 2008]Google Developer Day 2008にやって来ました。&lt;br /&gt;&lt;a href="http://builder.japan.zdnet.com/member/u332219/blog/2008/06/10/entry_27002266/" target="_blank"&gt;http://builder.japan.zdnet.com/member/u332219/blog/2008/06/10/entry_27002266/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;【Google Developer Day 2008】2年目の開発者会議、パシフィコ横浜にて本日開催 &lt;br /&gt;&lt;a href="http://codezine.jp/a/article/aid/2634.aspx" target="_blank"&gt;http://codezine.jp/a/article/aid/2634.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;【Google Developer Day 2008】次世代Webのキーワードは「3つのC」&lt;br /&gt;&lt;a href="http://codezine.jp/a/article/aid/2635.aspx" target="_blank"&gt;http://codezine.jp/a/article/aid/2635.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;「Androidの真価は“モバイル・マッシュアップ”」なんて言われちゃうとiPhone 買おう！という意気込みが薄れちゃいます。&lt;br /&gt;7月11日発売と聞いて買う気満々だったのですが（笑）&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;個人的に、 Google と提携した docomo や au にまさにそれを期待していたのですが・・・&lt;br /&gt;意外とおカタイ携帯キャリアにはそういう発想は難しいのかもしれません。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;でもまあ、開発者向けイベントということもあるのでしょうけど、公開されている API についてのセッションが中心で、Google の内部テクノロジーについてのセッションが無いのが残念と言えば残念。&lt;br /&gt;GFS をはじめとして、Google には他に類を見ない独創的で常識を越えたテクノロジーがたくさんあるのに。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-6515582441457775361?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/6515582441457775361/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/06/google-developer-day-2008-japan.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6515582441457775361'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6515582441457775361'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/06/google-developer-day-2008-japan.html' title='Google Developer Day 2008 Japan'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-736360242222325390</id><published>2008-06-09T02:19:00.005+09:00</published><updated>2008-06-09T02:48:44.602+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><title type='text'>SaaSを取り巻くIT政策</title><content type='html'>看過できない言葉が並んでいます。&lt;br /&gt;&lt;br /&gt;「システムの完成が半年遅れたら、サービスの開始も半年、1年遅れてしまう。これが原因でライバルに負けてしまうことだってあります。」&lt;br /&gt;「事業者数で中堅・中小企業の8～9割を占める、10人以下の小規模な企業では、パソコンはあるんだけれども、電子メールくらいにしか使っていないという現状があります。」&lt;br /&gt;「8～9割の小規模事業者は永遠にITを使わなくなるかもしれないといったくらいの危機感があります。」&lt;br /&gt;「ITを活用する企業とそうでない企業の二極化は、深刻という言葉では表現しきれないところまで進んでいるといっていい。」&lt;br /&gt;&lt;br /&gt;&lt;a href="http://itpro.nikkeibp.co.jp/article/Interview/20080603/305821/" target="_blank"&gt;http://itpro.nikkeibp.co.jp/article/Interview/20080603/305821/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;この、経済産業省 商務情報政策局 情報処理振興課長 八尋 俊英さんという方、ちゃんと見ているな、という印象です。&lt;br /&gt;&lt;br /&gt;官公庁のIT戦略は現状を見ていない、使われ方も予想できないずさんなものも多いのですが、こういう方が日本のIT政策を牽引するなら、と期待します。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;・・・というか、このレベルで議論される時点で日本のITを取り巻く状況ははまだまだとも言えます（笑）&lt;br /&gt;当然の認識とされてしかるべきで、議論の余地など無いとも言えますが。&lt;br /&gt;&lt;br /&gt;先日のこの記事を見て、SaaSありきでうまくいくはずはないと思いましたが、&lt;br /&gt;&lt;a href="http://www.atmarkit.co.jp/news/200806/04/unisys.html" target="_blank"&gt;http://www.atmarkit.co.jp/news/200806/04/unisys.html&lt;/a&gt;&lt;br /&gt;この八尋さんという方はそれをわかっていらっしゃいますね。&lt;br /&gt;&lt;br /&gt;まずは何をサービスとして提供するのか？が先にないと。。。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-736360242222325390?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/736360242222325390/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/06/saasit.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/736360242222325390'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/736360242222325390'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/06/saasit.html' title='SaaSを取り巻くIT政策'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-6865236314046946468</id><published>2008-06-05T23:39:00.006+09:00</published><updated>2008-06-06T00:36:18.854+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FireFox'/><title type='text'>Mozilla Firefox3 RC2 リリース</title><content type='html'>β4以降、ブログでは扱っていませんでしたが、β5・RC1と使っています。&lt;br /&gt;&lt;br /&gt;RC2 がリリースされました。&lt;br /&gt;&lt;a href="http://www.mozilla.com/en-US/firefox/all-rc.html" target="_blank"&gt;http://www.mozilla.com/en-US/firefox/all-rc.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Mozilla Firefox3 の新機能で、あまり他所では紹介されていないモノを紹介したいと思います。&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;タブをたくさん開いたとき、マウスカーソルをタブ上に持って行って、マウスのホイールをくるくるすると・・・&lt;/li&gt;&lt;li&gt;F11キーを押して全画面表示すると・・・&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;全画面表示は、プレゼンなどでも使えそうです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Firefoxでは、公開初日ダウンロード数の世界記録に挑戦しているそうです。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.spreadfirefox.com/node&amp;id=228636&amp;t=287"&gt;&lt;img border="0" alt="Download Day - Japanese" title="Download Day - Japanese" src="http://www.spreadfirefox.com/files/images/affiliates_banners/468x60_dday_jp.png"/&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;面白い試みですね。&lt;br /&gt;私も登録しました。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-6865236314046946468?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/6865236314046946468/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/06/mozilla-firefox3-rc2.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6865236314046946468'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6865236314046946468'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/06/mozilla-firefox3-rc2.html' title='Mozilla Firefox3 RC2 リリース'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-851557532088057793</id><published>2008-05-31T16:06:00.004+09:00</published><updated>2008-05-31T16:56:37.265+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><title type='text'>SalesforceをVPNで利用可能に。</title><content type='html'>少し前の記事ですが・・・&lt;br /&gt;&lt;br /&gt;セールスフォースのSaaS型アプリがVPNでも利用可能に--NTTグループと連携&lt;br /&gt;&lt;a href="http://japan.zdnet.com/security/story/0,3800079245,20373964,00.htm" target="_blank"&gt;http://japan.zdnet.com/security/story/0,3800079245,20373964,00.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;それほど大きく取り合げられたニュースではないのですが、これは日本で普及するための大きな武器になるのではないでしょうか？&lt;br /&gt;&lt;br /&gt;導入を検討企業にとっては、Google Apps との連携よりもこちらの方が、よっぽど大きなアピールになり得ます。&lt;br /&gt;&lt;br /&gt;通信内容は暗号化されていようと、データセンターはどんなにセキュアだと言われようと、それでも重要な社内情報や顧客情報をインターネットに晒すことに大きな抵抗があると考える企業は多いですから。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-851557532088057793?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/851557532088057793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/05/salesforcewo.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/851557532088057793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/851557532088057793'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/05/salesforcewo.html' title='SalesforceをVPNで利用可能に。'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-7591719497010478786</id><published>2008-05-25T12:27:00.001+09:00</published><updated>2008-05-25T12:29:13.788+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='OSS'/><category scheme='http://www.blogger.com/atom/ns#' term='SpringFramework'/><title type='text'>Spring Framework 2.5.4 リリース</title><content type='html'>4月28日付けで、Spring Framework 2.5.4 がリリースされていました。&lt;br /&gt;オフィシャルサイトのトップページにも、RSS 配信にも無かったので今日まで気づきませんでした・・・&lt;br /&gt;&lt;br /&gt;&lt;a href="http://sourceforge.net/project/showfiles.php?group_id=73357&amp;package_id=173644&amp;release_id=595476" target="_blank"&gt;http://sourceforge.net/project/showfiles.php?group_id=73357&amp;package_id=173644&amp;release_id=595476&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;2.5.3 からの主な変更点は下記の通り。&lt;br /&gt;&lt;ul&gt;&lt;li&gt;AspectJ が 1.6 になった（1.5.x との互換性あり）&lt;/li&gt;&lt;li&gt;JdbcTemplate で CallableStatement から null の ResultSets が返るのを検出してスキップするようになった&lt;/li&gt;&lt;li&gt;BeanPropertySqlParameterSource は MySQL との互換性のために JDBC 3.0 の Types.BOOLEAN をデフォルトで使わないようになった&lt;/li&gt;&lt;li&gt;Hibernate3.2 + ピュア Spring 管理 JTA トランザクションで、クエリ発行前にフラッシュ実行をサポート&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;詳細は下記を参照してください。&lt;br /&gt;&lt;a href="http://static.springframework.org/spring/docs/2.5.x/changelog.txt" target="_blank"&gt;http://static.springframework.org/spring/docs/2.5.x/changelog.txt&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;あまり大きな変更点はありませんね。&lt;br /&gt;ニュースにするまでもないってコトでしょうか。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src="http://cache.microad.jp/send0100.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-7591719497010478786?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/7591719497010478786/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/05/spring-framework-254.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/7591719497010478786'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/7591719497010478786'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/05/spring-framework-254.html' title='Spring Framework 2.5.4 リリース'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-5718489537189108635</id><published>2008-05-12T22:06:00.006+09:00</published><updated>2008-05-14T20:57:06.523+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Sun'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>SaaS 普及のカギ</title><content type='html'>今 SaaS を手がける代表的な企業といえば、Google と SalesForce.com です。&lt;br /&gt;&lt;br /&gt;しかし、両社のサービスに私は不満です。&lt;br /&gt;&lt;br /&gt;何がって？&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;SaaS Office Suite&lt;/span&gt;&lt;br /&gt;（残念ながら？）世の中の人々（特に企業ユーザー）は、MS Office を手放せません。SaaS ドキュメントにも MS Office 完全互換を求めています。&lt;br /&gt;Google Document が MS を打倒できない理由は、ズバリ MS Office 完全互換でないからです。一応 MS Office 形式でエクスポートは可能ですが、マクロは動作しないし、レイアウトが崩れたりします。&lt;br /&gt;&lt;small&gt;OOo の普及が進まないのも、MS Office 完全互換ではないからという理由に他ならないからでしょう・・・&lt;/small&gt;&lt;br /&gt;&lt;br /&gt;MS さん！何やってるんですか？&lt;br /&gt;Office ドキュメントと Web 上のドキュメントのインポート/エクスポートを完全に行える SaaS 形式の Office Suite をリリースすればみんな使うのに・・・&lt;br /&gt;結局、最終的にはローカルへのインポート/ローカルからのエクスポートの需要はあるのだから、ユーザーが増えれば（減らなければ）Office は売れ続けるのに・・・&lt;br /&gt;マクロも消えない、完全互換の SaaS ドキュメントは（現在のところ） MS だけが作れるものなのに・・・&lt;br /&gt;「オープンである」とかはきれい事。特に企業ユーザからは MS Office 完全互換が求められているのが事実だと思います。&lt;br /&gt;Web にインポート/エクスポートできる MS Office ドキュメントは厳密に言えば SaaS ではないのですが、ユーザが求める物を提供することは大事ですよね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-size:130%;"&gt;クラウド/ PaaS&lt;/span&gt;&lt;br /&gt;SalesForce.com の Force.com は Apex という独自言語と独自 API がネックですね。他のプラットフォームへ移植できませんから。&lt;br /&gt;Google App Engine も、同じ理由で Bigtable がネックです。&lt;br /&gt;&lt;br /&gt;Sun さん！何やってるんですか？&lt;br /&gt;完全 Pure Java なクラウド環境をリリースすればみんな使うのに・・・&lt;br /&gt;Glassfish が使えて、H2 や Derby (JavaDB) が動作すれば言うことナシです。&lt;br /&gt;Google App Engine なんてメじゃないのに・・・&lt;br /&gt;完全 Pure Java なクラウド環境がリリースされれば Java テクノロジはますます躍進するでしょう。そして、Sun は PaaS 分野のリーダーとなれるでしょう。&lt;br /&gt;&lt;br /&gt;・・・とここまで書いて思い出しました。たしか、Sun は非営利団体等へ仮想化サーバスペースを無償で提供するというソリューションをやっていたはず。・・・&lt;br /&gt;&lt;small&gt;ただし、米 Sun のサービスで日本語文字コードセットの扱いに問題があったような。&lt;br /&gt;具体的な資料は探し出せず。。。残念。&lt;/small&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-size:130%;"&gt;Web メール&lt;/span&gt;&lt;br /&gt;SaaS の普及がもっとも進んでいる分野が Web メールでしょう。Gmail、Hotmail (Windows Live! Mail)、Yahoo! Mail を利用している人はとても多いと思います。&lt;br /&gt;しかし、メインではメーラーによる POP アクセスが主で、Web メールの利用はプライベートでは 30%、ビジネス利用では 10% 以下です。（2007年9月の記事による）&lt;br /&gt;&lt;br /&gt;Web メールメイン利用、仕事では約9％・自宅では約30％&lt;br /&gt;&lt;a href="http://japan.internet.com/research/20070920/1.html"&gt;http://japan.internet.com/research/20070920/1.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Web メールの利用はセカンドアドレスや「漏洩・流出してもかまわない、いざとなったら捨てられるアドレス」としての利用が大多数なのではないでしょうか。企業ユースではさらに比率が下がりますが、これは情報漏洩対策等の結果でしょう。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-size:130%;"&gt;SaaSを使わない理由&lt;/span&gt;&lt;br /&gt;こんな記事もありました。&lt;br /&gt;&lt;br /&gt;SaaSを使わない理由――IT投資調査から&lt;br /&gt;&lt;a href="http://www.itmedia.co.jp/enterprise/articles/0805/14/news015.html"&gt;http://www.itmedia.co.jp/enterprise/articles/0805/14/news015.html&lt;/a&gt;&lt;br /&gt;それなりに多いSaaS普及への課題&lt;br /&gt;&lt;a href="http://www.itmedia.co.jp/enterprise/articles/0804/25/news007.html"&gt;http://www.itmedia.co.jp/enterprise/articles/0804/25/news007.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-5718489537189108635?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/5718489537189108635/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/05/saas-saas-google-salesforce.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5718489537189108635'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5718489537189108635'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/05/saas-saas-google-salesforce.html' title='SaaS 普及のカギ'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-5483603338752935939</id><published>2008-05-11T01:35:00.004+09:00</published><updated>2008-06-08T00:21:52.157+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='livedoor'/><category scheme='http://www.blogger.com/atom/ns#' term='au'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><title type='text'>au one メール</title><content type='html'>au は Google と提携して、au one メールに Gmail を採用しているのですが・・・&lt;br /&gt;&lt;br /&gt;Gmail の新バージョンになかなか対応しません。&lt;br /&gt;&lt;br /&gt;au one メールは POP や IMAP を禁じているなど、標準の Gmail そのままではなくてかなりカスタマイズしている模様です。&lt;br /&gt;おそらく、このカスタマイズゆえに Gmail 新バージョンへの対応が追いついていないのでしょう。&lt;br /&gt;&lt;br /&gt;バージョンアップや機能追加に対応できないのなら、SaaS の意味が半減してしまいます。&lt;br /&gt;&lt;br /&gt;変にカスタマイズしないで、デフォルトのまま Google Apps を利用すればいいのに・・・&lt;br /&gt;&lt;br /&gt;ちなみに、livedoor mail がそのスタイルですね。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-5483603338752935939?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/5483603338752935939/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/05/au-one.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5483603338752935939'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5483603338752935939'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/05/au-one.html' title='au one メール'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-8485506953060042975</id><published>2008-05-08T12:20:00.004+09:00</published><updated>2008-05-12T22:28:39.550+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='OSS'/><category scheme='http://www.blogger.com/atom/ns#' term='Sun'/><title type='text'>MySQL、新機能のクローズトソース化の決定を撤回</title><content type='html'>先月、「MySQL、新機能追加は有償版の「MySQL Enterprise」だけを対象に」という記事が Technobahn より出て、Sun が各方面の OSS 支持者の非難を浴びるという事件がありました。&lt;br /&gt;&lt;br /&gt;MySQL、新機能追加は有償版の「MySQL Enterprise」だけを対象に&lt;br /&gt;&lt;a href="http://www.technobahn.com/cgi-bin/news/read2?f=200804172000" target="_blank"&gt;http://www.technobahn.com/cgi-bin/news/read2?f=200804172000&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;こんな苦しいフォローもありましたが・・・&lt;br /&gt;&lt;br /&gt;「一部報道で、MySQLに対する今後の新機能追加は有償版である「MySQL Enterprise」のみに適用されるとあり、これがコミュニティーから強い不快感を招いているが、実際には、「一部」の機能やドライバがMySQL Enterpriseにのみに搭載されるという趣旨である。」&lt;br /&gt;&lt;a href="http://www.itmedia.co.jp/enterprise/articles/0804/21/news118.html" target="_blank"&gt;http://www.itmedia.co.jp/enterprise/articles/0804/21/news118.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;やっぱりこうなりましたね。&lt;br /&gt;&lt;br /&gt;MySQL、新機能のクローズトソース化の決定を撤回&lt;br /&gt;&lt;a href="http://www.technobahn.com/news/2008/200805071431.html" target="_blank"&gt;http://www.technobahn.com/news/2008/200805071431.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;クローズドソース化は MySQL の方針で、Sun の意向に反する（と主張している）ところが引っかかりますが・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ベンダーのオープンソース戦略の難しさを感じさせる一件だと思います。&lt;br /&gt;オープンソースと言えば Linux カーネルや、Apache Software Foundation だった時代は、「オープンソース＝有志によるボランティア活動」という色も強かったのですが、IBM の Eclipse が普及してきた頃から、ソフトウェアベンダーが自社製品をオープンソースライセンスで公開するという動きが急速に広まってきました。&lt;br /&gt;&lt;br /&gt;しかし、中にはこの戦略がうまくいっていないベンダーがあります。&lt;br /&gt;&lt;br /&gt;営利企業である以上、すべての事業は自社の収益に結びつけられるべきなのですが、オープンソース戦略はいかに大きい目・長い目で見て、業界全体が育っていくのを見守れるかにかかっていると思います。&lt;br /&gt;一気にシェアを取りに行ったり、ライバルを意識して業界内での存在感をアピールしようとしたり、短期的な収支を考えたりという理由で焦ってもいいこと無いですね。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-8485506953060042975?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/8485506953060042975/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/05/mysql.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8485506953060042975'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8485506953060042975'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/05/mysql.html' title='MySQL、新機能のクローズトソース化の決定を撤回'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-8453159570033619232</id><published>2008-04-30T12:32:00.013+09:00</published><updated>2008-05-12T22:28:28.389+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google App Engine'/><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='Python'/><title type='text'>Google App Engine で Web アプリケーション ～ その2</title><content type='html'>Google App Engine は、Django というフレームワークがデフォルトで利用できます。この Django には強力なテンプレートエンジンが含まれています。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://techjudith.blogspot.com/2008/04/google-app-engine-web-1.html"&gt;前回&lt;/a&gt;までのような方法で画面を出力するのは少々骨が折れますが、Django のテンプレートエンジンを使うと HTML ベースの画面を作りやすくなります。&lt;br /&gt;&lt;br /&gt;Javaで言うところの、Velocity や FreeMarker のようなモノですね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;というわけで、今回はこれを利用してみました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;strong&gt;テンプレートとなるファイルを作成する&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;拡張子は .html で OK です。&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;&amp;lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"&amp;gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;lt;meta http-equiv="Content-Type" content="text/html; charset=UTF-8"&amp;gt;&lt;br /&gt;&amp;lt;title&amp;gt;ようこそ&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;center&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;br /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;h3&amp;gt;ようこそ！&lt;span style="font-weight: bold;"&gt;{{username}}&lt;/span&gt;さん！&amp;lt;/h3&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;a href="/index.html"&amp;gt;戻る&amp;lt;/a&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/center&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Django テンプレートでは、動的に値を埋め込みたい箇所は、{{...}} で囲み、括弧の中に変数名を記述しておきます。オブジェクトの属性にアクセスするには、user.username のように、. (ドット) で区切ってネストを指定します。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;strong&gt;テンプレート出力処理を行うには&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;こんな風に書きます。&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;# テンプレートを取得&lt;br /&gt;templatefile = os.path.join(os.path.dirname(__file__), 'テンプレートファイル名')&lt;br /&gt;# パース・コンパイル・出力処理&lt;br /&gt;self.response.out.write(&lt;br /&gt;&amp;nbsp;&amp;nbsp;template.render(templatefile, {'変数名':オブジェクト}))&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;template.render() メソッドの引数には、出力したいオブジェクトと、そのオブジェクトの変数名を連想配列の形式で記述します。複数指定したい場合は&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;template.render(templatefile, {'変数名1':オブジェクト1, '変数名2':オブジェクト2, '変数名3':オブジェクト3}))&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;のように書きます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;というわけで、&lt;a href="http://techjudith.blogspot.com/2008/04/google-app-engine-web-1.html"&gt;前回&lt;/a&gt;のアプリケーションを、Django テンプレートを使ったものに書き換えてみると、こうなります。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);"&gt;&lt;em&gt;[index.html]&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;&amp;lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"&amp;gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;lt;meta http-equiv="Content-Type" content="text/html; charset=UTF-8"&amp;gt;&lt;br /&gt;&amp;lt;title&amp;gt;ようこそ！&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;form action="welcome" method="post"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;center&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;br /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;h3&amp;gt;お名前は？&amp;lt;/h3&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;input type="text" name="username" size="30" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;input type="submit" value="送信" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/center&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/form&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://techjudith.blogspot.com/2008/04/google-app-engine-web-1.html"&gt;前回&lt;/a&gt;と同一です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);"&gt;&lt;em&gt;[WelcomeRequestHandler.py]&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;# coding: UTF-8&lt;br /&gt;&lt;br /&gt;import os&lt;br /&gt;import wsgiref.handlers&lt;br /&gt;&lt;br /&gt;from google.appengine.ext import webapp&lt;br /&gt;from google.appengine.ext.webapp import template&lt;br /&gt;&lt;br /&gt;# webappのインポート&lt;br /&gt;from google.appengine.ext import webapp&lt;br /&gt;&lt;br /&gt;class WelcomeRequestHandler(webapp.RequestHandler):&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;# HTTP post リクエスト処理&lt;br /&gt;&amp;nbsp;&amp;nbsp;def post(self):&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# リクエストパラメータ "username" の取得&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;userName = self.request.get("username")&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# テンプレートファイルを取得&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;templatefile = os.path.join(os.path.dirname(__file__), 'welcome.html')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# パース・コンパイル・出力処理&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;template.render(templatefile, {'username':userName.encode('UTF-8')}))&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;def main():&lt;br /&gt;&amp;nbsp;&amp;nbsp;# リクエスト URL パターンと、実行するクラスの関連づけ&lt;br /&gt;&amp;nbsp;&amp;nbsp;application = webapp.WSGIApplication([('/welcome', WelcomeRequestHandler)],&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; debug=True)&lt;br /&gt;&amp;nbsp;&amp;nbsp;wsgiref.handlers.CGIHandler().run(application)&lt;br /&gt;&lt;br /&gt;# アプリケーション起動時に main() 関数が実行されるようにする&lt;br /&gt;if __name__ == "__main__":&lt;br /&gt;&amp;nbsp;&amp;nbsp;main()&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://techjudith.blogspot.com/2008/04/google-app-engine-web-1.html"&gt;前回&lt;/a&gt;は、HTML タグなどを直接出力していましたが、今回はテンプレートを利用してレスポンス出力を行っています。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);"&gt;&lt;em&gt;[welcome.html]&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;&amp;lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"&amp;gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;lt;meta http-equiv="Content-Type" content="text/html; charset=UTF-8"&amp;gt;&lt;br /&gt;&amp;lt;title&amp;gt;ようこそ&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;center&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;br /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;h3&amp;gt;ようこそ！&lt;span style="font-weight: bold;"&gt;{{username}}&lt;/span&gt;さん！&amp;lt;/h3&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;a href="/index.html"&amp;gt;戻る&amp;lt;/a&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/center&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;「ようこそ！{{username}}さん！」の箇所に注目です。WelcomeRequestHandler.py で、リクエストパラメータから取得した値を "username" という名前でテンプレートオブジェクトとして指定しました。この welcome.html では、その "username" という名前の変数の値を出力しています。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);"&gt;&lt;em&gt;[app.yaml]&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;application: liebejudith-helloworld&lt;br /&gt;version: 1&lt;br /&gt;runtime: python&lt;br /&gt;api_version: 1&lt;br /&gt;&lt;br /&gt;handlers:&lt;br /&gt;-&amp;nbsp;url:&amp;nbsp;/welcome&lt;br /&gt;&amp;nbsp;&amp;nbsp;script: WelcomeRequestHandler.py&lt;br /&gt;-&amp;nbsp;url:&amp;nbsp;/index\.html&lt;br /&gt;&amp;nbsp;&amp;nbsp;static_files: index.html&lt;br /&gt;&amp;nbsp;&amp;nbsp;upload: index.html&lt;br /&gt;-&amp;nbsp;url:&amp;nbsp;/&lt;br /&gt;&amp;nbsp;&amp;nbsp;static_files: index.html&lt;br /&gt;&amp;nbsp;&amp;nbsp;upload: index.html&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://techjudith.blogspot.com/2008/04/google-app-engine-web-1.html"&gt;前回&lt;/a&gt;と同一です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);"&gt;&lt;em&gt;実行結果&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5192073197191460690" alt="" src="http://4.bp.blogspot.com/_qRW47nLTz-8/SA3zEGZsd1I/AAAAAAAACYc/tVn6ZC7hsLk/s320/01_indexhtml.jpg" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5192073201486428002" alt="" src="http://1.bp.blogspot.com/_qRW47nLTz-8/SA3zEWZsd2I/AAAAAAAACYk/A9Bh1uK17PU/s320/02_welcomepge.jpg" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;実行結果も&lt;a href="http://techjudith.blogspot.com/2008/04/google-app-engine-web-1.html"&gt;前回&lt;/a&gt;と同一です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;strong&gt;HTML センシティブな文字・記号のエスケープについて&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Webアプリケーションでは、正しい表示やクロスサイトスクリプティング対策のために、&amp;lt; や、&amp;gt; など、HTML や JavaScript コードとして認識されてしまう文字をエスケープする必要があります。&lt;br /&gt;現在のバージョンの Django では、デフォルトでエスケープが有効になっています。もし何らかの理由でエスケープ処理を無効にしたい場合は、&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;こんにちは {{ username|safe }} さん&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;のように、safeフィルタを利用します。&lt;br /&gt;あるいは、&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;{% autoescape off %}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;こんにちは {{ username }} さん&lt;br /&gt;{% endautoescape %}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;のように、autoescape タグを使って、off オプションを指定します。Django テンプレートでは、タグの表記に {% ... %} を使います。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;strong&gt;ループ処理を行うには&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;for タグを使います。Velocity や FreeMarker を使ったことのある方なら直感的におわかりでしょう。&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;{% for 要素 in リスト %}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;・・・・&lt;br /&gt;{% endfor %}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;ループの中では、次の変数を利用できます。&lt;br /&gt;&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="datatable" nowrap="nowrap"&gt;forloop.counter&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;ループカウンタ(1から開始)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="datatable" nowrap="nowrap"&gt;forloop.counter0&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;ループカウンタ(0から開始)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="datatable" nowrap="nowrap"&gt;forloop.revcounter&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;ループの終わりからのインデックス(1から開始)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="datatable" nowrap="nowrap"&gt;forloop.revcounter0&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;ループの終わりからのインデックス(0から開始)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="datatable" nowrap="nowrap"&gt;forloop.first&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;ループの最初の繰り返しの場合、True になる&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="datatable" nowrap="nowrap"&gt;forloop.last&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;ループの最後の繰り返しの場合、True になる&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;strong&gt;条件分岐を行うには&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;if タグあるいは ifequal/ifnotequal タグを使います。&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;if タグを使った評価&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;指定した変数が存在するか・空ではないか（リストの場合）・Trueかを評価します。&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;{% if name_list %}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;・・・・&lt;br /&gt;{% else %}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;・・・・&lt;br /&gt;{% endif %}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;or not and を使って複合的な評価も可能です。&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;{% if name_list or order_list %}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;・・・・&lt;br /&gt;{% endif %}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;{% if not name_list %}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;・・・・&lt;br /&gt;{% else %}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;・・・・&lt;br /&gt;{% endif %}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;{% if name_list and order_list %}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;・・・・&lt;br /&gt;{% endif %}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;{% if name_list and not order_list %}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;・・・・&lt;br /&gt;{% endif %}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;ifequal/ifnotequal タグを使った評価&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;2つの値が同一かどうかを比較します。&lt;br /&gt;ifnotequal は同一でないかどうかを比較します。&lt;br /&gt;2つの値はスペース区切りで指定します。&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;{% ifequal user.id comment.user_id %}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;...&lt;br /&gt;{% endifequal %}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;{% ifnotequal user.username "liebejudith" %}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;...&lt;br /&gt;{% endifequal %}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;strong&gt;画面部品をインクルードするには&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;include タグを使います。&lt;br /&gt;ファイル名は、文字列リテラルで直接指定することもできますし、変数を使っての動的指定も可能です。&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;{% include "foo/bar.html" %}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;{% include template_name %}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;strong&gt;コメントを記述するには&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;{# ... #} で囲みます。&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;{# comment #}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;strong&gt;テンプレートの継承&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Django では、テンプレートを継承することができます。この機能は、同一レイアウト、同一部品を使った似たデザインの画面が多数存在する場合に非常に便利です。&lt;br /&gt;子テンプレートでオーバーライドする部分は、{% block ブロック名 %} ～ {% endblock %} で囲んで記述しておきます。ブロック名はユニークな任意の名前です。&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;title&amp;gt;{% block title %}タイトル{% endblock %}&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;div id="content"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{% block content %}{% endblock %}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;あるテンプレートを継承したテンプレートを作成するには、{% extends "親テンプレート名" %} を記述します。そして、親で定義された {% block ブロック名 %} ～ {% endblock %} を任意にオーバーライドできます。&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;{% extends "base.html" %}&lt;br /&gt;&lt;br /&gt;{% block title %}子ページ{% endblock %}&lt;br /&gt;&lt;br /&gt;{% block content %}&lt;br /&gt;content 部分のオーバーライド&lt;br /&gt;{% endblock %}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;変数値の出力、条件分岐、ループ処理、インクルード、テンプレートの継承と見てきました。これでたいていの画面は作成できるのではないでしょうか？&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Django の翻訳ドキュメントも見つけました。Yasushi Masuda さん、Takanao Endoh さんという方が翻訳されています。&lt;br /&gt;&lt;br /&gt;Django&lt;br /&gt;&lt;a href="http://ymasuda.jp/python/django/index.html" target="_blank"&gt;http://ymasuda.jp/python/django/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Django オンラインドキュメント和訳&lt;br /&gt;&lt;a href="http://michilu.com/django/doc-ja/index/" target="_blank"&gt;http://michilu.com/django/doc-ja/index/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Django は、テンプレートエンジンだけでなくアプリケーション全体をカバーするフルスタックのフレームワークです。今回取り上げたテンプレートのリファレンスはこちらです。&lt;br /&gt;&lt;br /&gt;テンプレート作者のための Django テンプレート言語ガイド&lt;br /&gt;&lt;a href="http://michilu.com/django/doc-ja/templates/%20target=" _blank=""&gt;http://michilu.com/django/doc-ja/templates/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Django のユーザコミュニティも存在するようですが、残念ながら現在はサーバが止まっているようです・・・&lt;br /&gt;&lt;a href="http://djangoproject.jp/" target="_blank"&gt;http://djangoproject.jp/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;small&gt;私は Python 初心者のため、定石もお作法も知りません。バリバリの Python 使いの方から見たらとんでもないコードを書いているかもしれませんがご容赦下さい。間違いや「こうするもんだ」を指摘していただけるととても嬉しいです。&lt;/small&gt;&lt;br /&gt;&lt;br /&gt;環境: Python 2.5&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-8453159570033619232?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/8453159570033619232/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/04/google-app-engine-web-2.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8453159570033619232'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8453159570033619232'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/04/google-app-engine-web-2.html' title='Google App Engine で Web アプリケーション ～ その2'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_qRW47nLTz-8/SA3zEGZsd1I/AAAAAAAACYc/tVn6ZC7hsLk/s72-c/01_indexhtml.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-157934637586476979</id><published>2008-04-26T00:40:00.003+09:00</published><updated>2008-05-12T22:28:21.661+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><title type='text'>Ubuntu祭り</title><content type='html'>&lt;a href="http://www.ubuntu.com/getubuntu/download" target="_blank"&gt;Ubuntu 8.04 LTS がリリース&lt;/a&gt;されましたね。&lt;br /&gt;2年に1度のLTSとあって、この日を待っていた人は世界中にいるのではないでしょうか。&lt;br /&gt;&lt;br /&gt;そんなわけで、今日の午前中に同僚がダウンロードを始めたのですが・・・&lt;br /&gt;&lt;br /&gt;やはりというか、激重でした。&lt;br /&gt;&lt;br /&gt;どこからダウンロードしているのか聴いたら、台湾のミラーだそうで。&lt;br /&gt;&lt;br /&gt;通常、ミラーサイトはできるだけ近い場所を選ぶのが基本なのですが・・・&lt;br /&gt;&lt;br /&gt;私はイタリアからダウンロードしてみました。&lt;br /&gt;&lt;br /&gt;時差の関係でヨーロッパはまだ深夜です。&lt;br /&gt;几帳面なドイツ人などは、深夜でも待ちかまえてダウンロードしそうですが、&lt;br /&gt;イタリア人ならそこまでする人も少なそうだ・・・（イタリアの方、ゴメンナサイ）&lt;br /&gt;と推測してみました。&lt;br /&gt;&lt;br /&gt;思った通り！&lt;br /&gt;&lt;br /&gt;台湾よりイタリアのサーバの方が軽いという結果でした（笑）&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;G.W.にいろいろいじりながらゆっくりインストールしてみるとします。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-157934637586476979?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/157934637586476979/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/04/ubuntu.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/157934637586476979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/157934637586476979'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/04/ubuntu.html' title='Ubuntu祭り'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-7093505955432950407</id><published>2008-04-22T23:15:00.022+09:00</published><updated>2008-05-12T22:28:16.042+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google App Engine'/><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='Python'/><title type='text'>Google App Engine で Web アプリケーション ～ その1</title><content type='html'>Google App Engine には webapp という、Webアプリケーションのためのシンプルなフレームワークが用意されています。&lt;br /&gt;&lt;a href="http://techjudith.blogspot.com/2008/04/google-app-engine.html"&gt;前回はとりあえず Hello World まで行った&lt;/a&gt;ので、次はこの webapp フレームワークを使ってリクエストパラメータを受け取り、それを表示するアプリケーションを作ってみました。&lt;br /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5192073197191460690" alt="" src="http://4.bp.blogspot.com/_qRW47nLTz-8/SA3zEGZsd1I/AAAAAAAACYc/tVn6ZC7hsLk/s320/01_indexhtml.jpg" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5192073201486428002" alt="" src="http://1.bp.blogspot.com/_qRW47nLTz-8/SA3zEWZsd2I/AAAAAAAACYk/A9Bh1uK17PU/s320/02_welcomepge.jpg" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;small&gt;私は Python 初心者のため、定石もお作法も知りません。バリバリの Python 使いの方から見たらとんでもないコードを書いているかもしれませんがご容赦下さい。間違いや「こうするもんだ」を指摘していただけるととても嬉しいです。&lt;/small&gt;&lt;br /&gt;&lt;br /&gt;環境: Python 2.5&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;strong&gt;ソースコードを UTF-8 で書くには&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;ソースコードの1行目または2行目に&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;# coding: UTF-8&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;と書きます。&lt;br /&gt;&lt;br /&gt;こうしないと、文字列リテラルの前には u&amp;#39;こんにちは&amp;#39; のように、毎回 u をつけないといけなくなってしまいます。それはあまりに面倒です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;HTTP post リクエストを受けるには &lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;webapp.RequestHandler を継承したクラスを定義し、post() メソッドを定義します。&lt;br /&gt;&lt;br /&gt;(例)&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;class WelcomeRequestHandler(webapp.RequestHandler):&lt;br /&gt;&amp;nbsp;&amp;nbsp;def&amp;nbsp;post(self):&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;HTTP get リクエストを受けるには、post() ではなく get() メソッドを使えば OK です。使い方は post() と全く同一です。他にも、Restful なアプリケーション構築のために put() delete() head() trace() options() が用意されています。&lt;br /&gt;&lt;br /&gt;　&lt;small&gt;※ Python って、メソッド？関数？どう呼ぶんでしょう？&lt;/small&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;リクエストパラメータ値を取得するには&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;RequestHandler オブジェクトに用意されている属性 request の get() メソッドを利用します。引数にはリクエストパラメータ名を指定します。&lt;br /&gt;&lt;br /&gt;(例)&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;userName&amp;nbsp;=&amp;nbsp;self.request.get(&amp;#39;username&amp;#39;)&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;これは、&amp;quot;username&amp;quot; という名前のリクエストパラメータ値を取り出し、変数 &amp;quot;userName&amp;quot; に入れておく、という処理になります。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;リクエストパラメータが来なかった場合のデフォルト値を同時に指定することができます。&lt;br /&gt;&lt;br /&gt;(例)&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;userName&amp;nbsp;=&amp;nbsp;self.request.get(&amp;#39;username&amp;#39;, default_value="anonymous")&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;上記の場合、リクエストパラメータ"username"が来なかった場合は変数"userName"の値が"anonymous"になります。&lt;br /&gt;&lt;br /&gt;同名のリクエストパラメータが複数来る場合は&lt;br /&gt;&lt;br /&gt;(例)&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;userNames&amp;nbsp;=&amp;nbsp;self.request.get(&amp;#39;username&amp;#39;, default_allow_multiple=True)&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;この場合、変数 userNames は配列になります。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;レスポンスを出力するには&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;こう書きます（＾＾；&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;self.response.out.write(&amp;#39;出力したい文字列&amp;#39;)&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;変数の値を出力するには&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;こう書きます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;self.response.out.write(変数名.encode(&amp;#39;文字エンコーディング名&amp;#39;))&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;これ、ハマりました。self.response.out.write(変数名) とするだけでは、実行時に UnicodeDecodeError とエラーになります。Python を使い慣れている方なら何でもないことなのでしょうけど・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;リクエスト URL パターンと、実行するクラスを関連づけるには&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;こう書きます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;def&amp;nbsp;main():&lt;br /&gt;&amp;nbsp;&amp;nbsp;application&amp;nbsp;=&amp;nbsp;webapp.WSGIApplication([(&amp;#39;URLパターン&amp;#39;,&amp;nbsp;クラス名)],&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;debug=True)&lt;br /&gt;&amp;nbsp;&amp;nbsp;wsgiref.handlers.CGIHandler().run(application)&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;アプリケーションが起動したら main() 関数が呼ばれるようにするには&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;こう書きます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;if&amp;nbsp;__name__&amp;nbsp;==&amp;nbsp;&amp;quot;__main__&amp;quot;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;main()&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;ある URL にリダイレクトするには&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;redirect() メソッドを使います。&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;self.redirect('http://www.google.co.jp/', False)&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;2番目の引数に True を指定すると、HTTP Status 301 での Redirect になります。False を指定した場合は HTTP Status 302 での Redirect を行います。&lt;br /&gt;&lt;br /&gt;　&lt;small&gt;※Python の True/False って、大文字からはじめるんですね・・・&lt;/small&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;例外発生時の処理を記述するには&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;RequestHandler クラスの handle_exception() メソッドを使うらしいのですが、使い方がよくわかりません・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;以下、全ソースコード。&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#999999;"&gt;&lt;em&gt;[index.html]&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;&amp;lt;!DOCTYPE&amp;nbsp;HTML&amp;nbsp;PUBLIC&amp;nbsp;&amp;quot;-//W3C//DTD&amp;nbsp;HTML&amp;nbsp;4.01&amp;nbsp;Transitional//EN&amp;quot;&amp;gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;lt;meta&amp;nbsp;http-equiv=&amp;quot;Content-Type&amp;quot;&amp;nbsp;content=&amp;quot;text/html;&amp;nbsp;charset=UTF-8&amp;quot;&amp;gt;&lt;br /&gt;&amp;lt;title&amp;gt;ようこそ！&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;form&amp;nbsp;action=&amp;quot;welcome&amp;quot;&amp;nbsp;method=&amp;quot;post&amp;quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;center&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;br&amp;nbsp;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;h3&amp;gt;お名前は？&amp;lt;/h3&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;input&amp;nbsp;type=&amp;quot;text&amp;quot;&amp;nbsp;name=&amp;quot;username&amp;quot;&amp;nbsp;size=&amp;quot;30&amp;quot;&amp;nbsp;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;br&amp;nbsp;/&amp;gt;&amp;lt;br&amp;nbsp;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;input&amp;nbsp;type=&amp;quot;submit&amp;quot;&amp;nbsp;value=&amp;quot;送信&amp;quot;&amp;nbsp;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/center&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/form&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;テキストボックスとsubmitボタンが一つずつあるだけのシンプルなフォームを実装した単純な HTML です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="color:#666666;"&gt;[WelcomeRequestHandler.py]&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;#&amp;nbsp;coding:&amp;nbsp;UTF-8&lt;br /&gt;&lt;br /&gt;import&amp;nbsp;wsgiref.handlers&lt;br /&gt;&lt;br /&gt;#&amp;nbsp;webappのインポート&lt;br /&gt;from&amp;nbsp;google.appengine.ext&amp;nbsp;import&amp;nbsp;webapp&lt;br /&gt;&lt;br /&gt;class&amp;nbsp;WelcomeRequestHandler(webapp.RequestHandler):&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;#&amp;nbsp;HTTP&amp;nbsp;post&amp;nbsp;リクエスト処理&lt;br /&gt;&amp;nbsp;&amp;nbsp;def&amp;nbsp;post(self):&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#&amp;nbsp;リクエストパラメータ&amp;nbsp;&amp;quot;username&amp;quot;&amp;nbsp;の取得&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;userName&amp;nbsp;=&amp;nbsp;self.request.get(&amp;quot;username&amp;quot;)&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#&amp;nbsp;レスポンス出力&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&amp;#39;&amp;lt;!DOCTYPE&amp;nbsp;HTML&amp;nbsp;PUBLIC&amp;nbsp;&amp;quot;-//W3C//DTD&amp;nbsp;HTML&amp;nbsp;4.01&amp;nbsp;Transitional//EN&amp;quot;&amp;gt;&amp;#39;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&amp;#39;&amp;lt;html&amp;gt;&amp;#39;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&amp;#39;&amp;lt;head&amp;gt;&amp;#39;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&amp;#39;&amp;lt;meta&amp;nbsp;http-equiv=&amp;quot;Content-Type&amp;quot;&amp;nbsp;content=&amp;quot;text/html;&amp;nbsp;charset=UTF-8&amp;quot;&amp;gt;&amp;#39;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&amp;#39;&amp;lt;title&amp;gt;ようこそ&amp;lt;/title&amp;gt;&amp;#39;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&amp;#39;&amp;lt;/head&amp;gt;&amp;#39;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&amp;#39;&amp;lt;body&amp;gt;&amp;#39;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&amp;#39;&amp;nbsp;&amp;nbsp;&amp;lt;center&amp;gt;&amp;#39;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&amp;#39;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;br&amp;nbsp;/&amp;gt;&amp;#39;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&amp;#39;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;h3&amp;gt;ようこそ！&amp;#39;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#&amp;nbsp;変数値を出力する際には&amp;nbsp;encode()&amp;nbsp;関数で処理する必要がある&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(userName.encode(&amp;#39;UTF-8&amp;#39;))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&amp;#39;さん！&amp;lt;/h3&amp;gt;&amp;#39;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&amp;#39;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;br&amp;nbsp;/&amp;gt;&amp;lt;br&amp;nbsp;/&amp;gt;&amp;#39;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&amp;#39;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;a&amp;nbsp;href=&amp;quot;index.html&amp;quot;&amp;gt;戻る&amp;lt;/a&amp;gt;&amp;#39;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&amp;#39;&amp;nbsp;&amp;nbsp;&amp;lt;/center&amp;gt;&amp;#39;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&amp;#39;&amp;lt;/body&amp;gt;&amp;#39;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.response.out.write(&amp;#39;&amp;lt;/html&amp;gt;&amp;#39;)&lt;br /&gt;&lt;br /&gt;def&amp;nbsp;main():&lt;br /&gt;&amp;nbsp;&amp;nbsp;#&amp;nbsp;リクエスト&amp;nbsp;URL&amp;nbsp;パターンと、実行するクラスの関連づけ&lt;br /&gt;&amp;nbsp;&amp;nbsp;application&amp;nbsp;=&amp;nbsp;webapp.WSGIApplication([(&amp;#39;/welcome&amp;#39;,&amp;nbsp;WelcomeRequestHandler)],&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;debug=True)&lt;br /&gt;&amp;nbsp;&amp;nbsp;wsgiref.handlers.CGIHandler().run(application)&lt;br /&gt;&lt;br /&gt;#&amp;nbsp;アプリケーション起動時に&amp;nbsp;main()&amp;nbsp;関数が実行されるようにする&lt;br /&gt;if&amp;nbsp;__name__&amp;nbsp;==&amp;nbsp;&amp;quot;__main__&amp;quot;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;main()&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;リクエストパラメータを受け取り、その値を使って「ようこそ！○○さん！」と出力するスクリプト。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="color:#666666;"&gt;[app.yaml]&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;application:&amp;nbsp;liebejudith-helloworld&lt;br /&gt;version:&amp;nbsp;1&lt;br /&gt;runtime:&amp;nbsp;python&lt;br /&gt;api_version:&amp;nbsp;1&lt;br /&gt;&lt;br /&gt;handlers:&lt;br /&gt;-&amp;nbsp;url:&amp;nbsp;/welcome&lt;br /&gt;&amp;nbsp;&amp;nbsp;script:&amp;nbsp;WelcomeRequestHandler.py&lt;br /&gt;-&amp;nbsp;url:&amp;nbsp;/index\.html&lt;br /&gt;&amp;nbsp;&amp;nbsp;static_files:&amp;nbsp;index.html&lt;br /&gt;&amp;nbsp;&amp;nbsp;upload:&amp;nbsp;index.html&lt;br /&gt;-&amp;nbsp;url:&amp;nbsp;/&lt;br /&gt;&amp;nbsp;&amp;nbsp;static_files:&amp;nbsp;index.html&lt;br /&gt;&amp;nbsp;&amp;nbsp;upload:&amp;nbsp;index.html&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;/ あるいは /index.html が要求された場合は index.html を返し、/welcome が要求された場合は WelcomeRequestHandler.py が実行されるように設定しています。&lt;br /&gt;app.yaml では、リクエスト URL パターンの関連づけを行いますが、.py スクリプトとの関連づけは、前回の Hello World で出てきました。&lt;br /&gt;URL パターンと静的ファイルを関連づける場合は、static_files: エントリでファイル名を指定し、同時にサーバへアップロードするファイルを相対パスまたは絶対パスで指定します。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://techjudith.blogspot.com/2008/04/google-app-engine.html"&gt;前回、「次回は掲示板でも・・・」なんて書きました&lt;/a&gt;が、いきなり掲示板なんてとんでもなかったです。文字エンコーディングごときで大ハマリするぐらいですから。もっと少しずつ進めていきたいと思います。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-7093505955432950407?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/7093505955432950407/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/04/google-app-engine-web-1.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/7093505955432950407'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/7093505955432950407'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/04/google-app-engine-web-1.html' title='Google App Engine で Web アプリケーション ～ その1'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_qRW47nLTz-8/SA3zEGZsd1I/AAAAAAAACYc/tVn6ZC7hsLk/s72-c/01_indexhtml.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-4889562015115201591</id><published>2008-04-18T22:46:00.008+09:00</published><updated>2008-05-12T22:28:07.726+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Sun'/><title type='text'>MySQL、新機能追加は有償版の「MySQL Enterprise」だけを対象に</title><content type='html'>MySQL、新機能追加は有償版の「MySQL Enterprise」だけを対象に&lt;br /&gt;&lt;a href="http://www.technobahn.com/news/2008/200804172000.html" target="_blank"&gt;http://www.technobahn.com/news/2008/200804172000.html&lt;/a&gt;&lt;br /&gt;「MySQLは16日、米カリフォルニア州サンタクララで開催中のMySQLコンファレンスの席上で今後の新機能追加は有償版の「MySQL Enterprise」だけを対象としていく方針を明らかにした。」&lt;br /&gt;「無償版の「MySQL Community Server」の提供は今後も継続されるが、無償版と有償版の開発は完全に切り離されることとなり、無償版と有償版の2つのMySQLはまったく別々の進化を遂げることとなる見通しだ。」&lt;br /&gt;&lt;br /&gt;　※technobahn のサイトが落ちているようなので、&lt;a href="http://209.85.175.104/search?q=cache:cP79WuimacUJ:www.technobahn.com/news/2008/200804172000.html+MySQL%E3%80%81%E6%96%B0%E6%A9%9F%E8%83%BD%E8%BF%BD%E5%8A%A0%E3%81%AF%E6%9C%89%E5%84%9F%E7%89%88%E3%81%AE%E3%80%8CMySQL+Enterprise%E3%80%8D%E3%81%A0%E3%81%91%E3%82%92%E5%AF%BE%E8%B1%A1%E3%81%AB&amp;hl=ja&amp;ct=clnk&amp;cd=1&amp;gl=jp" target="_blank"&gt;Google のキャッシュ&lt;/a&gt;をご利用下さい。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Sun Microsystems の恐るべき愚行と言えます。&lt;br /&gt;このニュースは、いったいどれだけの OSS 支持者を失望させ、どれだけの OSS 支持者の反感を買うのでしょうか？&lt;br /&gt;&lt;br /&gt;今日六本木ミッドタウンで行われていた &lt;a href="http://jp.sun.com/next/" target="_blank"&gt;Sun Business .Next 2008&lt;/a&gt; や G.W.明けの S.F.で行われる &lt;a href="http://java.sun.com/javaone/sf/index.jsp" target="_blank"&gt;JavaOne 2008&lt;/a&gt; で、オープンソース団体による抗議デモが行われても不思議ではないぐらいです。&lt;br /&gt;&lt;br /&gt;今回発表されたこの方針に変更が無い限り、MySQL を離れるユーザは増加の一途をたどることでしょう。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;こうだったはずなのに・・・&lt;br /&gt;&lt;br /&gt;&lt;a href="http://japan.cnet.com/news/ent/story/0,2000056022,20371630,00.htm" target="_blank"&gt;http://japan.cnet.com/news/ent/story/0,2000056022,20371630,00.htm&lt;/a&gt;&lt;br /&gt;「Sunは、次バージョンMySQLの「ファイナルに近い」ビルドを公開するとともに、1月に10億ドルで買収した同オープンソースデータベース企業の文化を変更しないことを約束した。」&lt;br /&gt;&lt;br /&gt;&lt;a href="http://japan.cnet.com/news/ent/story/0,2000056022,20371536,00.htm" target="_blank"&gt;http://japan.cnet.com/news/ent/story/0,2000056022,20371536,00.htm&lt;/a&gt;&lt;br /&gt;「Sun MicrosystemsがMySQLを10億ドルで買収した際に浮上した最大の問題は、両社の明白な文化的衝突だろう。長年、クローズドソース企業としてやってきたSunがオープンソース企業のMySQLを買収したことで、オープンソースコミュニティーの一部から、今後の成り行きを懸念する声が上がった。しかし、Sunは米国時間4月15日、買収をめぐるあらゆる疑問を払拭すべく、1月に買収が完了して以来、初となる大規模なMySQL開発者向けの集会MySQL Conference &amp; Expoで、両社の相思相愛ぶりを演出した。」&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-4889562015115201591?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/4889562015115201591/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/04/mysqlmysql-enterprise.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/4889562015115201591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/4889562015115201591'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/04/mysqlmysql-enterprise.html' title='MySQL、新機能追加は有償版の「MySQL Enterprise」だけを対象に'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-7447926331176751296</id><published>2008-04-18T21:30:00.009+09:00</published><updated>2008-05-12T22:28:02.429+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><title type='text'>GoogleAppsとSalesForcecomの提携</title><content type='html'>日本国内でも発表されましたね。&lt;br /&gt;&lt;br /&gt;Salesforce for Google Apps&lt;br /&gt;&lt;a href="http://www.salesforce.com/jp/googleapps/?d=70130000000Dsim" target="_blank"&gt;http://www.salesforce.com/jp/googleapps/?d=70130000000Dsim&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;プレスリリース&lt;br /&gt;&lt;a href="http://www.salesforce.com/jp/company/news-press/press-releases/2008/04/080417.jsp" target="_blank"&gt;http://www.salesforce.com/jp/company/news-press/press-releases/2008/04/080417.jsp&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SalesForce.com は来週に国内イベントを控えていることもあり、米国から幹部が来日して日本でも記者会見が行われました。&lt;br /&gt;&lt;br /&gt;「Salesforce＋Google Apps」の統合、日本で初のデモ (@IT)&lt;br /&gt;&lt;a href="http://www.atmarkit.co.jp/news/200804/17/sf.html" target="_blank"&gt;http://www.atmarkit.co.jp/news/200804/17/sf.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;グーグルとセールスフォースが提携--その狙いと勝算 (CNET Japan)&lt;br /&gt;&lt;a href="http://japan.cnet.com/column/pers/story/0,2000055923,20371533,00.htm" target="_blank"&gt;http://japan.cnet.com/column/pers/story/0,2000055923,20371533,00.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;「グーグルと“ソフトの終焉”に寄与」(ITpro)&lt;br /&gt;&lt;a href="http://itpro.nikkeibp.co.jp/article/NEWS/20080417/299412/" target="_blank"&gt;http://itpro.nikkeibp.co.jp/article/NEWS/20080417/299412/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;「グーグルと我々は同じビジョンを共有している。それはソフトウエアの終焉をもたらしたいということだ」は、&lt;br /&gt;正直に「グーグルと我々は同じビジョンを共有している。それはMSの終焉をもたらしたいということだ」と言えばいいのに（笑）&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;大本営発表では「『ソフトウェアの終焉』が始まった」「ユーザーのSAP、オラクル、マイクロソフトへの依存が終わる」等、なかなか刺激的な言葉が並んでいますが・・・&lt;br /&gt;&lt;br /&gt;今回の提携が Google Apps のシェアを一気に伸ばしたり、SaaS というサービス形態が一気に認知され普及するほどのインパクトを持つとは考えにくいです。&lt;br /&gt;現実には既存の SalesForce ユーザの一部が恩恵を受けるのと、SaaS CRM 製品の導入を検討している新規のユーザにとって、SalesForce.com と競合する他社の Saas CRM 製品に対して多少のアドバンテージができる程度のものでしょう。今回の提携によって実現する機能は SalesForce を利用しないユーザにとって全く関係ありませんし、SalesForce を利用するユーザでもメールやオフィス等を Google Apps へ移行しないとメリットがありませんから。&lt;br /&gt;&lt;br /&gt;とはいえ今回の提携は、SaaS アプリケーションのマッシュアップという、1つの事例を作ったと言えるでしょう。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;「GoogleとSalesforceの提携は長続きしない」ZohoのCEOがコメント (INTERNET WATCH)&lt;br /&gt;&lt;a href="http://internet.watch.impress.co.jp/cda/news/2008/04/15/19219.html" target="_blank"&gt;http://internet.watch.impress.co.jp/cda/news/2008/04/15/19219.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;まあ、これはライバル企業の発言なのでそれを勘案しておく必要がありますが・・・（＾＾；&lt;br /&gt;Zoho としては何かコメントをしないで指をくわえているだけというワケにはいかない・・・という理由だけで出てきたコメントでしょう。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;刺激的な言葉で満たされた大本営発表に、対抗しなければならないという理由だけで出てくるライバル企業のポーズ的な発言。&lt;br /&gt;こういったやり方はとてもアメリカ的で、日本文化とは異質なモノを感じざるを得ません。日本の市場にしっかり根を下ろしたいのなら、それなりのマーケティング/プロモーションをしないと外資系ベンダの日本でのシェア拡大は難しいかもしれませんね。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-7447926331176751296?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/7447926331176751296/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/04/googleappssalesforcecom.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/7447926331176751296'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/7447926331176751296'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/04/googleappssalesforcecom.html' title='GoogleAppsとSalesForcecomの提携'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-4636987338649290550</id><published>2008-04-14T00:55:00.003+09:00</published><updated>2008-05-12T22:27:56.997+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><title type='text'>iGoogle Art Cafe へ行ってきました</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_qRW47nLTz-8/SAIpxCSPBxI/AAAAAAAACP4/-WRWoc1eB7s/s1600-h/IMG_7242.jpg" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_qRW47nLTz-8/SAIpxCSPBxI/AAAAAAAACP4/-WRWoc1eB7s/s320/IMG_7242.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5188755643087914770" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;六本木ヒルズにて昨日から、4/24まで13日間限定オープンの iGoogle Art Cafe&lt;br /&gt;&lt;br /&gt;&lt;a href="http://googlejapan.blogspot.com/2008/04/igoogle-art-cafe_12.html" style="text-decoration: underline; font-weight: bold;" target="_blank"&gt;iGoogle Art Cafe が期間限定で六本木ヒルズにオープン!&lt;/a&gt;&lt;br /&gt;&lt;a href="http://googlejapan.blogspot.com/2008/04/igoogle-art-cafe_12.html" style="text-decoration: underline; font-weight: bold;" target="_blank"&gt;http://googlejapan.blogspot.com/2008/04/igoogle-art-cafe_12.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;早速行ってみました。&lt;br /&gt;&lt;br /&gt;最近、Google のパーソナライズドホームページである iGoogle が、Airside、リリー・フランキー、日比野 克彦、隈 研吾、手塚プロダクション等国内のグラフィックデザイナーとのコラボレーションで各種テーマをリリースしていました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.google.co.jp/intl/ja/help/ig/artist2008/nigo.html" style="text-decoration: underline; font-weight: bold;" target="_blank"&gt;アーティスト iGoogle&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.google.co.jp/intl/ja/help/ig/artist2008/nigo.html" style="text-decoration: underline; font-weight: bold;" target="_blank"&gt;http://www.google.co.jp/intl/ja/help/ig/artist2008/nigo.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;このカフェはその iGoogle のコンセプトカフェです。&lt;br /&gt;&lt;br /&gt;店内はゆったりとしたスペース。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_qRW47nLTz-8/SAIpyCSPB0I/AAAAAAAACQQ/lNmb9_vdQ8I/s1600-h/IMG_7252.jpg" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_qRW47nLTz-8/SAIpyCSPB0I/AAAAAAAACQQ/lNmb9_vdQ8I/s320/IMG_7252.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5188755660267784002" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;各アーティストの作品やゆかりの品を展示するコーナーが壁面にあります。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_qRW47nLTz-8/SAIpxSSPBzI/AAAAAAAACQI/wmlqk8Q5IbU/s1600-h/IMG_7248.jpg" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_qRW47nLTz-8/SAIpxSSPBzI/AAAAAAAACQI/wmlqk8Q5IbU/s320/IMG_7248.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5188755647382882098" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;PC 設置の席が半分、そうでない席でも無料で PC を貸し出してくれます。&lt;br /&gt;ネットカフェ代わりにも使えそうですね。&lt;br /&gt;&lt;br /&gt;店内の PC で自分の Google アカウントにログインし、iGoogle をコラボレーションアーティストのテーマに設定してそれを店内スタッフに見せるともれなく Google グッズがもらえます。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_qRW47nLTz-8/SAIpxSSPByI/AAAAAAAACQA/ydPKBGLqeqM/s1600-h/IMG_7244.jpg" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_qRW47nLTz-8/SAIpxSSPByI/AAAAAAAACQA/ydPKBGLqeqM/s320/IMG_7244.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5188755647382882082" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;これら、T シャツ、ブックカバー、ミラー等のいずれかがもらえます。&lt;br /&gt;&lt;br /&gt;私は、以前に某展示会でブックカバーはもらっているのでT シャツが欲しかったのですが、残念ながら当たったのはオリジナルミラーでした。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_qRW47nLTz-8/SAIqBiSPB5I/AAAAAAAACQ4/8elExRv0s-U/s1600-h/IMG_7291.jpg" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_qRW47nLTz-8/SAIqBiSPB5I/AAAAAAAACQ4/8elExRv0s-U/s320/IMG_7291.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5188755926555756434" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_qRW47nLTz-8/SAIqCCSPB6I/AAAAAAAACRA/jlLDDWyFcOA/s1600-h/IMG_7292.jpg" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_qRW47nLTz-8/SAIqCCSPB6I/AAAAAAAACRA/jlLDDWyFcOA/s320/IMG_7292.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5188755935145691042" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;「シェフおまかせランチ」を頼んでみました。&lt;br /&gt;&lt;br /&gt;ファミレスでも出てきそうな、ごく普通のグラタンです （＾＾；&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_qRW47nLTz-8/SAIqBCSPB2I/AAAAAAAACQg/Q3Ga43XGzlk/s1600-h/IMG_7256.jpg" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_qRW47nLTz-8/SAIqBCSPB2I/AAAAAAAACQg/Q3Ga43XGzlk/s320/IMG_7256.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5188755917965821794" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_qRW47nLTz-8/SAIqBSSPB3I/AAAAAAAACQo/hhmyzuE8TzA/s1600-h/IMG_7259.jpg" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_qRW47nLTz-8/SAIqBSSPB3I/AAAAAAAACQo/hhmyzuE8TzA/s320/IMG_7259.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5188755922260789106" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;デザートのワッフルとコーヒーが付いて￥1,100 なのでまぁまぁでしょうか。&lt;br /&gt;&lt;br /&gt;こちらは Google 特製ランチ「Couleur de Google (クルール・ドゥ・グーグル)」。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_qRW47nLTz-8/SAIpyCSPB1I/AAAAAAAACQY/7btt7HGwlxc/s1600-h/IMG_7254.jpg" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_qRW47nLTz-8/SAIpyCSPB1I/AAAAAAAACQY/7btt7HGwlxc/s320/IMG_7254.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5188755660267784018" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;一緒に行った方が注文しました。&lt;br /&gt;お皿に、ココアパウダーで「iGoogle Art Cafe」と書いてあります。&lt;br /&gt;ピラフは、いかにも冷凍ピラフをレンジでチンしたものだったそうで・・・（＾＾；&lt;br /&gt;&lt;br /&gt;フード類は特に良くも悪くもないという感じです。&lt;br /&gt;&lt;a href="http://googlejapan.blogspot.com/2008/04/igoogle-art-cafe_12.html" style="text-decoration: underline; font-weight: bold;" target="_blank"&gt;Google オフィシャルブログ&lt;/a&gt;で紹介されている変な色のデザートやドリンクを頼んだ方が話のタネにはなりそうですね（笑）&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://googlejapan.blogspot.com/2008/04/igoogle-art-cafe_12.html" style="text-decoration: underline; font-weight: bold;" target="_blank"&gt;iGoogle Art Cafe が期間限定で六本木ヒルズにオープン!&lt;/a&gt;&lt;br /&gt;&lt;a href="http://googlejapan.blogspot.com/2008/04/igoogle-art-cafe_12.html" style="text-decoration: underline; font-weight: bold;" target="_blank"&gt;http://googlejapan.blogspot.com/2008/04/igoogle-art-cafe_12.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-4636987338649290550?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/4636987338649290550/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/04/igoogle-art-cafe.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/4636987338649290550'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/4636987338649290550'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/04/igoogle-art-cafe.html' title='iGoogle Art Cafe へ行ってきました'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_qRW47nLTz-8/SAIpxCSPBxI/AAAAAAAACP4/-WRWoc1eB7s/s72-c/IMG_7242.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-5559197015041097718</id><published>2008-04-12T18:50:00.009+09:00</published><updated>2008-05-12T22:27:50.946+09:00</updated><title type='text'>「技術者の自己満足ではいけない」と「SE は技術オタクである必要はない」を混同してはいけない</title><content type='html'>「ウチは SE を育てますから、技術オタクにするつもりはありません」&lt;br /&gt;&lt;br /&gt;春から秋にかけては新人研修の講師をすることも多い私ですが。&lt;br /&gt;&lt;br /&gt;いまだに、こんなトンデモナイ勘違い発言をする SIer の人事・研修担当の方がたくさんいます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-size:130%;font-weight: bold;" &gt;技術者の自己満足ではいけない&lt;/span&gt;&lt;br /&gt;これは正しいです。&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-size:130%;font-weight: bold;" &gt;お客様にとっては、どんなシステムができるのか？が重要でどんな技術を使っているのか？は重要ではない&lt;/span&gt;&lt;br /&gt;表面的・直接的には正しいですが、あまり正確ではありません。&lt;br /&gt;どんな技術が使われるのかは重要です。信頼できる技術・ノウハウが蓄積された技術・生産性の高い技術・保守性の高い技術が使われることは開発時や後のメンテナンス時のコストに影響しますから。&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-size:130%;font-weight: bold;" &gt;SE は技術オタクである必要はない&lt;/span&gt;&lt;br /&gt;大間違いです。SE はシステムの専門家としてお金を稼いでいる以上、技術オタクであるべきです。お客様も周囲もそれを期待して専門家ならではの視点や考え方を求めます。自分が売っているものに対する製品知識は必要です。大事なのは技術オタクをそのままお客様に押しつけてはいけないということです。&lt;br /&gt;建築に例えるなら、最新の設計手法・工法に興味が無く、最新技術に精通していない建築士を信頼できますか？常に最新の情報収集・最新技術の研究に努め、使える技術を採り入れる建築士とどちらを信頼できますか？&lt;br /&gt;答えは自ずと見えてくるでしょう。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;根本的に、技術者に向いている人・IT業界に向いている人は新しもの好きです。常に最新の情報にアンテナを張っている人です。そして、エンジニアとしてワクワクさせてくれるような技術を使ってみたい！と思っています。&lt;br /&gt;実際の開発でも、ある技術を採用する理由として「エンジニアとして楽しそうだから・面白そうだから・使ってみたいから」という理由は、私はアリだと思っています。（※ もちろん、その技術がシステムに対する要件を満たしていることは大前提ですが。）&lt;br /&gt;根本的に新しもの好きであるエンジニアがワクワクしながらやる気満々で取り組んだ仕事と、技術オタクな視点を完全に無視され、ルーティンと化した手法しか使わないで取り組んだ仕事。どちらが高い品質を期待できるでしょうか？&lt;br /&gt;&lt;br /&gt;私は、ひがさんがよくおっしゃる「開発を楽しく」に非常に共感できます。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-5559197015041097718?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/5559197015041097718/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/04/se.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5559197015041097718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5559197015041097718'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/04/se.html' title='「技術者の自己満足ではいけない」と「SE は技術オタクである必要はない」を混同してはいけない'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-3567574910334155457</id><published>2008-04-10T16:56:00.003+09:00</published><updated>2008-05-12T22:27:45.026+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='SpringFramework'/><title type='text'>SpringSource Application Suite Enterprise Edition</title><content type='html'>L.A.にお住まいの方から日本Springユーザ会のMLに情報提供の投稿がありました。&lt;br /&gt;SpringSource主催のトレーニングコースに参加した際に得た情報だそうです。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://groups.google.co.jp/group/jsug/browse_thread/thread/98e78742e3bffdb6?hl=ja" target="_blank"&gt;http://groups.google.co.jp/group/jsug/browse_thread/thread/98e78742e3bffdb6?hl=ja&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;この中で私の興味を引いたのは、SpringSource Application Suite Enterprise Edition に関する情報です。&lt;br /&gt;&lt;ul&gt;&lt;li&gt;今月末頃に Tomcat + Spring をベースにしたアプリケーションサーバをリリース。クローズドなコードが含まれている。&lt;/li&gt;&lt;li&gt;商用と GPL のデュアルライセンス&lt;/li&gt;&lt;li&gt;商用ライセンスはサブクリプションベースのサポート付き&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-size:85%;"&gt;・・・クローズドなコードを含んだものって GPL で公開できましたっけ？&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;SpringSource社がCovalent社を買収したときに、こういう展開になるのではないかという声はありました。&lt;br /&gt;&lt;br /&gt;Hibernate.org のブログエントリを読むと、JBoss 対 Spring という構図がより明確になっています。&lt;br /&gt;&lt;a href="http://blog.hibernate.org/Bloggers/SpringSourcesStrategy" target="_blank"&gt;http://blog.hibernate.org/Bloggers/SpringSourcesStrategy&lt;/a&gt;&lt;br /&gt;ここでは Tomcat + Spring には機能が足りないことに言及していますが、Rod Johnson は、そういう観点で勝負する気は無いでしょう。&lt;br /&gt;&lt;br /&gt;このMLの投稿でも「JBossの対抗馬」とされていますが、真っ向対立したいのであればJavaEE完全準拠のアプリケーションサーバを作ると思います。&lt;br /&gt;&lt;br /&gt;Tomcat + Spring は今でも十分に支持されています。Rod Johnsonが考えているのは、今までの Tomcat + Spring というアプローチの延長線上のアーキテクチャでしょう。今の SpringSource社は VC から資金調達しているので利益を出さなければならないという事情があるようですが、この Tomcat + Spring スタイルでオフィシャルにサポート提供するのなら顧客は獲得できるのではないでしょうか。&lt;br /&gt;&lt;br /&gt;今まで、Glassfish でもなく JBoss でもなく、Tomcat + Spring を選択してきたユーザには大歓迎ですね。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-3567574910334155457?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/3567574910334155457/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/04/springsource-application-suite.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/3567574910334155457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/3567574910334155457'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/04/springsource-application-suite.html' title='SpringSource Application Suite Enterprise Edition'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-2394909509746796249</id><published>2008-04-10T12:46:00.001+09:00</published><updated>2008-05-12T22:27:39.986+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><title type='text'>Javaの難しさ</title><content type='html'>Javaの難しさと一口に言ってもいろいろな側面がありますが、今日は製品選定の難しさに焦点を当てたいと思います。&lt;br /&gt;&lt;br /&gt;Javaで開発を行う場合、開発環境、実行環境（アプリケーションサーバ）、ライブラリ、フレームワーク等々、各ベンダやOSSコミュニティが似たような機能を持った製品をリリースしていて、どれを使ったらよいのか開発者はいつも頭を悩ませています。&lt;br /&gt;さらに、各ベンダやOSSコミュニティからは絶え間なく新製品や新バージョンがリリースされ続けているため、開発者は常に情報収集・調査・評価・検証を行い、そこに莫大なコストをかけています。&lt;small&gt;・・・まぁ、だからこそ私のような仕事も成り立つのですが・・・&lt;/small&gt;&lt;br /&gt;各製品個別の評価検証だけではなく、異なるベンダやOSSコミュニティからソフトウェアを入手した製品を組み合わせて動作確認するのも開発者の仕事です。その際に間接的に利用するライブラリ（依存ライブラリ）のバージョン違いによる競合が起こることも珍しくありません。&lt;br /&gt;&lt;br /&gt;選択肢は多い方が良い、という理屈もあります。ベンダ間・OSSコミュニティ間の競争・競合が各製品の質を高める効果を生み出しているのもまた事実です。&lt;br /&gt;しかし、今のJavaプラットフォームでの開発では、その選択肢の多さによるコスト増が勝っているような気がします。&lt;br /&gt;そういう意味で、Javaプラットフォームでの開発よりも.NETプラットフォームでの開発のほうが余計なことに煩わされずに済んでいるのが現状なのではないでしょうか？&lt;br /&gt;&lt;br /&gt;重要なのは、どんな技術を使ったか？や、どんなソフトウェアを使ったか？ではなくて、どんなシステム（アプリケーション）を作った（作る）のか？ですから。&lt;br /&gt;率直なところ、開発の現場では「与えられたものを使っていればOK」な人が大半なような気もしますし・・・&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-2394909509746796249?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/2394909509746796249/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/04/java.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/2394909509746796249'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/2394909509746796249'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/04/java.html' title='Javaの難しさ'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-5992203065484635751</id><published>2008-04-09T22:59:00.031+09:00</published><updated>2008-05-12T22:27:34.417+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google App Engine'/><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='Python'/><title type='text'>Google App Engine が公開されました</title><content type='html'>Google App Engine が公開されました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/appengine/" target="_blank"&gt;http://code.google.com/appengine/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Googleが提供するインフラ上に自作のWebアプリを乗せられ、データベースまで利用できるというモノです。&lt;br /&gt;&lt;br /&gt;しかも、初期費用無料で。&lt;br /&gt;&lt;br /&gt;私自身このニュースを見たとたん「来たっ！」と思いましたが、&lt;br /&gt;マスコミの反響も大きいようです。&lt;br /&gt;&lt;br /&gt;Googleのインフラでアプリを動かせる「Google App Engine」(ITmedia)&lt;br /&gt;&lt;a href="http://www.itmedia.co.jp/enterprise/articles/0804/08/news056.html" target="_blank"&gt;http://www.itmedia.co.jp/enterprise/articles/0804/08/news056.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;グーグル、「App Engine」を発表--オンラインアプリケーション開発用にインフラ提供 (CNET Japan)&lt;br /&gt;&lt;a href="http://japan.cnet.com/news/media/story/0,2000056023,20370974,00.htm" target="_blank"&gt;http://japan.cnet.com/news/media/story/0,2000056023,20370974,00.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;クラウドサービスに参入【詳報】「Google App Engine」ってなんだ (@IT)&lt;br /&gt;&lt;a href="http://www.atmarkit.co.jp/news/200804/08/appengine.html" target="_blank"&gt;http://www.atmarkit.co.jp/news/200804/08/appengine.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;「Google App Engine」発表、Googleのインフラ上でWebアプリ構築 (マイコミジャーナル)&lt;br /&gt;&lt;a href="http://journal.mycom.co.jp/news/2008/04/09/002/index.html" target="_blank"&gt;http://journal.mycom.co.jp/news/2008/04/09/002/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;技術系ブログでも大盛況ですね。&lt;br /&gt;&lt;a style="font-style: italic;" href="http://blogsearch.google.co.jp/blogsearch?hl=ja&amp;amp;q=Google+App+Engine&amp;amp;btnG=%E3%83%96%E3%83%AD%E3%82%B0%E6%A4%9C%E7%B4%A2&amp;amp;lr=lang_ja%20target=" _blank=""&gt;Google ブログ検索の結果&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Google App Engine は、Amazon の EC2/S3/SimpleDB や、Salesforce.com の force.com と競合するサービスになり得ますね。&lt;br /&gt;&lt;br /&gt;Amazon や Salesforce.com がこれらのサービスを始めたときよりも反響が大きい印象です。改めて Google の影響や注目の大きさを感じます。&lt;br /&gt;&lt;br /&gt;Salesforce.com に転職した後輩が、「Google が始めたとしても、Salesforce.com はもう8年もやっている実績がありますから」と言ってました。&lt;br /&gt;&lt;br /&gt;Salesforce.com の force.com は、既存の高機能なCRMシステムを持っていて連携できるのが強みでしょうか。さらにリッチな GUI 開発環境を SaaS 形式で提供しているのが特徴です。アプリケーションのコードは Apex という、Java によく似た独自言語で記述します。&lt;br /&gt;&lt;br /&gt;Goole App Engine は、背後に GoogleのBigTable、GFSという基盤を持っているのが強みだと思います。これは非常にスケーラビリティの高いシステムを構築できる可能性を持っていることを意味します。&lt;br /&gt;mixi のような大規模 SNS もホスティングできたら、これはすごいことになりますね。世の中のインターネットサービスやエンタープライズシステムのあり方を一変させる可能性を秘めています。自らインフラを持たずとも初期投資ほぼ0からスタートして、大規模エンタープライズシステムやmixi のような規模を持つコンシューマサービスを運営できることになるのです。&lt;br /&gt;多くのサービスやエンタープライズシステムが、自社サーバではなく Amazon や Google のクラウド上に移行するということがさらに現実味を帯びてきた感があります。Google のことですから、それぐらいの野望は持っているでしょう。&lt;br /&gt;&lt;br /&gt;Web 上で Service を提供する SaaS から、プラットフォームを提供する PaaS (Platform as a Service) 時代へシフトする未来が見えてきた感があります。&lt;br /&gt;&lt;br /&gt;Goole App Engine の正式サービス開始時の料金体系がまだ発表になっていませんが、Google の大容量ストレージを格安で利用できるメリットを打ち出してきそうな予感がします。&lt;br /&gt;&lt;br /&gt;プログラム言語としては、現在は Python のみのサポートですが、将来的には他言語にも対応予定とのこと。Salesforce.com の force.com が独自開発言語と SaaS 形式のリッチな GUI 開発環境を提供するというアプローチに対して、Google App Engine は多言語対応で、開発環境は「自分の好きなものを使ってね」的なアプローチです。&lt;br /&gt;&lt;br /&gt;&lt;table class="datatable" border="1"&gt;&lt;tbody&gt;&lt;tr class="datatable" nowrap="nowrap"&gt;&lt;td class="datatable" nowrap="nowrap"&gt; &lt;/td&gt;&lt;th class="datatable" nowrap="nowrap"&gt;Salesforce force.com&lt;/th&gt;&lt;th class="datatable" nowrap="nowrap"&gt;Google App Engine&lt;/th&gt;&lt;/tr&gt;&lt;tr class="datatable"&gt;&lt;td class="datatable" nowrap="nowrap"&gt;開発言語&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;Apex&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;Python&lt;br /&gt;他言語もサポート予定&lt;/td&gt;&lt;/tr&gt;&lt;tr class="datatable"&gt;&lt;td class="datatable" nowrap="nowrap"&gt;開発環境&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;専用GUI環境(SaaSで提供)&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;SDK提供&lt;br /&gt;統合開発環境は無し。&lt;br /&gt;開発者が好きなものを利用。&lt;/td&gt;&lt;/tr&gt;&lt;tr class="datatable"&gt;&lt;td class="datatable" nowrap="nowrap"&gt;インフラ&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;Salesforce.com&lt;br /&gt;(恐らく市販商用サーバ + 商用DB)&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;GFS + Google BigTable&lt;/td&gt;&lt;/tr&gt;&lt;tr class="datatable"&gt;&lt;td class="datatable" nowrap="nowrap"&gt;最低限の&lt;br /&gt;初期投資&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;0円&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;0円&lt;/td&gt;&lt;/tr&gt;&lt;tr class="datatable"&gt;&lt;td class="datatable" nowrap="nowrap"&gt;他サービス&lt;br /&gt;との連携&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;強力・高機能なCRMシステム&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;Googleアカウントを利用した&lt;br /&gt;認証等&lt;/td&gt;&lt;/tr&gt;&lt;tr class="datatable"&gt;&lt;td class="datatable" nowrap="nowrap"&gt;独自ドメイン&lt;br /&gt;の利用&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;不可&lt;/td&gt;&lt;td class="datatable" nowrap="nowrap"&gt;可&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;Yahoo! や MS はこの流れに追従するのでしょうか？MS はやりそうな気がしていますが・・・&lt;br /&gt;&lt;br /&gt;まあ、Google と SalesForce.com ではターゲットとするユーザ・アプリが違う気もしますが・・・&lt;br /&gt;平たく言うと Web2.0 的コンシューマサービスをゲリラ的に立ち上げやすい Google と、あくまで企業ユーザをターゲットにした SalesForce.com という感はあります。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ともあれ、Getting Started Guide に従って少しいじってみました。&lt;br /&gt;（Windows XP Professional 環境です。）&lt;br /&gt;&lt;br /&gt;トップページ &lt;a href="http://code.google.com/appengine/" target="_blank"&gt;http://code.google.com/appengine/&lt;/a&gt; から、サインアップし、SDK をダウンロードします&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_qRW47nLTz-8/R_6aIucx6XI/AAAAAAAACNI/c5b203Ajqjk/s1600-h/01_toppage.JPG" target="_blank"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_qRW47nLTz-8/R_6aIucx6XI/AAAAAAAACNI/c5b203Ajqjk/s320/01_toppage.JPG" alt="" id="BLOGGER_PHOTO_ID_5187753295475763570" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;msi 形式の Windows インストーラが用意されているので、それをダウンロードしました。&lt;br /&gt;&lt;br /&gt;さて、インストール・・・&lt;br /&gt;&lt;br /&gt;と思いインストーラを起動したら、Python2.5 が必要なので、まずはそっちをインストールしなさい・・・と怒られました。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_qRW47nLTz-8/R_6aI-cx6YI/AAAAAAAACNQ/kUQ_Qfk2-7A/s1600-h/02_pythonwarning.JPG" target="_blank"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_qRW47nLTz-8/R_6aI-cx6YI/AAAAAAAACNQ/kUQ_Qfk2-7A/s320/02_pythonwarning.JPG" alt="" id="BLOGGER_PHOTO_ID_5187753299770730882" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Mac OS X 10.5 Leopard ならデフォルトで入っているんですけどね。&lt;br /&gt;&lt;br /&gt;というわけで、Python をインストールしてから、GoogleAppEngine SDKのインストール。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_qRW47nLTz-8/R_6aI-cx6ZI/AAAAAAAACNY/L4Cyi_KwGnw/s1600-h/03_install.JPG" target="_blank"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_qRW47nLTz-8/R_6aI-cx6ZI/AAAAAAAACNY/L4Cyi_KwGnw/s320/03_install.JPG" alt="" id="BLOGGER_PHOTO_ID_5187753299770730898" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;インストール作業は、ライセンス同意と、インストールディレクトリの選択のみのシンプルな構成。「I Agree」とか「Next」を押しているだけで特に問題なく終了しました。&lt;br /&gt;インストール時に、インストーディレクトリに PATH を通すかどうかのチェックボックスがありますが、チェックを入れておくとサーバの起動やアプリケーションのアップロードの時にコマンドをフルパス指定しなくて済みます。というだけです。&lt;br /&gt;&lt;br /&gt;開発環境（SDK）には、開発用アプリケーションサーバ、ローカル環境専用データベースが含まれています。&lt;br /&gt;&lt;br /&gt;Getting Started Guide に従って、最も簡単な Hello World アプリケーションを作ってみました。&lt;br /&gt;&lt;br /&gt;まず、適当な場所にhelloworldディレクトリを作成し、その中にテキストベースで helloworld.py という名前のファイルを作成します。&lt;br /&gt;ファイルの中はこんな感じ。&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;print 'Content-Type: text/plain'&lt;br /&gt;print ''&lt;br /&gt;print 'Hello, world!'&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Google App Engine では、app.yaml という名前の設定ファイルが必要なので、同じディレクトリ内に作成します。&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;application: helloworld&lt;br /&gt;version: 1&lt;br /&gt;runtime: python&lt;br /&gt;api_version: 1&lt;br /&gt;&lt;br /&gt;handlers:&lt;br /&gt;- url: /.*&lt;br /&gt;script: helloworld.py&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;application: App Engine がアプリケーションを識別するためのユニークな名前を付けます。&lt;br /&gt;&lt;ul&gt;&lt;li&gt;version: アプリケーションのバージョン番号。アップロードする前にバージョン番号を編集する必要があるそうです。App Engine はバージョン番号を認識しているので、管理コンソールで前のバージョンに戻したりできるらしいです。&lt;/li&gt;&lt;li&gt;runtime: と api_version: エントリは、現在は python、1 で固定です。将来別の言語を使えるような計画もあるので、その際に拡張されるみたいです。&lt;/li&gt;&lt;li&gt;handlers: 上記の設定は、すべてのリクエストに対して helloworld.py スクリプトが動作するということを意味します。スクリプトの他にも、ディレクトリを指定したり、指定したURIは管理者のみがログイン可を指定したりが可能です。&lt;/li&gt;&lt;/ul&gt;YAMLのリファレンスはこちら。&lt;br /&gt;&lt;a href="http://code.google.com/appengine/docs/configuringanapp.html" target="_blank"&gt;http://code.google.com/appengine/docs/configuringanapp.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;これで準備完了です。&lt;br /&gt;&lt;br /&gt;コマンドラインから Google App Engine のサーバを起動します。その際にスペース区切りでアプリケーションの配備ディレクトリを指定します。&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;dev_appserver.py アプリケーションのディレクトリパス&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;あとは、ブラウザから http://localhost:8080/ にアクセスすると・・・&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_qRW47nLTz-8/R_6aI-cx6aI/AAAAAAAACNg/PeGqeq7rggg/s1600-h/05_helloworld.JPG" target="_blank"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_qRW47nLTz-8/R_6aI-cx6aI/AAAAAAAACNg/PeGqeq7rggg/s320/05_helloworld.JPG" alt="" id="BLOGGER_PHOTO_ID_5187753299770730914" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;これを、Google App Engine のサーバにアップロードすれば公開できます。&lt;br /&gt;&lt;br /&gt;アップロードするには、まず &lt;a href="http://appengine.google.com/start/createapp" target="_blank"&gt;http://appengine.google.com/start/createapp&lt;/a&gt; からアプリケーションを作成します。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_qRW47nLTz-8/R_6aJOcx6bI/AAAAAAAACNo/wZlkePXW2CI/s1600-h/06_upload.JPG" target="_blank"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_qRW47nLTz-8/R_6aJOcx6bI/AAAAAAAACNo/wZlkePXW2CI/s320/06_upload.JPG" alt="" id="BLOGGER_PHOTO_ID_5187753304065698226" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;このとき、Application Identifier の項目は app.yaml の application エントリに登録した文字列と合わせておく必要があります。&lt;br /&gt;この文字列はアプリケーションの識別子となるのですが、ユニークであるスコープはユーザ単位ではなく、Google App Engine サーバ全体です。つまり、同一のアプリケーション名を他人に使われていたら使えません。&lt;br /&gt;というわけで、helloworld が（当然のように）使われていたので、ここでは「liebejudith-helloworld」に変更しました。app.yaml の application エントリもこれに合わせて修正しています。&lt;br /&gt;&lt;br /&gt;そして、アップロード。Web 管理インタフェースからアップロードするのかと思いきや、Google App Engine ではコマンドラインから appcfg.py コマンドを実行してアプリケーションをアップロードします。&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;appcfg.py --email=登録メールアドレス update アプリケーション配備ディレクトリ&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;これで完了。ブラウザから次のURLにアクセスします。&lt;br /&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;http://アプリケーション名.appspot.com/&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_qRW47nLTz-8/R_6aPecx6cI/AAAAAAAACNw/beLiicjOP44/s1600-h/07_done.JPG" target="_blank"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_qRW47nLTz-8/R_6aPecx6cI/AAAAAAAACNw/beLiicjOP44/s320/07_done.JPG" alt="" id="BLOGGER_PHOTO_ID_5187753411439880642" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Google App Engine は、Pure Python アプリも動作しますし、アプリケーションと一緒にアップロードすれば多くのフレームワークを動作させることができます。&lt;br /&gt;&lt;br /&gt;SDKに同梱されているのは、Django v0.96.1 と、オリジナルのWebアプリケーションフレームワーク "webapp" です。&lt;br /&gt;&lt;br /&gt;webappフレームワークには、下記のような機能が含まれています。&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Google アカウントと連動したユーザ認証API&lt;/li&gt;&lt;li&gt;データストアAPI。データ操作には、SQLによく似たクエリ言語"GQL"を利用&lt;/li&gt;&lt;li&gt;Webページ作成のためのテンプレートエンジン&lt;/li&gt;&lt;li&gt;Mail API&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;私は Java しか知らない人間なので Python はほとんど触ったことはないのですが、Google App Engine アプリを作るために Python を覚えてもいいかな？という気にさせてくれます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;次回は、Getting Started Guide で紹介されているゲストブックアプリケーションを参考にして、掲示板アプリでも作成してみたいと思います。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-5992203065484635751?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/5992203065484635751/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/04/google-app-engine.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5992203065484635751'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5992203065484635751'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/04/google-app-engine.html' title='Google App Engine が公開されました'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_qRW47nLTz-8/R_6aIucx6XI/AAAAAAAACNI/c5b203Ajqjk/s72-c/01_toppage.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-1383122844570649992</id><published>2008-04-08T19:12:00.010+09:00</published><updated>2008-05-12T22:27:26.620+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='SpringFramework'/><title type='text'>Spring Framework 2.5.3 リリースされました</title><content type='html'>Spring Framework 2.5.3 がリリースされました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.springframework.org/node/622" target="_blank"&gt;http://www.springframework.org/node/622&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;すべての2.5.xユーザにアップグレードが推奨されています。&lt;br /&gt;&lt;br /&gt;主な変更点はこんな感じです。&lt;br /&gt;&lt;ul&gt;&lt;li&gt;@Autowiredアノテーション、@Requiredアノテーションの動作の変更。&lt;/li&gt;&lt;li&gt;@Autowiredアノテーションが付けられたメソッドがサブクラスでオーバーライドされているとき、@Autowiredアノテーションの動作はオーバーライドされたメソッドには継承されないように変更になった。（2.5.2までは、@Autowiredアノテーションがついたメソッドがサブクラスでオーバーライドされた場合は、サブクラスのオーバーライドされたメソッドにも暗黙的に@Autowiredアノテーションがついていることになっていた）&lt;/li&gt;&lt;li&gt;@Requiredアノテーションは、XMLでのBean定義をしなくても@Autowiredアノテーションと組み合わせて利用できるようになった。&lt;/li&gt;&lt;li&gt;@Controllerアノテーションが付いたBeanがデフォルトで検索されるようになった&lt;/li&gt;&lt;li&gt;&amp;lt;jee:...要素を使ったjndiルックアップはresource-ref="true"がデフォルトになった&lt;/li&gt;&lt;li&gt;JMSセッションとプロデューサプーリング用の新しいCachingConnectionFactoryクラス&lt;/li&gt;&lt;li&gt;DB2/390とDB2/400のための新しいDB2MainframeSequenceMaxValueIncrementerクラス&lt;/li&gt;&lt;li&gt;リファレンスドキュメントがJSF1.2、Struts2.0対応になった&lt;/li&gt;&lt;li&gt;PropertyPlaceholderConfigurerで、${db.${environment}}のようにネストしたプレイスホルダーキーをサポート&lt;/li&gt;&lt;li&gt;その他&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;詳細はChangelogを参照してください。&lt;br /&gt;&lt;a href="http://static.springframework.org/spring/docs/2.5.x/changelog.txt" target="_blank"&gt;http://static.springframework.org/spring/docs/2.5.x/changelog.txt&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;すべての2.5.xユーザにアップグレードを推奨すると言ってますが・・・。メソッドがオーバーライドされたときの@Autowiredアノテーションの振る舞いの変更は、ソースコードの修正が発生しそうですね。setterをオーバーライドすることはあまり無さそうですが、コンストラクタインジェクションを使っている場合はオーバーライドしているケースが結構多いのではないでしょうか？&lt;br /&gt;&lt;br /&gt;@Requiredアノテーションについては、2.5.2 までは@Requiredアノテーションを使う場合はXMLでのBean定義が必須でしたが、2.5.3 では@Autowiredアノテーションと組み合わせて利用できるようになったのが便利ですね。&lt;br /&gt;・・・まぁ、@Autowired(required=true) とあまり変わりませんが・・・&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-1383122844570649992?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/1383122844570649992/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/04/spring-framework-253.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/1383122844570649992'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/1383122844570649992'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/04/spring-framework-253.html' title='Spring Framework 2.5.3 リリースされました'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-8246564696451048774</id><published>2008-03-22T15:11:00.009+09:00</published><updated>2008-05-12T22:27:21.555+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FireFox'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>FireFox3β4とSafari3.1</title><content type='html'>相次いでリリースされましたね。&lt;br /&gt;&lt;br /&gt;どちらも、描画速度・JavaScriptの実行速度が体感できるほどに大幅に改善されているのがわかります。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;詳細な機能の解説等はマスコミにお任せするとして。。。&lt;br /&gt;&lt;br /&gt;数々の新機能を提供するFirefox 3β4&lt;br /&gt;&lt;a href="http://www.itmedia.co.jp/enterprise/articles/0803/17/news050.html" target="_blank"&gt;http://www.itmedia.co.jp/enterprise/articles/0803/17/news050.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_qRW47nLTz-8/R-SjdHb4E3I/AAAAAAAAB9M/Et08xiebIl4/s1600-h/firefox3beta4.JPG" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_qRW47nLTz-8/R-SjdHb4E3I/AAAAAAAAB9M/Et08xiebIl4/s320/firefox3beta4.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5180445191990416242" /&gt;&lt;/a&gt;&lt;br /&gt;相変わらずすごいトップページですね（＾＾：&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;実際の使用感では、安定度が増してきまたと感じます。。FireFox3β3まではブラウザがレスポンスデータ受信中などに回線が切れるとブラウザが突然堕ちたりしていましたが、β4になってその頻度がかなり低くなりました。&lt;br /&gt;それから「キーノート」と呼ばれる新UIが小さいアイコンにも採用されました。&lt;br /&gt;&lt;br /&gt;すでにβ5のリリース準備も始まっているようです。&lt;br /&gt;&lt;br /&gt;Firefox 3、β5は一般ユーザーにも解禁&lt;br /&gt;&lt;a href="http://www.itmedia.co.jp/enterprise/articles/0803/21/news035.html" target="_blank"&gt;http://www.itmedia.co.jp/enterprise/articles/0803/21/news035.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Safari3.1は、完全日本語化されたのが嬉しいですね。&lt;br /&gt;　　&lt;small&gt;まあ、ブラウザなんて使う機能が決まっているのでメニューが日本語か外国語かなんてあまり関係ないとも思いますが・・・&lt;/small&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_qRW47nLTz-8/R-SjdXb4E4I/AAAAAAAAB9U/GQXBAq8bWVA/s1600-h/safari3.1.JPG" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_qRW47nLTz-8/R-SjdXb4E4I/AAAAAAAAB9U/GQXBAq8bWVA/s320/safari3.1.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5180445196285383554" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;こちらも安定度が増してきました。&lt;br /&gt;わけもわからず突然落ちる頻度が激減。&lt;br /&gt;&lt;br /&gt;綺麗なフォントや、Macっぽいダイアログボックスのアクションがなかなかイイ感じです。&lt;br /&gt;&lt;br /&gt;しかし、Thinkpadのトラックポイントでスクロールできないのは未だ変わらず。Thinkpadユーザとしては何とかして欲しいものです。&lt;br /&gt;&lt;br /&gt;Appleでは、開発者向けのFAQも日本語で公開しています。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://developer.apple.com/jp/internet/safari/faq.html" target="_blank"&gt;http://developer.apple.com/jp/internet/safari/faq.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-8246564696451048774?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/8246564696451048774/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/03/firefox34safari31.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8246564696451048774'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8246564696451048774'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/03/firefox34safari31.html' title='FireFox3β4とSafari3.1'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_qRW47nLTz-8/R-SjdHb4E3I/AAAAAAAAB9M/Et08xiebIl4/s72-c/firefox3beta4.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-4918793988299159321</id><published>2008-03-21T18:38:00.020+09:00</published><updated>2008-05-12T22:27:16.252+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='SpringFramework'/><title type='text'>Spring2.5はどのぐらいパフォーマンスが向上したのか？</title><content type='html'>仕事で、あるお客様に「Spring2.5は2.0からどのぐらい変わったのか？」と聞かれました。Spring2.5は2.0よりパフォーマンスが大幅にアップしたと言われていますが、私自身いったいどのぐらい向上したのかを具体的に知らなかったので、簡単なサンプルを使って検証してみました。&lt;br /&gt;&lt;ul&gt;&lt;li&gt;検証したマシン： Lenovo Tinkpad X60&lt;/li&gt;&lt;li&gt;CPU: Core2 DUO T7200 2.00GHz&lt;/li&gt;&lt;li&gt;RAM: 2GB&lt;/li&gt;&lt;li&gt;Windows XP Professional SP2&lt;/li&gt;&lt;li&gt;Sun JavaSE JDK 1.6.0_05&lt;/li&gt;&lt;li&gt;Eclipse 3.3 Europa&lt;/li&gt;&lt;/ul&gt;まず用意したのは、あまりにも簡単なこんなサンプル。&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;[ParentBeanImpl.java]&lt;/span&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;package springtest.bean;&lt;br /&gt;&lt;br /&gt;public class ParentBeanImpl {&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;[applicationContext.xml]&lt;/span&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;br /&gt;&amp;lt;beans xmlns="http://www.springframework.org/schema/beans"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:aop="http://www.springframework.org/schema/aop"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:tx="http://www.springframework.org/schema/tx"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd"&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;bean id="parentBean" class="springtest.bean.ParentBeanImpl" /&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/beans&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;これで、ひたすら getBean("parentBean") を、100万回 * 100セットして、100万回の実行にかかった時間の平均値を求めてみました。&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;[SampleMain.java]&lt;/span&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;package springtest;&lt;br /&gt;&lt;br /&gt;import springtest.bean.ParentBean;&lt;br /&gt;import org.springframework.context.ApplicationContext;&lt;br /&gt;import org.springframework.context.support.ClassPathXmlApplicationContext;&lt;br /&gt;&lt;br /&gt;public class SampleMain {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private static final int count = 1000000;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private static final int set = 10;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public static void main(String[] args) {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ApplicationContext ctx = new ClassPathXmlApplicationContext(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;"applicationContext.xml");&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for (int i = 0; i &lt; set; i++) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for (int j = 0; j &lt; count; j++) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ctx.getBean("parentBean");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Spring2.0.8 442ミリ秒&lt;br /&gt;Spring2.5.2 234ミリ秒&lt;br /&gt;&lt;br /&gt;Spring2.5は、2.0に比べて2倍近くパフォーマンス向上していることがわかります。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;次に、DIありで。&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;[ParentBeanImpl.java]&lt;/span&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;package springtest.bean;&lt;br /&gt;&lt;br /&gt;public class ParentBeanImpl {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private ChildBean childBean;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public void setChildBean(ChildBean childBean) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this.childBean = childBean;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;[ChildBean.java]&lt;/span&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;package springtest.bean;&lt;br /&gt;&lt;br /&gt;public interface ChildBean {&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;[ChildBeanImpl.java]&lt;/span&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;package springtest.bean;&lt;br /&gt;&lt;br /&gt;public class ChildBeanImpl implements ChildBean {&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;[applicationContext.xml]&lt;/span&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;br /&gt;&amp;lt;beans xmlns="http://www.springframework.org/schema/beans"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:aop="http://www.springframework.org/schema/aop"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:tx="http://www.springframework.org/schema/tx"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd"&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;bean id="parentBean"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;class="springtest.bean.ParentBeanImpl"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;property name="childBean"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;ref bean="childBean" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/property&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/bean&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;bean id="childBean"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;class="springtest.bean.ChildBeanImpl" /&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/beans&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Spring2.0.8 450ミリ秒&lt;br /&gt;Spring2.5.2 235ミリ秒&lt;br /&gt;&lt;br /&gt;Spring2.0はDIのオーバーヘッドが2～3%ほどかかっていますが、Spring2.5ではそれほどかかっていないことがわかります。&lt;br /&gt;でもまあ、DIのコストは気にする程度のものではないでしょう。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;次は、scope="prototype"で。&lt;br /&gt;100万回 * 100セットでは時間がかかりすぎたので、1万回 * 100セットで検証。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;[applicationContext.xml]&lt;/span&gt;&lt;br /&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;br /&gt;&amp;lt;beans xmlns="http://www.springframework.org/schema/beans"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:aop="http://www.springframework.org/schema/aop"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xmlns:tx="http://www.springframework.org/schema/tx"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd"&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;bean id="parentBean" scope="prototype"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;class="springtest.bean.ParentBeanImpl"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;property name="childBean"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;ref bean="childBean" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/property&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/bean&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;bean id="childBean" scope="prototype"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;class="springtest.bean.ChildBeanImpl" /&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/beans&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Spring2.0.8 122ミリ秒&lt;br /&gt;Spring2.5.2 162ミリ秒&lt;br /&gt;&lt;br /&gt;なんと、Prototypeではわずかですが2.5の方が遅いという結果に。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ところで、お客様に聞かれたのはSpring2.0と2.5の比較ですが、興味本位でSeasar2もほぼ同一プログラムで検証してみました。&lt;br /&gt;&lt;br /&gt;結果は、Seasar圧倒的。これほどまでに差が出るとは・・・&lt;br /&gt;&lt;br /&gt;&lt;table style="border: 1px solid ;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th style="border: 1px solid ;" border="1"&gt; &lt;/th&gt;&lt;th style="border: 1px solid ;" border="1"&gt;Singleton、DIなし(ミリ秒)&lt;br /&gt;100万回 * 100セット平均&lt;/th&gt;&lt;th style="border: 1px solid ;" border="1"&gt;Singleton、DIあり(ミリ秒)&lt;br /&gt;100万回 * 100セット平均&lt;/th&gt;&lt;th style="border: 1px solid ;" border="1"&gt;Prototype、DIあり(ミリ秒)&lt;br /&gt;1万回 * 100セット平均&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th style="border: 1px solid ;" border="1"&gt;Spring 2.0.8&lt;/th&gt;&lt;td style="border: 1px solid ;" border="1"&gt;442&lt;/td&gt;&lt;td style="border: 1px solid ;" border="1"&gt;450&lt;/td&gt;&lt;td style="border: 1px solid ;" border="1"&gt;122&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th style="border: 1px solid ;" border="1"&gt;Spring 2.5.2&lt;/th&gt;&lt;td style="border: 1px solid ;" border="1"&gt;234&lt;/td&gt;&lt;td style="border: 1px solid ;" border="1"&gt;235&lt;/td&gt;&lt;td style="border: 1px solid ;" border="1"&gt;162&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th style="border: 1px solid ;" border="1"&gt;Seasar 2.4.23&lt;/th&gt;&lt;td style="border: 1px solid ;" border="1"&gt;84&lt;/td&gt;&lt;td style="border: 1px solid ;" border="1"&gt;87&lt;/td&gt;&lt;td style="border: 1px solid ;" border="1"&gt;67&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;　&lt;small&gt;ところで余談になりますが・・・&lt;br /&gt;&lt;br /&gt;　最近Seasar界隈を中心に「スーツ or Geek論」が再燃していますが・・・&lt;br /&gt;　ひがさんだって十分に「スーツなGeek」じゃない？と思うのは私だけでしょうか・・・&lt;br /&gt;&lt;br /&gt;　大手SIerがSeasarをなかなか採用しない理由は、周辺プロダクトと開発環境のロックオンという理由も大きいと思います。私はSpringの方が柔軟性や他プロダクトとの親和性が高いと思います。&lt;br /&gt;&lt;/small&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-4918793988299159321?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/4918793988299159321/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/03/spring25.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/4918793988299159321'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/4918793988299159321'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/03/spring25.html' title='Spring2.5はどのぐらいパフォーマンスが向上したのか？'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-960119252370371536</id><published>2008-03-19T12:49:00.005+09:00</published><updated>2008-05-12T22:27:09.170+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iBatis'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='SpringFramework'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle'/><title type='text'>iBatisのBLOB・CLOBおよびOracle固有SQL型サポート(メモ)</title><content type='html'>iBatis2.3.0では、次のOracle固有のSQL &lt;-&gt; Java型マッピングをデフォルトでサポート。&lt;br /&gt;iBatis2.0.9以降ではBLOBとCLOBをデフォルトでサポートするようになった。&lt;br /&gt;&lt;a href="http://wiki.apache.org/ibatis/How_do_I_use_a_Custom_Type_Handler_with_a_BLOB_or_CLOB" target="_blank"&gt;http://wiki.apache.org/ibatis/How_do_I_use_a_Custom_Type_Handler_with_a_BLOB_or_CLOB&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;CLOB → java.lang.String&lt;/li&gt;&lt;li&gt;BLOB → byte[]&lt;/li&gt;&lt;li&gt;RAW  → byte[]&lt;/li&gt;&lt;li&gt;LONG → java.lang.String&lt;/li&gt;&lt;li&gt;LONG RAW → byte[]&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;BLOB型は、Springのorg.springframework.orm.ibatis.support.BlobSerializableTypeHandler&lt;br /&gt;を使うとSerializable Objectでマッピングすることも可。&lt;br /&gt;org.springframework.orm.ibatis.support.BlobByteArrayTypeHandler とか org.springframework.orm.ibatis.support.ClobStringTypeHandler とかあるけど、少し古いバージョンのiBatisサポートのために残されているだけ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-960119252370371536?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/960119252370371536/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/03/ibatisoraclesql.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/960119252370371536'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/960119252370371536'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/03/ibatisoraclesql.html' title='iBatisのBLOB・CLOBおよびOracle固有SQL型サポート(メモ)'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-4122599689008545464</id><published>2008-03-05T22:36:00.010+09:00</published><updated>2008-05-12T22:27:04.309+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='SpringFramework'/><title type='text'>Spring Framework 2.5.2 リリース</title><content type='html'>昨日、Spring Framework 2.5.2 がリリースされています。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.springframework.org/node/601" target="_blank"&gt;http://www.springframework.org/node/601&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;主な変更点は以下の通りです。&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Spring2.0拡張ポイントの完全互換&lt;/li&gt;&lt;li&gt;MS SQL、MySQL、PostgreSQL、Oracleの拡張SQLエラーコード対応&lt;/li&gt;&lt;li&gt;TaskExecutorバックエンドとしてのGlassFish/JBoss JCA WorkManagerのサポート&lt;/li&gt;&lt;li&gt;Eclipse Persistence Services （EclipseLink JPA実装）1.0 M4のサポート&lt;/li&gt;&lt;li&gt;WebSphere JPA実装（OpenJPA）のサポート&lt;/li&gt;&lt;li&gt;@RequestMappingアノテーションでの"!myParam"式のサポート&lt;/li&gt;&lt;li&gt;@RequestMappingアノテーションでの"params"属性の型宣言部でのサポート&lt;/li&gt;&lt;li&gt;JSP CheckboxesTagとRadioButtonsTagの修正&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;さらにいくつかのプロダクトをサポートが追加されました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Seasarは、何でも自前で用意したり、StrutsやJSF実装等の他のプロダクトを取り込んだ自前のフレームワークを用意したりする傾向が強いプロジェクトですが、Springは他のプロダクトとの疎な連係機能を充実させる方向ですね。&lt;br /&gt;Springのこういうところが好きです。&lt;br /&gt;少し前に日本Springユーザ会のMLでも話題になっていましたが、DI/AOPコンテナフレームワークとして日本国内では何かと比較されることの多いSeasarとSpringですが、あくまで「アプリケーションフレームワーク」として進化するSeasarと、ミドルウェア的な「コンテナ」の方向に進化するSpringの思想がだんだん離れてきた感もあります。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-4122599689008545464?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/4122599689008545464/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/03/spring-framework-252.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/4122599689008545464'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/4122599689008545464'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/03/spring-framework-252.html' title='Spring Framework 2.5.2 リリース'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-8608267615527938405</id><published>2008-03-04T17:57:00.021+09:00</published><updated>2008-05-12T22:26:45.592+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mixi'/><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><title type='text'>mixiの規約が改訂されます</title><content type='html'>mixi、4月1日より利用規約を改定--日記などについて著作者人格権の行使を禁止&lt;br /&gt;&lt;a href="http://japan.cnet.com/news/media/story/0,2000056023,20368643,00.htm" target="_blank"&gt;http://japan.cnet.com/news/media/story/0,2000056023,20368643,00.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;(トラックバック)&lt;/span&gt;&lt;br /&gt;&lt;a href="http://japan.cnet.com/news/media/trackback/0,2000056567,20368643,00.htm" target="_blank"&gt;http://japan.cnet.com/news/media/trackback/0,2000056567,20368643,00.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;mixiのお知らせ欄にも改訂することが告知されています。&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;mixiの新規約より&lt;/span&gt;&lt;br /&gt;&lt;div style="border: 1px solid ; padding: 10px;"&gt;&lt;br /&gt;第18条　日記等の情報の使用許諾等&lt;br /&gt;1 本サービスを利用してユーザーが日記等の情報を投稿する場合には、ユーザーは弊社に対して、当該日記等の情報を日本の国内外において無償かつ非独占的に使用する権利（複製、上映、公衆送信、展示、頒布、翻訳、改変等を行うこと）を許諾するものとします。&lt;br /&gt;2 ユーザーは、弊社に対して著作者人格権を行使しないものとします。&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;この改訂が実施されたら、mixiの日記に書いた文章は書いた本人が著作権を主張できなくなります。またmixiは自身が出版する書籍やWebサイトで参加者の日記の文章を作者に許可なく、mixi自身の著作物として自由に使えることになります。&lt;br /&gt;&lt;br /&gt;これでは、mixiに日記は書けなくなりますね。&lt;br /&gt;&lt;br /&gt;「日記等」は、下記のように定義されています。&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;mixiの新規約より&lt;/span&gt;&lt;br /&gt;&lt;div style="border: 1px solid ; padding: 10px;"&gt;&lt;br /&gt;第2条 定義&lt;br /&gt;(7) 日記等の情報 日記、プロフィール、コメント、レビュー、画像、動画等本サービスを利用して投稿できる情報をいいます。&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;画像、コメント、レビュー、プロフィール等に関しても同様です。&lt;br /&gt;非公開日記や他ユーザ宛のメッセージも対象となります。&lt;br /&gt;自分が非公開設定していても、mixiが自身の著作物として公開することができます。&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;mixiの新規約より&lt;/span&gt;&lt;br /&gt;&lt;div style="border: 1px solid ; padding: 10px;"&gt;&lt;br /&gt;附則&lt;br /&gt;1 本利用規約は平成20年4月1日から施行します。&lt;br /&gt;2 本利用規約の施行前にユーザーによって行われた行為についても本利用規約が適用されます。&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;過去の「日記等」にもすべて適用されるということです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;さらに、現在のmixiの規約では改定に際して利用者の同意を得る必要なく、告知する義務もなく自由に改訂できるようになっています。しかもmixi利用者は将来の規約改訂にも自動的に同意することにもなっています。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;私は自分の文章や写真等を勝手に使われたくないので、4/1までにmixiからはすべて削除することにします。日記のコメントも削除されるので、コメントいただいた方には申し訳ありませんが・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;日記は外部ブログにしておいて良かった。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;・・・というよりも、何となくこういうことを見越して外部ブログにしていたというのが正直なところです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;以前からmixiの社長って、つくづくバカだなぁって思っていましたから。&lt;br /&gt;&lt;br /&gt;TVのニュースやWebでのインタビューを見ていて、お世辞にも頭の切れる人間とは思えません。&lt;br /&gt;&lt;br /&gt;mixiだって、元社員のB氏が作って会社に事業化を提案し軌道に乗せたもので、社長である笠原氏が作って育てたものではありません。B氏はIT業界の尊敬を集める素晴らしいエンジニアでしたが、そのB氏も既に笠原氏を見限って退社しています。&lt;br /&gt;&lt;br /&gt;かなり無茶な基準でmixiに批判的な日記を削除したり、批判的な言動のユーザやそのユーザを招待したユーザのアカウントを削除したりも以前から行われていました。&lt;br /&gt;&lt;br /&gt;mixi株価下落について書いたら日記を削除された、なんてことも。&lt;br /&gt;そういえば、今日付で三菱ＵＦＪ証券がmixiの格付けを2段階引き下げた、なんてニュースもありました。&lt;br /&gt;&lt;br /&gt;アカウントが削除されると突然mixiにログインできなくなり、問い合わせてもほぼ無視されます。&lt;br /&gt;&lt;br /&gt;このような事例はネットを検索すると枚挙にいとまがありません。&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;a style="font-style: italic; font-weight: bold;" href="http://www.google.co.jp/search?hl=ja&amp;amp;q=mixi+%E3%82%A2%E3%82%AB%E3%82%A6%E3%83%B3%E3%83%88+%E5%89%8A%E9%99%A4&amp;amp;lr=&amp;amp;btnG=Google+%E6%A4%9C%E7%B4%A2" target="_blank"&gt;Googleの検索結果&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;そして、今回の規約改定。&lt;br /&gt;&lt;br /&gt;バカ社長の横暴もここまできたか・・・という印象です。&lt;br /&gt;&lt;br /&gt;仮に司法の場で争うことになったらmixiが敗訴する可能性の高い規約だとは思いますが・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;※・・・と思ったら今日の夕方になって補足説明が追加されていました。&lt;br /&gt;非難・批判が集中してあわてて取り繕ったのは見え見えです。まるでどこかのテレビ局のようですね・・・（笑）&lt;br /&gt;第18条の条文は修正なしのままですし、規約そのものが変わるまで私は信用できません。&lt;br /&gt;&lt;br /&gt;今回の件で、「mixiはよく考えずに行動する企業」という私の印象はますます強くなりました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;※※・・・さらに3/5の夕方に、規約第18条を修正しますという発表がありました。&lt;br /&gt;&lt;br /&gt;この後手後手の対応。&lt;br /&gt;&lt;br /&gt;以前のユーザアカウント大量削除事件といい、今回の件といい、この会社はどういう行動をしたらユーザーや社会がどう感じるのか？どう思うのか？mixiはどう思われるのか？を考えられない、想像力や熟慮・配慮に欠けている企業、つまりリスク管理ができない企業と言わざるを得ませんね。。。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;※※※・・・規約修正案が発表されました。&lt;br /&gt;&lt;br /&gt;まあ妥当な線でしょう。「弊社は、ユーザーが投稿する日記等の情報を、本サービスの円滑な提供、弊社システムの構築、改良、メンテナンスに必要な範囲内で、使用することができるものとします。」は、将来コンテンツマッチ広告の配信等も視野に入れているのでしょうか？&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;今回の件で、約80万人がmixiを退会したそうです。&lt;br /&gt;また、私の周辺では外部ブログを持っている方はほぼ全員mixi日記から外部ブログへ移行しました。&lt;br /&gt;&lt;br /&gt;ユーザ不在で物事を進めるとこうなるという、良い教訓になったのではないでしょうか。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-8608267615527938405?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/8608267615527938405/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/03/mixi.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8608267615527938405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/8608267615527938405'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/03/mixi.html' title='mixiの規約が改訂されます'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-6885618858537388727</id><published>2008-02-28T12:13:00.016+09:00</published><updated>2008-05-12T22:26:59.395+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mixi'/><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='OpenID'/><category scheme='http://www.blogger.com/atom/ns#' term='Yahoo'/><title type='text'>mixiがOpenIDプロバイダに</title><content type='html'>先日、こんなニュースが流れてきました。&lt;br /&gt;&lt;br /&gt;OpenIDファウンデーション・ジャパン設立へ--ミクシィやヤフーも参加&lt;br /&gt;&lt;a href="http://japan.cnet.com/news/media/story/0,2000056023,20368347,00.htm" target="_blank"&gt;http://japan.cnet.com/news/media/story/0,2000056023,20368347,00.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;mixiやYahoo!JapanがOpenIDプロバイダになります。&lt;br /&gt;（Yahoo!Japanは既に対応済み）&lt;br /&gt;&lt;br /&gt;mixiも、以前からOpeinIDのAPIを利用しているフシがあったので&lt;br /&gt;そのうち正式にサービスとして公開するのかな・・・？とは思っていました。&lt;br /&gt;&lt;br /&gt;楽天は完全に出遅れ感が・・・（＾＾；&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;OpenIDってなに？・・・という人のために。&lt;br /&gt;&lt;br /&gt;mixiやYaoo!や楽天など、いろいろなネットサービスを使うようになる&lt;br /&gt;とユーザーIDやパスワードの管理がだんだん難しくなりませんか？&lt;br /&gt;&lt;br /&gt;このサイトのIDとパスワードって何だっけ・・・？って。&lt;br /&gt;&lt;br /&gt;そこで、インターネットサービスをもっと利用しやすくしよう！&lt;br /&gt;ということでいろんなWebサイトでID/パスワードを共通化しよう&lt;br /&gt;という仕組みが考えられました。&lt;br /&gt;&lt;br /&gt;この仕組み業界用語ではSSO(Single Sign On)と言います。&lt;br /&gt;OpenIDはそのSSOという仕組みのうちの一つです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;OpenIDでは、単純にOpenIDに対応しているだけのサイト（コンシューマ）と&lt;br /&gt;OpenIDのID/パスワードを発行するサイト（OpenIDプロバイダ）の2種類があり、&lt;br /&gt;mixiやYahoo!JapanはOpenIDプロバイダになることを表明しました。&lt;br /&gt;&lt;br /&gt;OpenIDに対応しているサイトなら&lt;br /&gt;OpenIDプロバイダが発行するID/パスワードでログインできるようになります。&lt;br /&gt;&lt;br /&gt;具体的には、OpenIDに対応しているサイトならどこでも&lt;br /&gt;mixiやYahoo!のID/パスワードでログインできるようになるんです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;いろんなサイトにID/パスワードをばらまくのは不安・・・&lt;br /&gt;という声もあるかと思いますが、OpenIDなら認証を行うのはOpenIDプロバイダなので、&lt;br /&gt;他のサイトにIDやパスワードが漏れることはありません。&lt;br /&gt;ログインするサイトは、OpenIDプロバイダから「このユーザは正しく認証されました」&lt;br /&gt;という情報をもらうだけです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;OpenIDが広まれば、一つのID/パスワードで&lt;br /&gt;いろんなサイトにログインできるようになるんです。&lt;br /&gt;&lt;br /&gt;OpenIDが普及したら便利になると思いませんか？&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;今のところ、ネット「OpenID」を調べても&lt;br /&gt;IT業界の人向けの情報ばかりというのが現状です。&lt;br /&gt;&lt;br /&gt;OpenIDが普及するには、一般ユーザにも直感的にわかりやすく&lt;br /&gt;受け入れられるマーケティング・プロモーション戦略が重要なのではないかと思います。&lt;br /&gt;その辺のところをmixiやYahoo!には頑張ってもらいたいですね。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-6885618858537388727?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/6885618858537388727/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/02/mixiopenid.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6885618858537388727'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6885618858537388727'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/02/mixiopenid.html' title='mixiがOpenIDプロバイダに'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-662628304118638392</id><published>2008-02-27T21:39:00.027+09:00</published><updated>2008-05-12T22:26:53.231+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='EJB3'/><title type='text'>EJB3でのホームインタフェースの作成</title><content type='html'>どのWebサイトや雑誌記事を見ても「EJB3ではホームインタフェース不要」と、書いてありますが・・・&lt;br /&gt;&lt;br /&gt;Stateful SessionBeanのセッション管理をアプリケーションで制御したい場合にはホームインタフェースが必要になる場面も多いと思います。&lt;br /&gt;&lt;br /&gt;具体的な例のひとつは、アプリケーションで一旦セッションを破棄して新規にセッションを開始したい場合です。&lt;br /&gt;&lt;br /&gt;@EJBアノテーションは&lt;span style="font-weight: bold;"&gt;コンテナがフィールドを初期化する時にしか動作しない&lt;/span&gt;ため、EJBのビジネスインタフェース型のフィールドを定義して、@EJBアノテーションを付与する方法では、このようなシチュエーションに対応できません。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;EJB3でホームインタフェースを利用する場合は、次のように実装します。&lt;br /&gt;&lt;br /&gt;ホームインタフェースを作成する。&lt;br /&gt;&lt;ul&gt;&lt;li&gt;javax.ejb.EJBLocalHome（リモート呼び出しを行う場合は javax.ejb.EJBHome）インタフェースを継承して作成する。&lt;/li&gt;&lt;li&gt;1つ以上のcreate()メソッドを定義する。戻り値の型は次の手順で作成するビジネスインタフェースの型、引数は任意（と言ってもSerializableな型）、javax.ejb.CreateException をthrowするように実装する。&lt;/li&gt;&lt;li&gt;create()メソッドは引数の数と型が異なるものをいくつでもオーバーロード可。&lt;/li&gt;&lt;/ul&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;package study.ejb3.model.service;&lt;br /&gt;&lt;br /&gt;import javax.ejb.CreateException;&lt;br /&gt;import javax.ejb.EJBLocalHome;&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt;&amp;nbsp;* ホームインタフェース。&lt;br /&gt;&amp;nbsp;* javax.ejb.EJBLocalHome または javax.ejb.EJBHome を継承して作成する。&lt;br /&gt;&amp;nbsp;* 1つ以上の create() メソッドを定義する。戻り値の型は ビジネスインタフェースの型。&lt;br /&gt;&amp;nbsp;* create() メソッドは javax.ejb.CreateException をthrowするように定義する。&lt;br /&gt;&amp;nbsp;* create() メソッドは引数の数と型が異なるものをいくつでもオーバーロード可。&lt;br /&gt;&amp;nbsp;*/&lt;br /&gt;public interface HogeServiceHome extends EJBLocalHome {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;/**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;* create() メソッド&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;*/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public HogeService create() throws CreateException;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;ビジネスインタフェースを作成する。&lt;br /&gt;&lt;ul&gt;&lt;li&gt;通常のEJB3ビジネスインタフェースとは違い、ホームインタフェースを併用する場合は javax.ejb.EJBLocalObject（リモート呼び出しを行う場合は javax.ejb.EJBObject）インタフェースを継承して作成する。&lt;/li&gt;&lt;li&gt;任意のビジネスメソッドを定義する。ただし、引数と戻り値は Serializableな型であること。これは通常のEJB3スタイルと同様。&lt;/li&gt;&lt;li&gt;また、後述するBean実装クラスで@Removeアノテーションを付けたメソッドをクライアントから呼び出せるようにするため、同メソッドを定義する。&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;package study.ejb3.model.service;&lt;br /&gt;&lt;br /&gt;import java.rmi.RemoteException;&lt;br /&gt;&lt;br /&gt;import javax.ejb.EJBLocalObject;&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt;&amp;nbsp;* ビジネスインタフェース.&lt;br /&gt;&amp;nbsp;* javax.ejb.EJBLocalObjectまたはjavax.ejb.EJBObjectを継承して作成する。&lt;br /&gt;&amp;nbsp;* 任意のビジネスメソッドを定義する。戻り値と引数はSerializableな型であること。&lt;br /&gt;&amp;nbsp;*&lt;br /&gt;&amp;nbsp;*/&lt;br /&gt;public interface HogeService extends EJBLocalObject {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;/**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;* ビジネスメソッド&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;*/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public String businessMethod() throws RemoteException;&lt;br /&gt;   &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;/**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;* Bean実装クラスで@Removeアノテーションを付けるメソッド&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;*/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public void destroy() throws RemoteException;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Bean実装クラスを作成する。&lt;br /&gt;&lt;ul&gt;&lt;li&gt;通常のEJB3スタイルとは異なり、&lt;span style="font-weight: bold;"&gt;ビジネスインタフェースをimplementsしない。&lt;/span&gt;&lt;/li&gt;&lt;li&gt;create() メソッドの引数の数と型に対応したメソッドを実装し、@Initアノテーションを付ける。メソッド名は任意。アクセス修飾子は public、戻り値の型は void 。&lt;/li&gt;&lt;li&gt;任意の名前のメソッドを実装し、@Remove アノテーションを付ける。アクセス修飾子は public、戻り値の型は void。&lt;/li&gt;&lt;li&gt;ビジネスインタフェースに定義したビジネスメソッドを実装する。javax.ejb.EJBException をthrowするように実装する。&lt;/li&gt;&lt;li&gt;クラス宣言部に @Stateful アノテーションを付ける。これは通常の EJB3スタイルと同様。&lt;/li&gt;&lt;li&gt;クラス宣言部に@LocalHome（リモート呼び出しを行う場合は@RemoteHome）アノテーションを付ける。引数に、ホームインタフェースのクラスオブジェクトを指定する。&lt;/li&gt;&lt;li&gt;クラス宣言部に@Local（リモート呼び出しを行う場合は@Remote）アノテーションを付ける。引数に、ビジネスインタフェースのクラスオブジェクトを指定する。&lt;/li&gt;&lt;li&gt;上記2つの設定により、ホームインタフェース、ビジネスインタフェース、Bean実装クラスの3つが関連付けられる。従来のEJB2.xではデプロイメントディスクリプタ（配備記述子）ejb-jar.xmlで設定した内容。&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;package study.ejb3.model.service;&lt;br /&gt;&lt;br /&gt;import javax.ejb.EJBException;&lt;br /&gt;import javax.ejb.Init;&lt;br /&gt;import javax.ejb.Local;&lt;br /&gt;import javax.ejb.LocalHome;&lt;br /&gt;import javax.ejb.Remove;&lt;br /&gt;import javax.ejb.Stateful;&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt;&amp;nbsp;* Bean実装クラス。&lt;br /&gt;&amp;nbsp;* 通常のEJB3スタイルとは異なり、ビジネスインタフェースをimplementsしない。&lt;br /&gt;&amp;nbsp;* @Local（または@Remove）アノテーションで&lt;br /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;  関連づくビジネスインタフェースを指定する。&lt;br /&gt;&amp;nbsp;* @LocalHome（または@RemoveHome）アノテーションで&lt;br /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;  関連づくホームインタフェースを指定する。&lt;br /&gt;&amp;nbsp;*/&lt;br /&gt;@Stateful(name = "HogeService")&lt;br /&gt;@Local(HogeService.class)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // ビジネスインタフェースのクラスオブジェクトを指定&lt;br /&gt;@LocalHome(HogeServiceHome.class)  // ホームインタフェースのクラスオブジェクトを指定&lt;br /&gt;public class HogeServiceBean {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;/**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;* ビジネスメソッド&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;*/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public String businessMethod() throws EJBException {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return "Hello! Business Method!";&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;/**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;* ホームオブジェクトのcreate()メソッドが呼ばれたとき&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;* （新規セッション開始時）に呼ばれる&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;*/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;@Init&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public void init() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println("init() が呼ばれた");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;/**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;* クライアントからこのメソッドが呼ばれるとセッションが破棄される&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;*/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;@Remove&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public void destroy() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println("destroy() が呼ばれた");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;EJBクライアント（EJB呼び出し側）の実装。&lt;br /&gt;&lt;ul&gt;&lt;li&gt;EJBビジネスインタフェース型ではなく、ホームインタフェース型のフィールドを定義し、@EJBアノテーションを付ける。EJBオブジェクトと同様、ホームオブジェクトも@EJBでインジェクション可能。&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;@EJB&lt;br /&gt;private HogeServiceHome home;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;ホームオブジェクトの create() メソッドを呼び出すと、EJBオブジェクトを取得可能。同時に新規にセッションが開始される。&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;// セッションを開始。&lt;br /&gt;HogeService service = home.create();&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;EJBオブジェクトの、@Remove が付いたメソッドを呼び出すとセッション破棄。&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;// セッションを破棄&lt;br /&gt;service.destroy();&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;新規にセッションを開始したい場合（EJBオブジェクトを新規に取得したい）は、再度ホームオブジェクトの create() メソッドを呼び出せばOK。&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="sourcecode"&gt;&lt;br /&gt;// セッションを改めて新規に開始。&lt;br /&gt;service = home.create();&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;@EJBアノテーションはフィールド初期化時にしか動作しないため、ホームインタフェースを使わないと新規にセッションを開始したい場合（EJBオブジェクトを新規に取得したい）は、JNDIルックアップするコードを書かないといけないことになります。&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;・・・なんだか、EJB2.xとEJB3のスタイルが混在した、えらく中途半端なコードになってしまいますね（＾＾；&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-662628304118638392?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/662628304118638392/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/02/ejb3stateful-sessionbean.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/662628304118638392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/662628304118638392'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/02/ejb3stateful-sessionbean.html' title='EJB3でのホームインタフェースの作成'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-5399176010412826465</id><published>2008-02-23T18:17:00.007+09:00</published><updated>2008-03-19T06:49:39.975+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='EJB3'/><category scheme='http://www.blogger.com/atom/ns#' term='JBoss'/><title type='text'>JBoss4.2.xにおける@EJBアノテーション</title><content type='html'>JBoss4.2はServlet2.5/EJB3にデフォルトで対応しているので、Webコンテナ上で動作するコンポーネントで @EJB アノテーションが当然使えると思っていました。&lt;br /&gt;&lt;br /&gt;JNDIルックアップのコードを書かなくても、EJBのビジネスインタフェース型のフィールドに「@EJB」とアノテーションをつけておけば、フィールド初期化時にコンテナが裏でコッソリEJBオブジェクトのインスタンスを取得してフィールドにセットしてくれるという機能です。アノテーションによるDI(Dependency Injection)ってやつですね。&lt;br /&gt;&lt;br /&gt;@EJB&lt;br /&gt;private HogeService;&lt;br /&gt;&lt;br /&gt;こう書いておけば、コンテナがこのフィールドを初期化する際に、HogeServiceインタフェースを実装したEJBオブジェクトをJNDIサービスより取得してフィールドにセットしてくれます。&lt;br /&gt;&lt;br /&gt;しかし、結論から言うとJBoss4.2ではWebコンテナ上でのこの動作はサポートされていません。&lt;br /&gt;JBossの公式文書に下記のような記述がありました。&lt;br /&gt;&lt;br /&gt;Java EE 5 allows you to inject EJB3 bean instances directly into the web application via annotations without explicit JNDI lookup. This behavior is not yet supported in JBoss AS 4.2.&lt;br /&gt;&lt;a href="http://viewvc.jboss.org/cgi-bin/viewvc.cgi/jbossas/projects/docs/trunk/Server_Configuration_Guide/ja-JP/EJB3.po?revision=65669&amp;amp;pathrev=68449" target="_blank"&gt;http://viewvc.jboss.org/cgi-bin/viewvc.cgi/jbossas/projects/docs/trunk/Server_Configuration_Guide/ja-JP/EJB3.po?revision=65669&amp;amp;pathrev=68449&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;JBoss4.2.xはEJB3 (JSR-220) 対応のEJBコンテナを実装し、Servlet2.5 (JSR-154) 対応のWebコンテナを実装していますが、Common Annotations (JSR-250) は完全に実装されていないようです。&lt;br /&gt;&lt;br /&gt;結局、ServletコンテナからEJBを利用するには従来のEJB2.x時代のようにJNDIルックアップするコードを書かなくてはいけません。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;・・・道理で、Web上にもWebコンテナから@EJBでEJBオブジェクトをインジェクションするサンプルが見つからないわけです。&lt;br /&gt;&lt;br /&gt;これで1日ぐらいハマりました。&lt;br /&gt;&lt;br /&gt;今度のセミナーではCommon Annotations (JSR-250) が動作する JBoss5.0.0Beta4を使うことにします・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;それにしても、JBossの情報って少ないですね。利用者が減っているのでしょうか？少なくともネット上の情報を探す限りでは、積極的にブログ等へ情報をアップするエッジの効いたエンジニアの利用が減っている感じがします。&lt;br /&gt;JavaEE5完全対応のアプリケーションサーバを正式リリースできていないのはJBossだけですしね。OSSのJavaEEアプリサーバでは、最近はGlassfishの勢いが目立ちます。GlassfishはNetBeansにも標準でバンドルされるようになったし。&lt;br /&gt;&lt;br /&gt;※ところが、JBoss5.0.0Beta4はJMSがうまく動かなかったり、セキュリティロールがうまく動かなかったりでした。具体的には、QueueのJNDIサービスへの登録時に例外が発生してデプロイできません。セキュリティロールは、@RollsAllowedで指定していないロールでもメソッドの実行が許可されてしまいました。まあ、βなのでこんなもんですね・・・&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-5399176010412826465?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/5399176010412826465/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/02/jboss42javaee5.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5399176010412826465'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5399176010412826465'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/02/jboss42javaee5.html' title='JBoss4.2.xにおける@EJBアノテーション'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-5357641991330155280</id><published>2008-02-13T19:54:00.011+09:00</published><updated>2008-05-12T22:26:28.397+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FireFox'/><title type='text'>FireFox3β3</title><content type='html'>リリースされました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.mozilla.com/en-US/firefox/all-beta.html" target="_blank"&gt;http://www.mozilla.com/en-US/firefox/all-beta.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_qRW47nLTz-8/R7LOHXqsR8I/AAAAAAAABVE/XDWz1YbThNo/s1600-h/firefox3b3.JPG" target="_blank"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_qRW47nLTz-8/R7LOHXqsR8I/AAAAAAAABVE/XDWz1YbThNo/s400/firefox3b3.JPG" alt="" id="BLOGGER_PHOTO_ID_5166418348554864578" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;いやぁ、今度のデフォルトページもぶっ飛んでますね～&lt;br /&gt;&lt;br /&gt;&lt;s&gt;残念ながら、「キーホール」と呼ばれる新しいUIデザインの採用は見送られました。&lt;/s&gt;&lt;br /&gt;※追記：メニューバーの「表示」→「ツールバー」→「カスタマイズ」から&lt;br /&gt;「小さいアイコンを使用」のチェックを外すと有効になります。&lt;br /&gt;デフォルトではオフになっているというだけでした。&lt;br /&gt;&lt;br /&gt;ちょっと使ってみてすぐに気づいたのですが、&lt;br /&gt;Gmailで、レイアウトが崩れることがあります。&lt;br /&gt;&lt;br /&gt;ラベルとSubjectの長さの合計がウィンドウの横幅を超えると&lt;br /&gt;Subjectの行が改行してしまいます。&lt;br /&gt;&lt;br /&gt;β2ではこんなことはありませんでした。&lt;br /&gt;&lt;br /&gt;もうちょっといろいろいじってみます。&lt;br /&gt;&lt;br /&gt;β2では、モバイルユース時などでデータ送受信中に回線がとぎれると&lt;br /&gt;いきなり落ちましたが、&lt;br /&gt;β3はもう少し安定しているでしょうか・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;※追記：&lt;br /&gt;レスポンス待ちや受信中にネットワークが切れるといきなり落ちるという&lt;br /&gt;不安定さはまだまだ残っています。&lt;br /&gt;&lt;br /&gt;3月中にβ4がリリースされる予定で、その次は安定版とのことです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-5357641991330155280?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/5357641991330155280/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/02/firefox33.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5357641991330155280'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5357641991330155280'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/02/firefox33.html' title='FireFox3β3'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_qRW47nLTz-8/R7LOHXqsR8I/AAAAAAAABVE/XDWz1YbThNo/s72-c/firefox3b3.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-5191742853788838758</id><published>2008-02-09T00:26:00.002+09:00</published><updated>2008-03-24T23:10:34.524+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Tomcat'/><title type='text'>Tomcat5.5.26 &amp; Tomcat6.0.16</title><content type='html'>相次いでリリースされました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://tomcat.apache.org/" target="_blank"&gt;http://tomcat.apache.org/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;どちらも、バグフィックスと依存ライブラリや&lt;br /&gt;同梱するEclipse JDT コンパイラのバージョンアップが中心です。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-5191742853788838758?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/5191742853788838758/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/02/tomcat5526-tomcat6016.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5191742853788838758'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5191742853788838758'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/02/tomcat5526-tomcat6016.html' title='Tomcat5.5.26 &amp; Tomcat6.0.16'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-9025309629075809730</id><published>2008-02-06T11:29:00.002+09:00</published><updated>2008-04-10T15:50:25.826+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iBatis'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='SpringFramework'/><title type='text'>iBatis</title><content type='html'>最近仕事で使っています。&lt;br /&gt;実際に仕事で使うようになるまで、iBatisを詳しくは知りませんでした。&lt;br /&gt;&lt;br /&gt;「SQLを直接指定できるORマッピングフレームワーク」&lt;br /&gt;「Apache iBatis Projectで開発されているOSS」&lt;br /&gt;&lt;br /&gt;という程度の認識でした。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;調べてみると、O/Rマッピングフレームワークとしての機能はひととおり備えています。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;が・・・しかし・・・&lt;br /&gt;&lt;br /&gt;こりゃ、O/Rマッピングフレームワークと言うよりは&lt;br /&gt;SQL/Oマッピングフレームワークですね。&lt;br /&gt;&lt;br /&gt;「オブジェクトの永続化」という考え方は薄く、&lt;br /&gt;「SQL文をオブジェクトにマッピングする」というイメージ。&lt;br /&gt;iBatisではマッピングの対象は、テーブルやカラムではなく、あくまでSQL文です。&lt;br /&gt;&lt;br /&gt;HibernateやJPAでは、エンティティオブジェクトとテーブル、&lt;br /&gt;プロパティとカラムを関連づけていきます。&lt;br /&gt;&lt;br /&gt;それに対してiBatisでは、エンティティオブジェクトとSQL文を関連づけます。&lt;br /&gt;テーブルありきの、完全にデータベースドリブンなボトムアップアプローチ。&lt;br /&gt;「オブジェクトを永続化する」というアプローチではありません。&lt;br /&gt;関連やカスケード処理、Lazy Loading機能は弱く、SQLで何とかする感じですね。&lt;br /&gt;&lt;br /&gt;SQL/Oマッピングフレームワークというアプローチは&lt;br /&gt;オブジェクト指向としては美しくないかもしれませんが、&lt;br /&gt;とても現実的だと捉えるのもありかと思います。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;で、このiBatisですがO/Rマッピング（というかSQL/Oマッピング）フレームワークと&lt;br /&gt;DAOフレームワークが用意されていますが、最新バージョン（2.3.0）では&lt;br /&gt;DAOフレームワークは非推奨となり、&lt;br /&gt;SpringのiBatis連係機能を利用することが推奨されています。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ところが・・・&lt;br /&gt;Apache iBatis Projectからは、DBスキーマ情報からエンティティオブジェクトとDAOを&lt;br /&gt;自動生成するツール「Abator」がリリースされていますが、&lt;br /&gt;このDAOは非推奨なDAOフレームワークにしか対応していません。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ということで、DBスキーマ情報からエンティティオブジェクトと&lt;br /&gt;DAOと設定ファイル類を自動生成するツールを自作しています。&lt;br /&gt;テンプレートエンジンには FreeMarker を使いました。&lt;br /&gt;Antタスクとして作成したので、&lt;br /&gt;コマンドラインからでもEclipseからでもNetBeansからでも利用できます。&lt;br /&gt;&lt;br /&gt;シンプルなCRUDは全部自動生成しました。&lt;br /&gt;どんな単純なCRUDでも全部SQL文を書かなくてはならないという&lt;br /&gt;iBatisの欠点というか面倒くさい点を克服できます。&lt;br /&gt;Genericsを利用した、よいDAOができたと自画自賛です（＾＾；&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;内部的にはインスタンス管理とDB接続管理がラクなのでSpringを使いました。&lt;br /&gt;Webアプリケーションではないところで使うのは初めてでしたが、&lt;br /&gt;改めて依存オブジェクトの外部注入の素晴らしさを実感しています。&lt;br /&gt;他のファイルを生成するような機能を追加するときも、&lt;br /&gt;既存のコードを修正せずに機能追加できます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ただ、個人的には実装クラスとインタフェースを分離する必要が無いと感じる&lt;br /&gt;オブジェクトも多いのですが、「Springで管理するクラスはインタフェースが分離されている」&lt;br /&gt;というお作法というか、暗黙の了解みたいなものがあるので&lt;br /&gt;個人的には疑問を感じつつ渋々インタフェースと実装クラスに分けたクラスが多いです。&lt;br /&gt;実装クラスとインタフェースが分かれていないと何か特別な理由があるのか？&lt;br /&gt;と勘ぐられそうなほど常識化している勢いですからね・・・・&lt;br /&gt;&lt;br /&gt;この常識は何とかしたいものです。&lt;br /&gt;必要以上に作成・管理しなければいけないファイルを増やす必要など無いはずですから。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-9025309629075809730?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/9025309629075809730/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/01/ibatis.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/9025309629075809730'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/9025309629075809730'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/01/ibatis.html' title='iBatis'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-6357836338114965165</id><published>2008-01-31T23:56:00.004+09:00</published><updated>2008-04-10T15:53:05.989+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='OpenID'/><category scheme='http://www.blogger.com/atom/ns#' term='Yahoo'/><title type='text'>Yahoo！JAPANもOpenIDに対応</title><content type='html'>先日の日記で、米Yahoo!がOpenIDに対応したと書きましたが・・・&lt;br /&gt;&lt;a href="http://techjudith.blogspot.com/2008/01/yahooopenid.html"　target="_blank"&gt;http://techjudith.blogspot.com/2008/01/yahooopenid.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;OpenIDとは&lt;br /&gt;&lt;a href="http://openid.yahoo.co.jp/" target="_blank"&gt;http://openid.yahoo.co.jp/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Yahoo! JAPAN IDはネットのSuicaになるか? - ヤフーがOpenID発行サービス&lt;br /&gt;&lt;a href="http://journal.mycom.co.jp/news/2008/01/31/005/index.html" target="_blank"&gt;http://journal.mycom.co.jp/news/2008/01/31/005/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Yahoo！JAPAN、OpenIDの発行をスタート&lt;br /&gt;&lt;a href="http://www.itmedia.co.jp/news/articles/0801/30/news051.html" target="_blank"&gt;http://www.itmedia.co.jp/news/articles/0801/30/news051.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;「Yahoo! JAPAN ID」でOpenID対応サイトが利用可能に&lt;br /&gt;&lt;a href="http://internet.watch.impress.co.jp/cda/news/2008/01/30/18281.html" target="_blank"&gt;http://internet.watch.impress.co.jp/cda/news/2008/01/30/18281.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;はてなもOpenID対応しているのですが、&lt;br /&gt;&lt;a href="http://www.hatena.ne.jp/info/openid" target="_blank"&gt;http://www.hatena.ne.jp/info/openid&lt;/a&gt;&lt;br /&gt;はてなのユーザはどちらかというと&lt;br /&gt;インターネットやコンピュータリテラシの高い層だと思います。&lt;br /&gt;&lt;br /&gt;日本最大の検索・ポータルサイトであるYahoo!JAPANが&lt;br /&gt;OpenIDに対応したことの意義はとても大きいと思います。&lt;br /&gt;&lt;br /&gt;日本でもOpenIDが一気に市民権を得る可能性がありますね。&lt;br /&gt;&lt;br /&gt;あとはmixi・楽天が対応したら日本中のかなりのユーザが利用できることになりますね。&lt;br /&gt;mixiは裏ではこっそりOpenIDを利用しているようですが・・・&lt;br /&gt;&lt;a href="http://blog.fkoji.com/2007/08051128.html" target="_blank"&gt;http://blog.fkoji.com/2007/08051128.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;でも、Yahoo!やmixi、楽天のユーザが普通にOpenIDを利用するようになったら&lt;br /&gt;フィッシングの被害がますます増えそう・・・&lt;br /&gt;&lt;br /&gt;Yahoo!やmixi、楽天以外のサイトでYahoo!やmixi、楽天のログイン画面が&lt;br /&gt;表示されることがあたりまえになり、そこでID・パスワードを入力することに&lt;br /&gt;抵抗が無くなりますからね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;このブログにもOpenIDでログインしてコメントをつけることができます。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-6357836338114965165?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/6357836338114965165/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/01/yahoojapanopenid.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6357836338114965165'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6357836338114965165'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/01/yahoojapanopenid.html' title='Yahoo！JAPANもOpenIDに対応'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-5930809099396491045</id><published>2008-01-28T22:48:00.002+09:00</published><updated>2008-03-24T23:10:58.532+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='au'/><title type='text'>auの大発表は</title><content type='html'>au、国内初の電子ペーパー搭載端末など春モデル発表&lt;br /&gt;http://k-tai.impress.co.jp/cda/article/news_toppage/38203.html&lt;br /&gt;&lt;br /&gt;KDDI高橋氏、春モデルで3つの特徴をアピール &lt;br /&gt;http://k-tai.impress.co.jp/cda/article/news_toppage/38212.html&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;もう、ガッカリですよ。&lt;br /&gt;&lt;br /&gt;iPhoneやります！とか、&lt;br /&gt;&lt;br /&gt;DoCoMoに先駆けてYouTubeケータイ・Gmailケータイ・Picasaケータイを発表！&lt;br /&gt;&lt;br /&gt;とか期待してたのに・・・&lt;br /&gt;&lt;br /&gt;端末も海外対応や高速パケット通信でDoCoMo、SoftBankに追いつかず。&lt;br /&gt;&lt;br /&gt;DoCoMoのGoogleとの提携を受けて「やっとauに追いついた」という&lt;br /&gt;KDDI社長のコメントがありましたが、個人的には一気に追い抜かれた感があります。&lt;br /&gt;&lt;br /&gt;Google連携サービスとしてはauは検索とau oneメール（Gmail）ぐらいしか対応していませんが&lt;br /&gt;DoCoMoはカレンダーやPicasa、YouTube等の対応を既に表明していますね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;やっぱり最近のau/KDDIって保守的。。。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-5930809099396491045?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/5930809099396491045/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/01/au.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5930809099396491045'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5930809099396491045'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/01/au.html' title='auの大発表は'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-2229397887666852881</id><published>2008-01-25T18:55:00.002+09:00</published><updated>2008-03-24T23:11:10.750+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='au'/><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='DoCoMo'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>ドコモとGoogleの提携</title><content type='html'>先日、auが28日に大発表を行うという発表があったのを受けて、&lt;br /&gt;このブログではGoogleとの連携強化を期待する思いを書きました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://techjudith.blogspot.com/2008/01/au-by-kddi.html" target="_blank"&gt;http://techjudith.blogspot.com/2008/01/au-by-kddi.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;なんと、今週NTTドコモがGoogleとの大提携を発表してビックリしているところです。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://japan.cnet.com/mobile/story/0,3800078151,20184967,00.htm" target="_blank"&gt;http://japan.cnet.com/mobile/story/0,3800078151,20184967,00.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;私がau/Googleに期待したことを、ドコモがやってしまいそうな予感・・・&lt;br /&gt;&lt;br /&gt;今回の発表によればYouTube、Picasa、Google Calendarとの連携など、&lt;br /&gt;私の望むサービスがいくつか実現されそうです。&lt;br /&gt;&lt;br /&gt;来週のauの発表がどれだけインパクトあるものなのかを見てからになりますが、&lt;br /&gt;ドコモへ乗り換えようかと考え始めています。&lt;br /&gt;&lt;br /&gt;AppleのiPhone日本進出の動きも気になりますね。&lt;br /&gt;ドコモかソフトバンクかと言われていますが、&lt;br /&gt;ドコモはGoogle Androidへの協力も正式発表しました。&lt;br /&gt;&lt;br /&gt;ドコモがiPhoneもAndroidも・・・は考えにくいだけに、iPhoneはソフトバンクでしょうか。&lt;br /&gt;&lt;br /&gt;それとも、28日のauの大発表ってもしかしたら・・・？&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-2229397887666852881?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/2229397887666852881/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/01/google.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/2229397887666852881'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/2229397887666852881'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/01/google.html' title='ドコモとGoogleの提携'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-442768476844418694</id><published>2008-01-20T13:05:00.004+09:00</published><updated>2008-04-10T15:53:00.226+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Blogger'/><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='OpenID'/><title type='text'>BloggerがOpenIDプロバイダになりました</title><content type='html'>OpenIDの記事を書いたばかりですが、Bloggerユーザに朗報です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://bloggerindraft.blogspot.com/2008/01/new-feature-blogger-as-openid-provider.html" target="_blank"&gt;http://bloggerindraft.blogspot.com/2008/01/new-feature-blogger-as-openid-provider.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Bloggerユーザであれば、別途OpenIDプロバイダでアカウントを作成することなく&lt;br /&gt;ブログのURLイコールOpenIDアカウントとしてすぐに使えるようになります。&lt;br /&gt;&lt;br /&gt;この調子で他のポータルサイトやブログサービスも追従して&lt;br /&gt;普及に弾みを付けて欲しいところです。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-442768476844418694?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/442768476844418694/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/01/bloggeropenid.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/442768476844418694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/442768476844418694'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/01/bloggeropenid.html' title='BloggerがOpenIDプロバイダになりました'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-6110034704458422302</id><published>2008-01-18T13:31:00.004+09:00</published><updated>2008-04-10T15:52:54.135+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='OpenID'/><category scheme='http://www.blogger.com/atom/ns#' term='Yahoo'/><title type='text'>米Yahoo!がOpenIDに対応</title><content type='html'>米ヤフー、OpenIDのサポートを発表&lt;br /&gt;&lt;a href="http://japan.cnet.com/news/media/story/0,2000056023,20365129,00.htm"&gt;http://japan.cnet.com/news/media/story/0,2000056023,20365129,00.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;これで本格普及へ弾みがつくかもしれませんね。&lt;br /&gt;&lt;br /&gt;「無料ユーザ登録が必要です」だけで課金等が発生しないようなサイトは&lt;br /&gt;どんどん対応して欲しいです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;しかし・・・&lt;br /&gt;&lt;br /&gt;このブログをホスティングしている「Blogger」もOpenIDをサポートしていて、&lt;br /&gt;コメントするときにOpenIDでログインしてコメントできるのですが&lt;br /&gt;あまり使われていませんね・・・&lt;br /&gt;&lt;br /&gt;OpenIDがなかなか普及しない理由は、マーケティング用途などのために&lt;br /&gt;ユーザ登録情報を自分のところで握っておきたいサイトが多いためでしょうか。&lt;br /&gt;PVじゃなくて登録ユーザ数でサイトの活況ぶりを示したいという思惑もあるでしょうし。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-6110034704458422302?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/6110034704458422302/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/01/yahooopenid.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6110034704458422302'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/6110034704458422302'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/01/yahooopenid.html' title='米Yahoo!がOpenIDに対応'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-270800962199630263</id><published>2008-01-17T11:29:00.003+09:00</published><updated>2008-04-10T15:50:31.591+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='au'/><category scheme='http://www.blogger.com/atom/ns#' term='KDDI'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><title type='text'>au by KDDI が大発表を行うことを発表</title><content type='html'>本日、中部電力子会社の光ファイバー通信事業を買収することを発表したKDDIですが、&lt;br /&gt;本日さらに au に関する大発表を1月28日に行うことを発表したとの報道が一部で流れています。&lt;br /&gt;&lt;br /&gt;昨日次世代プラットフォームKCP+対応端末をお披露目したばかりですが&lt;br /&gt;さらなる新サービスの発表でしょうか？&lt;br /&gt;&lt;br /&gt;個人的には、Googleのサービスとの提携をより強めて欲しいと思います。&lt;br /&gt;YouTubeケータイ、デジカメ画像をPicasaへ保存、&lt;br /&gt;スケジュール帳はGoogleカレンダーと自動同期、&lt;br /&gt;auoneメールと携帯メールの完全同期化、&lt;br /&gt;添付ファイルがテキスト・Word・Excel・PDF・HTML・PPT等だったら&lt;br /&gt;Google Documentへ自動保存・・・&lt;br /&gt;&lt;br /&gt;いろいろ考えられますね。&lt;br /&gt;&lt;br /&gt;auは最近ソフトバンクやドコモの3Gに押されそうになってきたところです。&lt;br /&gt;高速パケット通信では大きく後れを取っています。&lt;br /&gt;&lt;br /&gt;どんなサプライズを与えてくれるでしょうか？&lt;br /&gt;&lt;br /&gt;いち au ユーザーとしては、非常に楽しみです。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.au.kddi.com/" target="_blank"&gt;http://www.au.kddi.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-270800962199630263?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/270800962199630263/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/01/au-by-kddi.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/270800962199630263'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/270800962199630263'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/01/au-by-kddi.html' title='au by KDDI が大発表を行うことを発表'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-5364950314469362760</id><published>2008-01-17T00:34:00.002+09:00</published><updated>2008-03-24T23:15:24.155+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='BEA'/><category scheme='http://www.blogger.com/atom/ns#' term='News'/><category scheme='http://www.blogger.com/atom/ns#' term='Sun'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle'/><title type='text'>Oracle, BEA, Sun, MySQL</title><content type='html'>OracleがBEAを買収しました。&lt;br /&gt;&lt;br /&gt;Oracle to Acquire BEA Systems&lt;br /&gt;&lt;a href="http://www.oracle.com/corporate/press/2008_jan/bea.html" target="_blank"&gt;http://www.oracle.com/corporate/press/2008_jan/bea.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;一度はBEA側が金額面の理由(67億ドル)で拒否したのですが、&lt;br /&gt;とうとう85億ドルで合意に至ったようですね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SunがMySQLを買収しました。&lt;br /&gt;&lt;br /&gt;Sun to Acquire MySQL Press Kit&lt;br /&gt;&lt;a href="http://www.sun.com/aboutsun/media/presskits/2008-0116/index.jsp" target="_blank"&gt;http://www.sun.com/aboutsun/media/presskits/2008-0116/index.jsp&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;こちらも私には意外に思えるニュースです。&lt;br /&gt;SunはどちらかというとMySQLよりもPostgreSQLと親密だと思っていたので・・・&lt;br /&gt;昨年の Sun Tech Days Tokyo 2007 でも PostgreSQLのブースが出展されていました。&lt;br /&gt;&lt;br /&gt;SunはLAMPの"M"を自社DBブランドとして手に入れたことになりますね。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-5364950314469362760?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/5364950314469362760/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/01/oracle-bea-sun-mysql.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5364950314469362760'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5364950314469362760'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/01/oracle-bea-sun-mysql.html' title='Oracle, BEA, Sun, MySQL'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-5922151221951566278</id><published>2008-01-15T23:24:00.004+09:00</published><updated>2008-04-10T15:50:46.456+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><title type='text'>YouTube</title><content type='html'>最近、YouTube関連のニュースが目に付きます。&lt;br /&gt;&lt;br /&gt;ぐるなび、YouTube日本語版で動画配信サービスを開始&lt;br /&gt;&lt;a href="http://japan.cnet.com/news/biz/story/0,2000056020,20364841,00.htm?ref=rss" target="_blank"&gt;http://japan.cnet.com/news/biz/story/0,2000056020,20364841,00.htm?ref=rss&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ビエラでYouTube、テレビ視聴に変化？&lt;br /&gt;&lt;a href="http://japan.cnet.com/panel/story/0,3800077799,20364754,00.htm" target="_blank"&gt;http://japan.cnet.com/panel/story/0,3800077799,20364754,00.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Googleと松下が協業 - ビエラPZ850シリーズでYouTube/Picasa対応&lt;br /&gt;&lt;a href="http://journal.mycom.co.jp/news/2008/01/10/004/" target="_blank"&gt;http://journal.mycom.co.jp/news/2008/01/10/004/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;自民党、「YouTube日本版」にブランドチャンネル「LDP channel」を開設&lt;br /&gt;&lt;a href="http://japan.cnet.com/news/media/story/0,2000056023,20363577,00.htm" target="_blank"&gt;http://japan.cnet.com/news/media/story/0,2000056023,20363577,00.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;自民党に続き、社民党が「YouTube日本版」にブランドチャンネル開設&lt;br /&gt;&lt;a href="http://japan.cnet.com/news/media/story/0,2000056023,20363796,00.htm" target="_blank"&gt;http://japan.cnet.com/news/media/story/0,2000056023,20363796,00.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;元S社のT氏の言葉をお借りすれば、&lt;br /&gt;『YouTubeは、動画アップロードUIという意味ではデータ＋コンポーネントの配信だけど、&lt;br /&gt;マッシュアップしてデータをプロットするためのコンテナの配信であるという形に捉えたほうが正しい。』&lt;br /&gt;と言えるでしょう。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;YouTubeは、動画をアップロードして、Youtubeのサイトで閲覧するのみならず、&lt;br /&gt;アップロードした動画をどのWebサイトにもカンタンに貼り付けられる機能を備えています。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;マスメディアを超えて、個人がブログ等を利用して情報を発信・配信する時代が既に到来しています。&lt;br /&gt;Web制作会社の力を借りずに、個人がブログやWikiを利用してカンタンにWebサイトを立ち上げられる時代です。&lt;br /&gt;今年あたりからは、個人が動画配信するトレンドが本格的に到来するでしょう。&lt;br /&gt;&lt;br /&gt;動画をWebサイトで公開するということに関しては&lt;br /&gt;技術的なハードルは限りなく低くなったのですから、あとはコンテンツ作成能力だけです。&lt;br /&gt;Web小説の時代から、Webドラマ・Webシネマの時代に入ります。&lt;br /&gt;&lt;br /&gt;アイディアやセンスはあるけど、お金や技術力のないクリエイターのみなさんには朗報ですね！&lt;br /&gt;&lt;br /&gt;逆に、動画を据え付けられるのをウリにしていたWeb制作会社などはさらに打撃を受けることでしょう・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;※追記：&lt;br /&gt;ある人に言われて思ったのですが、&lt;br /&gt;YouTubeではなくニコ動に演説をアップする気概のある政治家、いませんかね・・・&lt;br /&gt;大荒れも予想される反面、これ以上ない有権者の率直な生の声が得られると思うのですが。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-5922151221951566278?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/5922151221951566278/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/01/youtube.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5922151221951566278'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5922151221951566278'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/01/youtube.html' title='YouTube'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-7555432938849970955</id><published>2008-01-15T22:07:00.004+09:00</published><updated>2008-05-12T22:11:59.827+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Salesforce'/><title type='text'>Salesforce</title><content type='html'>最近、Salesforce関連のニュースが目に付きます。&lt;br /&gt;&lt;br /&gt;ソフトバンクBB、Salesforceと連携可能なASP型Web会議サービス &lt;br /&gt;&lt;a href="http://www.softbankbb.co.jp/news/press/2008/p0115_01.html" target="_blank"&gt;http://www.softbankbb.co.jp/news/press/2008/p0115_01.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;SaaS型プロジェクト管理ツール『@task』がSalesforceと連携&lt;br /&gt;&lt;a href="http://japan.cnet.com/release/story/0,3800075553,00025977p,00.htm" target="_blank"&gt;http://japan.cnet.com/release/story/0,3800075553,00025977p,00.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Salesforce上で稼働するメール配信システム、トライコーン&lt;br /&gt;&lt;a href="http://www.atmarkit.co.jp/news/200712/17/tricorn.html" target="_blank"&gt;http://www.atmarkit.co.jp/news/200712/17/tricorn.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.tricorn.co.jp/press/207.phtml" &gt;http://www.tricorn.co.jp/press/207.phtml&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Salesforceと連携する帳票アプライアンス「帳票くん」、12月発売 &lt;br /&gt;&lt;a href="http://enterprise.watch.impress.co.jp/cda/hardware/2007/12/18/11895.html" target="_blank"&gt;http://enterprise.watch.impress.co.jp/cda/hardware/2007/12/18/11895.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.sunbridge.com/news/press/2007/12/salesforce.html" target="_blank"&gt;http://www.sunbridge.com/news/press/2007/12/salesforce.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;私も少し前まで、自分の勤務先の会社でforce.comプラットフォームアプリケーションのSIが実現できないか？と考えていました。&lt;br /&gt;&lt;br /&gt;T氏には一度、自分の勤務先へ来ていただいたことがあり、&lt;br /&gt;それをきっかけに、ネット上で調べてみたら&lt;br /&gt;T氏が尊敬すべき素晴らしいエンジニアであることを知り・・・&lt;br /&gt;&lt;br /&gt;このT氏と仕事ができるかもしれない！というのが&lt;br /&gt;私のforce.comプラットフォームアプリケーションの仕事をしたい！&lt;br /&gt;と思う原動力の一つだったのですが・・・&lt;br /&gt;&lt;br /&gt;非常に残念なことに、Salesforce社からT氏が退社したと知り、&lt;br /&gt;その意欲がすこし減退気味です・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;でも、多くのアナリストが2008年はSaaSの時代、サービスの時代と提言しています。&lt;br /&gt;&lt;br /&gt;私の、Salesforceへの直近のモチベーションは下がったものの&lt;br /&gt;今年、SaaSへのアンテナはより敏感に張っておく必要がありそうです。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-7555432938849970955?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/7555432938849970955/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/01/salesforce.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/7555432938849970955'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/7555432938849970955'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/01/salesforce.html' title='Salesforce'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-783755119690934984</id><published>2008-01-13T21:32:00.003+09:00</published><updated>2008-04-10T15:51:33.959+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FireFox'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>FireFoxβ3とSafari3</title><content type='html'>最近になって、FireFox3β2と、Safari3 Public Beta を検証しています。&lt;br /&gt;&lt;br /&gt;どちらもまだ、「ベータ版だから許される」という程度の安定度ですね。&lt;br /&gt;&lt;br /&gt;使っていると突然前触れもなくスッコーンと落ちることがあります。&lt;br /&gt;&lt;br /&gt;FireFoxは、現行のバージョン2がすごいメモリ食い（というか、メモリリークがある）なので&lt;br /&gt;FireFox3β2に期待しています。&lt;br /&gt;あきらかにメモリの使用量は減っています。バージョン2で200MB～250MB食うところで&lt;br /&gt;バージョン3β2では180MB程度に収まっています。&lt;br /&gt;&lt;br /&gt;ブラウザのURL欄、マルチバイト文字がデコードされて表示されます。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_qRW47nLTz-8/R5NiaaONJNI/AAAAAAAABM4/clfrFdnvFE8/s1600-h/firefox3b2_search.JPG" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_qRW47nLTz-8/R5NiaaONJNI/AAAAAAAABM4/clfrFdnvFE8/s400/firefox3b2_search.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5157574204124374226" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;でもこれをコピペすると、ちゃんとエンコードされた文字列がクリップボードに入ります。&lt;br /&gt;&lt;br /&gt;なかなかよくできていますね。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_qRW47nLTz-8/R4oFjqONIsI/AAAAAAAABIc/F5OqbWv2fGw/s1600-h/firefox3b2.JPG" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_qRW47nLTz-8/R4oFjqONIsI/AAAAAAAABIc/F5OqbWv2fGw/s400/firefox3b2.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5154938833666384578" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;・・・しかし、このデフォルトトップページには驚きました（＾＾；&lt;br /&gt;ロボットが目から光線を出しています。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Safariは、アンチエイリアシング処理が独自で、フォント描画がとてもキレイです。&lt;br /&gt;とてもWindowsとは思えません。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_qRW47nLTz-8/R4oFj6ONItI/AAAAAAAABIk/p6WKS75XkBY/s1600-h/safari3beta.JPG" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_qRW47nLTz-8/R4oFj6ONItI/AAAAAAAABIk/p6WKS75XkBY/s400/safari3beta.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5154938837961351890" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;でもまだまだ問題点が山積みっぽいです。&lt;br /&gt;&lt;br /&gt;タブとタイトルバーで表示される文字が違ったり。&lt;br /&gt;&lt;br /&gt;Thinkpadではトラックポイントでのスクロールが効かなかったり、&lt;br /&gt;戻るボタンで2つ前の履歴に戻ったり。&lt;br /&gt;&lt;br /&gt;どう設定してもリンクが新しいタブではなく新しいウィンドウで開いたり。&lt;br /&gt;&lt;br /&gt;JavaScriptの動作も不完全です。&lt;br /&gt;これはSafariのせいではなく、サイト側がSafariに対応していない可能性も高いのですが。&lt;br /&gt;&lt;br /&gt;FireFoxよりも格段にメモリ消費が少なく、描画が速い点が高評価ポイントです。&lt;br /&gt;タスクマネージャを見ながら使っている限りでは、FireFoxのほぼ1/3ぐらいですね。&lt;br /&gt;&lt;br /&gt;Linux版もできたら最高。&lt;br /&gt;&lt;br /&gt;今後に期待大！です。&lt;br /&gt;&lt;br /&gt;※追記：&lt;br /&gt;日本語が表示できないという噂も多いですが、これはデフォルトでは&lt;br /&gt;日本語が使えないフォントが設定されていると言うだけで、&lt;br /&gt;日本語がOKなフォントを使えるように設定してあげれば問題ありません。&lt;br /&gt;&lt;br /&gt;1. Edit→Preference→Appearance→Selectでフォント選択画面を開きます&lt;br /&gt;2. 多くの日本語OKなフォント名が□□□□になっているので、MS UI Gothi&lt;br /&gt;　　（唯一（？）日本語が使えるフォントでフォント名に日本語が使われていないフォント）&lt;br /&gt;　　をいったん選択します。&lt;br /&gt;3. Safariを再起動します。&lt;br /&gt;4. もう一度Edit→Preference→Appearance→Selectでフォント選択画面を開きます。&lt;br /&gt;5. そうすれば他のフォント名も正しく表示されるようになります。&lt;br /&gt;　　お好きなフォントを選択してください。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_qRW47nLTz-8/R5LFzaONJMI/AAAAAAAABMs/b1PvGfbm1lY/s1600-h/safari_yahoo.jpg" target="_blank"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_qRW47nLTz-8/R5LFzaONJMI/AAAAAAAABMs/b1PvGfbm1lY/s400/safari_yahoo.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5157402010295542978" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-783755119690934984?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/783755119690934984/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/01/firefox3safari3.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/783755119690934984'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/783755119690934984'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/01/firefox3safari3.html' title='FireFoxβ3とSafari3'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_qRW47nLTz-8/R5NiaaONJNI/AAAAAAAABM4/clfrFdnvFE8/s72-c/firefox3b2_search.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2393198689658204489.post-5108181161233437453</id><published>2008-01-13T18:59:00.003+09:00</published><updated>2008-04-10T15:52:03.584+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web2.0'/><title type='text'>中国最大の検索エンジン「百度」が日本進出</title><content type='html'>&lt;a href="http://internet.watch.impress.co.jp/cda/news/2006/12/05/14130.html" target="_blank"&gt;http://internet.watch.impress.co.jp/cda/news/2006/12/05/14130.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://japan.cnet.com/interview/story/0,2000055954,20337724,00.htm" target="_blank"&gt;http://japan.cnet.com/interview/story/0,2000055954,20337724,00.htm&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.itmedia.co.jp/news/articles/0612/04/news065.html" target="_blank"&gt;http://www.itmedia.co.jp/news/articles/0612/04/news065.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://it.nikkei.co.jp/internet/column/china.aspx?n=MMITbp000021122006" target="_blank"&gt;http://it.nikkei.co.jp/internet/column/china.aspx?n=MMITbp000021122006&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.yomiuri.co.jp/atmoney/news/20080113it04.htm" target="_blank"&gt;http://www.yomiuri.co.jp/atmoney/news/20080113it04.htm&lt;/a&gt;&lt;br /&gt;&lt;a href="http://dailynews.yahoo.co.jp/fc/world/china_internet/?1200202378" target="_blank"&gt;http://dailynews.yahoo.co.jp/fc/world/china_internet/?1200202378&lt;/a&gt;&lt;br /&gt;&lt;a href="http://journal.mycom.co.jp/articles/2006/12/12/badiu/index.html" target="_blank"&gt;http://journal.mycom.co.jp/articles/2006/12/12/badiu/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;中国では、GoogleでもYahoo!でもなく、百度が検索エンジンの最高シェアを獲得しているわけですが。&lt;br /&gt;&lt;br /&gt;中国は検閲社会でもあります。&lt;br /&gt;&lt;br /&gt;すべてのインターネットプロバイダは&lt;br /&gt;政府の検閲というフィルターをを経ているわけです。&lt;br /&gt;たとえGoogleでさえも例外ではありません。&lt;br /&gt;&lt;br /&gt;「インターネットに国境はない」は幻想だと認識する事実です。&lt;br /&gt;&lt;br /&gt;日本でのサービスはどうなのでしょう？&lt;br /&gt;&lt;br /&gt;いろいろな意味で「百度」注目ですね。&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://liebejudith.googlepages.com/microad_techjudith_content.js"&gt;&lt;/script&gt;&lt;script src='http://cache.microad.jp/send0100.js'&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2393198689658204489-5108181161233437453?l=techjudith.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techjudith.blogspot.com/feeds/5108181161233437453/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://techjudith.blogspot.com/2008/01/blog-post.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5108181161233437453'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2393198689658204489/posts/default/5108181161233437453'/><link rel='alternate' type='text/html' href='http://techjudith.blogspot.com/2008/01/blog-post.html' title='中国最大の検索エンジン「百度」が日本進出'/><author><name>liebejudith</name><uri>http://www.blogger.com/profile/01679177147713109910</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='15' height='32' src='http://image.space.rakuten.co.jp/lg01/29/0000361129/25/img838616b0me98zk.jpeg'/></author><thr:total>0</thr:total></entry></feed>
