<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>IT+</title>
    <link rel="alternate" type="text/html" href="http://www.masahiko.info/it/" />
    <link rel="self" type="application/atom+xml" href="http://www.masahiko.info/it/atom.xml" />
   <id>tag:www.masahiko.info,2010:/it//11</id>
    <link rel="service.post" type="application/atom+xml" href="http://www.masahiko.info/blog/mt-atom.cgi/weblog/blog_id=11" title="IT+" />
    <updated>2010-03-07T16:06:50Z</updated>
    <subtitle>デベロッパー、ITプロ向けの技術情報ブログ。アイティプラス（IT Plus）。
</subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type  3.21-ja</generator>
 
<entry>
    <title>さくらのレンタルサーバーにRuby on Railsをインストール</title>
    <link rel="alternate" type="text/html" href="http://www.masahiko.info/it/archives/000980.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.masahiko.info/blog/mt-atom.cgi/weblog/blog_id=11/entry_id=980" title="さくらのレンタルサーバーにRuby on Railsをインストール" />
    <id>tag:www.masahiko.info,2010:/it//11.980</id>
    
    <published>2010-02-28T18:30:02Z</published>
    <updated>2010-03-07T16:06:50Z</updated>
    
    <summary>さくらのレンタルサーバーにRuby on Railsをインストールするための覚え...</summary>
    <author>
        <name>一色政彦</name>
        <uri>http://www.masahiko.info/</uri>
    </author>
            <category term="Ruby Development" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.masahiko.info/it/">
        <![CDATA[<p><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="ruby" border="0" alt="ruby" align="right" src="http://www.masahiko.info/it/WindowsLiveWriter/RubyonRails_2BF8/ruby_3.png" width="200" height="100" />さくらのレンタルサーバーにRuby on Railsをインストールするための覚え書きを公開。 </p>  <p><strong>●PoderosaによるSSH接続（SSH はスタンダードプラン以上のプランでご利用できます）      <br /></strong>&#160;<a href="http://support.sakura.ad.jp/support/manual/rs/tech_ssh.shtml">http://support.sakura.ad.jp/support/manual/rs/tech_ssh.shtml</a></p>  <p><strong>●インストール済みのRubyバージョンの確認 </strong></p>  <p>% ruby –version</p>  <p>以下のような出力が得られる。 </p>  <p>ruby 1.8.7 (2009-04-08 patchlevel 160) [i386-freebsd7] </p> ]]>
        <![CDATA[  <p><strong>●$HOMEに「local/src」フォルダを作成 </strong></p>  <p>% mkdir ~/local    <br />% mkdir ~/local/src     <br />% cd ~/local/src </p>  <p><strong>●RubyとRubyGemの最新版のダウンロード </strong></p>  <p>こちらのページから最新版のURLを取得して以下で使う。    <br />Ruby最新版 <a href="http://www.ruby-lang.org/ja/downloads/">http://www.ruby-lang.org/ja/downloads/</a>     <br />RubyGemの最新版 <a href="http://rubyforge.org/frs/?group_id=126&amp;release_id=42796">http://rubyforge.org/frs/?group_id=126&amp;release_id=42796</a></p>  <p>% ftp <a href="ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p378.tar.gz">ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p378.tar.gz</a>     <br />% tar xzvf ruby-1.9.1-p378.tar.gz     <br />% ftp <a href="http://rubyforge.org/frs/download.php/69365/rubygems-1.3.6.tgz">http://rubyforge.org/frs/download.php/69365/rubygems-1.3.6.tgz</a>     <br />% tar xvzf rubygems-1.3.6.tgz </p>  <p><strong>●Ruby最新版のインストール </strong></p>  <p>% cd ~/local/src/ruby-1.9.1-p378    <br />% ./configure --prefix=$HOME/local --with-iconv-dir=/usr/local     <br />% make     <br />% make install </p>  <p><font color="#ff0000">※</font>2010/3/7修正：「% ./configure --prefix=$HOME/local」を「% ./configure --prefix=$HOME/local --with-iconv-dir=/usr/local」に変更しました。</p>  <p><strong>●RubyGem最新版のインストール </strong></p>  <p>% cd ~/local/src/rubygems-1.3.6    <br />$ ruby setup.rb config --prefix=$HOME/local </p>  <p><strong>●RubyとRubyGemなどのパスを設定 </strong></p>  <p>% cd ~/    <br />% vi ~/.cshrc </p>  <p>で編集を開始。 </p>  <p>set path = (/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/l    <br />ocal/bin /usr/X11R6/bin $HOME/bin) </p>  <p>という記述の「/sbin」の前に、以下を書き加える。 </p>  <p>$HOME/local/bin $HOME/local/lib/ruby/gem/bin </p>  <p>さらに「setenv」の各記述の下に、以下を書き加える。「1.9.1」の部分はバージョンによって変わる。 </p>  <p>setenv RUBYLIB&#160; $HOME/local/lib/ruby/site_ruby/1.9.1:$HOME/local/lib/ruby    <br />setenv GEM_HOME $HOME/local/lib/ruby/gems </p>  <p>編集が終わったら、以下のコマンドで変更を適用。 </p>  <p>% source ~/.cshrc    <br />% rehash </p>  <p><strong>●RubyとRubyGemの最新版が利用可能になったか確認 </strong></p>  <p>% which ruby    <br />% ruby --version     <br />% which gem     <br />% gem --version </p>  <p>以下のような出力が得られる。 </p>  <p>/home/＜名前＞/local/bin/ruby    <br />ruby 1.9.1p378 (2010-01-10 revision 26273) [i386-freebsd7.1]     <br />/home/＜名前＞/local/bin/gem     <br />1.3.1 </p>  <p>1.3.6になってないみたいなので、以下を実行してアップデート。</p>  <p>% gem update --system   <br />% gem –version</p>  <p>出力：1.3.6</p>  <p><strong>●Railsのインストール </strong></p>  <p>% gem install rails    <br />% rehash </p>  <p><strong>●Railsが利用可能になったか確認 </strong></p>  <p>% which rails    <br />% rails --version </p>  <p>以下のような出力が得られる。 </p>  <p>/home/＜名前＞/local/lib/ruby/gem/bin/rails    <br />Rails 2.3.5 </p>  <p><strong>●たぶんこれでRuby on Railsが利用可能になったはず </strong></p>  <p>実際にRoR（Ruby on Rails）が動くかは後日検証。取りあえず今日はここまで。</p>  <p>ちなみにフォルダを強制削除したい場合は以下のコマンド。</p>  <p>% rm -rf ＜フォルダ名＞</p>  <p><strong>●iconv-rubyのインストール </strong></p>  <p><font color="#ff0000">※</font>2010/3/7追記：Railsアプリケーションを作成しようとすると、「undefined method `camelize' for &quot;app&quot;:String」というエラーが出たのでiconv-rubyをインストール。 </p>  <p>% cd ~/local/src/ruby-1.9.1-p378/ext/iconv    <br />% ruby extconf.rb --with-iconv-dir=/usr/local     <br />% make     <br />% make install </p>  <p><font color="#ff0000">※</font>上で以前は「% ./configure --prefix=$HOME/local」となっていたが、「% ./configure --prefix=$HOME/local --with-iconv-dir=/usr/local」に変更したので、この作業により、このiconv-rubyのインストールは不要かも。最初からインストールし直すのが面倒なので試していない。</p>  <p><strong>【参考にしたサイト】      <br /></strong><a href="http://iwatakenichi.blogspot.com/2007/08/ruby-on-rails-on-sakura.html">http://iwatakenichi.blogspot.com/2007/08/ruby-on-rails-on-sakura.html</a>     <br /><a href="http://iwatakenichi.blogspot.com/2007/08/ruby-on-rails-on-sakura-part2.html">http://iwatakenichi.blogspot.com/2007/08/ruby-on-rails-on-sakura-part2.html</a>     <br /><a href="http://nyon2.net/archives/2009/01/ruby-on-railsruby-on-rails.html">http://nyon2.net/archives/2009/01/ruby-on-railsruby-on-rails.html</a>     <br /><a href="http://egacreate.blogspot.com/2009/04/undefined-method-camelize-for-appstring.html" target="_blank">egacreate: undefined method `camelize' for &quot;app&quot;:String</a></p>]]>
    </content>
</entry>
<entry>
    <title>PDC09のWindows Azure Platform関連セッション</title>
    <link rel="alternate" type="text/html" href="http://www.masahiko.info/it/archives/000979.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.masahiko.info/blog/mt-atom.cgi/weblog/blog_id=11/entry_id=979" title="PDC09のWindows Azure Platform関連セッション" />
    <id>tag:www.masahiko.info,2009:/it//11.979</id>
    
    <published>2009-10-26T17:19:22Z</published>
    <updated>2009-10-26T17:21:52Z</updated>
    
    <summary>PDC09のセッション群からWindows Azure／Windows Azur...</summary>
    <author>
        <name>一色政彦</name>
        <uri>http://www.masahiko.info/</uri>
    </author>
            <category term="Windows Azure" />
            <category term="クラウド" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.masahiko.info/it/">
        <![CDATA[<p><img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="winazure" align="right" src="http://www.masahiko.info/it/WindowsLiveWriter/WindowsAzure_C471/winazure_3.jpg" width="200" height="100" />PDC09の<a href="http://microsoftpdc.com/Sessions" target="_blank">セッション群</a>からWindows Azure／Windows Azure Platform関連のものを抜き出してみました（2009年10月27日現在）。リンクはすべて別ウィンドウで開く仕様になっています。</p>  <br />  <p>・<a href="http://microsoftpdc.com/Sessions/SVC06" target="_blank">Scaling out Web Applications with Microsoft SQL Azure Databases</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/SVC08" target="_blank">Patterns for Building Scalable and Reliable Applications with Windows Azure</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/SVC09" target="_blank">Windows Azure Tables and Queues Deep-dive</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/SVC10" target="_blank">Software + Services Identity Roadmap Update</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/SVC12" target="_blank">SQL Azure Database: Under the Hood</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/SVC13" target="_blank">Windows Azure Present and Future</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/SVC14" target="_blank">Storing and Manipulating Blobs and Files with Windows Azure Storage</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/SVC15" target="_blank">Windows Azure Monitoring, Logging, and Management APIs</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/SVC16" target="_blank">Developing Advanced Applications with Windows Azure</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/SVC17" target="_blank">Enabling Single Sign-On to Windows Azure Applications</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/SVC18" target="_blank">Building Hybrid Cloud Applications with the Microsoft .NET Service Bus</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/SVC19" target="_blank">REST Services Security Using the Microsoft .NET Access Control Service</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/SVC20" target="_blank">Bridging the Gap from On-Premises to the Cloud</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/SVC22" target="_blank">Lessons Learned: Migrating Applications to the Windows Azure Platform</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/SVC23" target="_blank">Using the Microsoft Sync Framework to Connect Applications to the Azure Services Platform</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/SVC25" target="_blank">Automating the Application Lifecycle with Windows Azure</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/VTL31" target="_blank">Coming Together in the Cloud</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/P09-03" target="_blank">Lap Around the Windows Azure Platform</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/P09-14" target="_blank">Petabytes for Peanuts! Making Sense Out of “Ambient” Data.</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/Architecting-and-Developing-for-Windows-Azure" target="_blank">Architecting and Developing for Windows Azure</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/Microsoft-Technology-Roadmap" target="_blank">Microsoft Technology Overview</a>    <br />    <br />・<a href="http://microsoftpdc.com/Sessions/Software-in-the-Energy-Economy" target="_blank">Software in the Energy Economy</a></p>]]>
        
    </content>
</entry>
<entry>
    <title>特定の拡張子のファイルを一括削除するには？</title>
    <link rel="alternate" type="text/html" href="http://www.masahiko.info/it/archives/000977.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.masahiko.info/blog/mt-atom.cgi/weblog/blog_id=11/entry_id=977" title="特定の拡張子のファイルを一括削除するには？" />
    <id>tag:www.masahiko.info,2009:/it//11.977</id>
    
    <published>2009-09-25T12:13:43Z</published>
    <updated>2009-09-25T12:19:31Z</updated>
    
    <summary>現在のディレクトリと、その配下にあるすべてのサブディレクトリから「.test」と...</summary>
    <author>
        <name>一色政彦</name>
        <uri>http://www.masahiko.info/</uri>
    </author>
            <category term="Windows TIPS &amp; TRICKS" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.masahiko.info/it/">
        <![CDATA[<p><img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="cmcline" border="0" alt="cmcline" align="right" src="http://www.masahiko.info/it/WindowsLiveWriter/6e43babc4d42_12A28/cmcline_3.gif" width="205" height="112" />現在のディレクトリと、その配下にあるすべてのサブディレクトリから「.test」という拡張子のファイルをすべて削除するには、以下のコマンドをコマンドプロンプトに入力すればよい。 </p>  <p><strong>cd &quot;現在のディレクトリ名&quot;      <br />del /s *.test</strong> </p>  <p>cdコマンドで現在のディレクトリへ移動する。移動しないと、すべて消してしまう可能性があるので要注意。    <br />delが削除するコマンド。実際には「test」の部分をほかの拡張子に書き換える。 </p>  <p>※くれぐれも慎重に。何があっても一切の責任は負いません。</p>]]>
        
    </content>
</entry>
<entry>
    <title>SQL Azureのロードマップ</title>
    <link rel="alternate" type="text/html" href="http://www.masahiko.info/it/archives/000976.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.masahiko.info/blog/mt-atom.cgi/weblog/blog_id=11/entry_id=976" title="SQL Azureのロードマップ" />
    <id>tag:www.masahiko.info,2009:/it//11.976</id>
    
    <published>2009-07-17T07:38:10Z</published>
    <updated>2009-07-17T07:46:43Z</updated>
    
    <summary> SQL Azureの今後のロードマップ は次のようになっています。     2...</summary>
    <author>
        <name>一色政彦</name>
        <uri>http://www.masahiko.info/</uri>
    </author>
            <category term=".NET Development" />
            <category term="Windows Azure" />
            <category term="クラウド" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.masahiko.info/it/">
        <![CDATA[<p><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="100" alt="sqlazure" src="http://www.masahiko.info/it/WindowsLiveWriter/SQLAzure_E995/sqlazure_3.jpg" width="200" align="right" border="0" /> SQL Azureの今後のロードマップ は次のようになっています。</p>  <ul>   <li>2009年8月初旬：CTP1 </li>    <li>2009年9月中旬：CTP2 </li>    <li>2009年11月中旬：バージョン1（商用利用可能） </li> </ul>  <p>もうすぐCTP1が提供されるようになるので、その出来がどうか、楽しみですね。</p>  <p><a href="http://www.masahiko.info/it/WindowsLiveWriter/SQLAzure_E995/SQL%20Azure%20Roadmap_2.png"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="214" alt="SQL Azure Roadmap" src="http://www.masahiko.info/it/WindowsLiveWriter/SQLAzure_E995/SQL%20Azure%20Roadmap_thumb.png" width="484" border="0" /></a></p>  <p>（本画像はWPC09の「<a href="http://www.slideshare.net/kylecressman/extend-your-application-to-the-cloud-with-sql-azure-database">Extend Your Application to the Cloud with SQL Azure Database</a>」のPPTから引用しました） </p>]]>
        
    </content>
</entry>
<entry>
    <title>Windows Azureの購買モデルとロードマップに関する新情報</title>
    <link rel="alternate" type="text/html" href="http://www.masahiko.info/it/archives/000975.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.masahiko.info/blog/mt-atom.cgi/weblog/blog_id=11/entry_id=975" title="Windows Azureの購買モデルとロードマップに関する新情報" />
    <id>tag:www.masahiko.info,2009:/it//11.975</id>
    
    <published>2009-07-15T05:11:27Z</published>
    <updated>2009-07-17T07:50:03Z</updated>
    
    <summary>各所でニュースになっていますが、WPC09というイベントでWindows Azu...</summary>
    <author>
        <name>一色政彦</name>
        <uri>http://www.masahiko.info/</uri>
    </author>
            <category term=".NET Development" />
            <category term="Windows Azure" />
            <category term="クラウド" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.masahiko.info/it/">
        <![CDATA[<p><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="100" alt="winazure" src="http://www.masahiko.info/it/WindowsLiveWriter/WindowsAzure_C471/winazure_3.jpg" width="200" align="right" border="0" />各所でニュースになっていますが、WPC09というイベントでWindows Azureの価格体系やSLAが発表されました。本稿では、それらのニュース記事ではあまり触れられていない事項について補足情報をお伝えします。Windows Azureは11月17日～19日に開催されるPDC09（<a href="http://www.microsoftpdc.com/"><strong>Professional</strong> <strong>Developers</strong> <strong>Conference</strong> November 17-19, <strong>2009</strong></a>）でローンチされます。</p>  <p>そういえば、WPC09のキーノートでは「Windows Azure Platform」という表示がなされていました。単純に「Windows Azure」のことを表しているのか、「Azure Services Platform」の名前をこれに変更しようとしているのかと疑問に思いました。どうやら後者という話です。いきなり脱線しましたが、本題。</p> ]]>
        <![CDATA[  <p><strong>◆</strong><strong>まず、Windows Azure Platform の購買モデル。</strong></p>  <p>次の3つのモデルが提供されます。</p>  <ol>   <li>従量課金制（基本） </li>    <li>サブスクリプション（割安になる） </li>    <li>ボリューム・ライセンス契約（大規模エンタープライズ顧客向け。※PDC後） </li> </ol>  <p>1の従量課金制については特に説明の必要はないでしょう。価格体系については「<a href="http://blogs.itmedia.co.jp/isago/2009/07/azure-8c73.html" target="_blank">Azure価格発表。複数の提供モデルと競争力のある価格戦略でクラウド市場の本格立ち上げをねらう - Azureの鼓動 : ITmedia オルタナティブ・ブログ</a>」を参照してください。</p>  <p>2のサブスクリプション・モデルの場合、先払いになりますが、その分、割安になります。</p>  <p>これら2つのモデルは、PDC09でのローンチから利用できます。</p>  <p>3のボリューム・ライセンスは、既存の MSDN Premium Subscription のボリューム・ライセンス（Enterprise Agreement license=PC250台以上の大規模）に Windows Azure を追加するモデルです。</p>  <p>こちらはPDC後に提供予定です。</p>  <p>PDC09から商用利用可能になるわけですが、それまでは無償です。ローンチ直後から支払いには日本円も使えます。2010年3月にはさらに多くの国の通貨に対応します。</p> さらに、アプリケーション開発ステージでは、スケール時のテストがしやすいように、45％の割引になるらしいです。   <br />  <p><strong>◆続いて、Windows Azure Platform の新機能などに関するロードマップ（<font color="#ff0000">※</font>2009/07/17アップデート）。</strong></p>  <p>Windows Azureは、.NETだけでなく、Ruby、Python、Java、MySQLのサポートも開発準備中です。</p>  <p>商用利用開始時点（2009年11月中旬）で、以下のようなことが可能になります。</p>  <ul>   <li>複数の地理的位置からの選択（東京が含まれるかは不明） </li>    <li>複数の言語からの選択（恐らく日本語は含まれると予想される） </li>    <li>リレーショナルと仮想のデータベース（仮想というのは恐らくKey-Value-Storage） </li>    <li>自動データベース管理 </li> </ul>  <p>さらにローンチ後の将来（時期不明）に、以下のようなことが可能になる予定です。</p>  <ul>   <li>管理者アクセス </li>    <li>VM（仮想マシン） 配置 </li>    <li>アプリケーションとデータの地理的なレプリケーション（これによりアクセスポイントが近くなって、高速にアクセス可能になると予想される） </li>    <li>Systems Center統合 </li>    <li>エンタープライズIDフェデレーション </li>    <li>分散クエリ＆CLR </li>    <li>分析＆レポーティング </li>    <li>データ同期（DataHub） </li> </ul>  <p><a href="http://www.masahiko.info/it/WindowsLiveWriter/WindowsAzure_E6DD/Windows%20Azure%20Roadmap0_2.png"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="277" alt="Windows Azure Roadmap0" src="http://www.masahiko.info/it/WindowsLiveWriter/WindowsAzure_E6DD/Windows%20Azure%20Roadmap0_thumb.png" width="484" border="0" /></a></p>  <p>（本画像はWPC09の「<a href="http://hub.digitalwpc.com/Azure/Item/Azure-Tools/NorthAmericaAzure/WPC-Session-Partnering-with-Azure-Services">WPC Session: Partnering with Azure Services</a>」のPPTから引用しました） </p>  <p>というように、将来的にはエンタープライズ向けの機能強化がなされる予定のようです。</p>]]>
    </content>
</entry>
<entry>
    <title>Windows Azureに関する戦略で判明したこと</title>
    <link rel="alternate" type="text/html" href="http://www.masahiko.info/it/archives/000974.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.masahiko.info/blog/mt-atom.cgi/weblog/blog_id=11/entry_id=974" title="Windows Azureに関する戦略で判明したこと" />
    <id>tag:www.masahiko.info,2009:/it//11.974</id>
    
    <published>2009-06-04T05:24:48Z</published>
    <updated>2009-06-04T12:19:40Z</updated>
    
    <summary> 今日、マイクロソフトのクラウド インフラに関するアンケート調査に答えたが、その...</summary>
    <author>
        <name>一色政彦</name>
        <uri>http://www.masahiko.info/</uri>
    </author>
            <category term=".NET Development" />
            <category term="Windows Azure" />
            <category term="クラウド" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.masahiko.info/it/">
        <![CDATA[<p><img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="winazure" align="right" src="http://www.masahiko.info/it/WindowsLiveWriter/WindowsAzure_C471/winazure_3.jpg" width="200" height="100" /> 今日、マイクロソフトのクラウド インフラに関するアンケート調査に答えたが、その質問項目からWindows Azureで検討中の機能について知ることができた。</p>  <p>まず運用費だが、月間100米ドル（＝1万円）程度を想定しており、6カ月契約で10％～5％の値引きを検討しているようだ。</p>  <p>また以下のような追加機能を検討中らしい。    <br />    <br />・管理者アクセスを要求するアプリケーションをセットアップする能力     <br />・ユーザーの応答が必要となるセットアップを実行する能力     <br />・セットアップ以外の目的での管理者権限     <br />・SMB互換命令を使う永続的で共有可能なファイル システム     <br />・キューを使わずに同じサービスでインスタンス間の通信     <br />・外出しするIPアドレスを特定のインスタンスにマップ（つまりロードバランシングなし）     <br />・外出しするインバウンド通信をHTTP以外のプロトコル経由で許可     <br />・デバッグ目的でのリモート デスクトップ アクセス     <br />・ほかの目的でのリモート デスクトップ アクセス（自由回答）     <br />・共有ホスティング（低価格、かつ、SLAなしでより厳格なWebホスティング モード）     <br />・オンプレミスとオフプレミス間の互換性     <br />・VLAN（バーチャルLAN）分割     <br />・追加サービス（自由回答）     <br />・自分のWindows Azure互換アプリ向けにマーケットプレースを構築する能力</p>]]>
        
    </content>
</entry>
<entry>
    <title>返信時の引用符を無くすThunderbirdアドオン「ReFwdFormatter」</title>
    <link rel="alternate" type="text/html" href="http://www.masahiko.info/it/archives/000973.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.masahiko.info/blog/mt-atom.cgi/weblog/blog_id=11/entry_id=973" title="返信時の引用符を無くすThunderbirdアドオン「ReFwdFormatter」" />
    <id>tag:www.masahiko.info,2009:/it//11.973</id>
    
    <published>2009-04-30T20:50:27Z</published>
    <updated>2009-05-02T20:06:37Z</updated>
    
    <summary>メール クライアント ソフト Thunderbird でメールを返信しようとする...</summary>
    <author>
        <name>一色政彦</name>
        <uri>http://www.masahiko.info/</uri>
    </author>
            <category term="アプリケーション＆ツール" />
            <category term="自作ソフト" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.masahiko.info/it/">
        <![CDATA[<p><img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="refwdformatter" align="right" src="http://www.masahiko.info/it/WindowsLiveWriter/ThunderbirdReFwdFormatter_4E66/refwdformatter_3.jpg" width="200" height="100" />メール クライアント ソフト Thunderbird でメールを返信しようとすると、引用された内容の前に「&gt;」という引用符が付きます。また、転送しようとすると、件名が [ ] で囲まれてしまいます。</p>  <p>この現象は設定では解決できません。世の中にある Thunderbird アドオンである程度対処できるのですが、すべての「&gt;」が消されたりと、使い勝手がよいものがありませんでした。</p>  <p>そこで、これらの問題を解決するアドオン「ReFwdFormatter」を開発しました。</p> ]]>
        <![CDATA[  <p>Thunderbird アドオン名： <a title="Mozilla Add-onsページ「ReFwdFormatter」" href="https://addons.mozilla.org/ja/thunderbird/addon/11727">ReFwdFormatter</a>     <br />※上のリンク先から入手できます。</p>  <p>導入すると以下のような感じになります。</p>  <p>●引用問題の解消    <br />【導入前】     <br /><img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="refwdformatter1" src="http://www.masahiko.info/it/WindowsLiveWriter/ThunderbirdReFwdFormatter_4E66/refwdformatter1_3.gif" width="475" height="300" />     <br />【導入後】     <br /><img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="refwdformatter2" src="http://www.masahiko.info/it/WindowsLiveWriter/ThunderbirdReFwdFormatter_4E66/refwdformatter2_3.gif" width="475" height="300" /></p> ●転送問題の解消   <br />【導入前】   <br /><img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="refwdformatter3" src="http://www.masahiko.info/it/WindowsLiveWriter/ThunderbirdReFwdFormatter_4E66/refwdformatter3_3.gif" width="240" height="38" />   <br />【導入後】   <br /><img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="refwdformatter4" src="http://www.masahiko.info/it/WindowsLiveWriter/ThunderbirdReFwdFormatter_4E66/refwdformatter4_3.gif" width="240" height="38" />]]>
    </content>
</entry>
<entry>
    <title>Microsoft が提供する PaaS“Red Dog”</title>
    <link rel="alternate" type="text/html" href="http://www.masahiko.info/it/archives/000967.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.masahiko.info/blog/mt-atom.cgi/weblog/blog_id=11/entry_id=967" title="Microsoft が提供する PaaS“Red Dog”" />
    <id>tag:www.masahiko.info,2008:/it//11.967</id>
    
    <published>2008-09-29T16:18:42Z</published>
    <updated>2009-06-04T05:30:13Z</updated>
    
    <summary>スティーブ・バルマー氏が秘密にしている Microsoft のクラウド プラット...</summary>
    <author>
        <name>一色政彦</name>
        <uri>http://www.masahiko.info/</uri>
    </author>
            <category term=".NET Development" />
            <category term="Windows Azure" />
            <category term="クラウド" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.masahiko.info/it/">
        <![CDATA[<img alt="cloudcomp.jpg" src="http://www.masahiko.info/it/archives/images/cloudcomp.jpg" width="200" height="100" align="right" />スティーブ・バルマー氏が秘密にしている Microsoft のクラウド プラットフォーム戦略 “Red Dog”（コード名）が、<a href="http://www.masahiko.info/it/archives/000948.html" target="_blank">PDC 2008</a> で明らかとされる<a href="http://japan.cnet.com/news/biz/story/0,2000056020,20381055,00.htm" target="_blank">予定</a>らしいです。“Red Dog”は Windows 向けのクラウド プラットフォームを提供するプロジェクトです。

“Red Dog”を加え、今後、クラウド ベースのプラットフォームを提供するサービス（いわゆるPaaS：Platform as a Service）は、主に以下の3つになると考えられます。

　・Google App Engine
　・Amazon EC2
　・Microsoft “Red Dog”（→Windows Azureという名称になりました）

これらはいずれもユーティリティ コンピューティング、つまり使用容量やトラフィックに応じて利用料を払う、従量課金のコンピューティング環境です。“Red Dog”は、Microsoft のインフラ上のストレージやホスティング環境を従量課金で使えるようにし、開発者が（Microsoft のクラウドが持つパワーを生かして）柔軟にクラウド サービスやアプリケーションを開発できるようにします。

特徴をまとめると以下のようになります（参考「<a href="http://www.liveside.net/main/archive/2008/04/09/red-dog-ray-ozzie-s-answer-to-the-google-app-engine.aspx" target="_blank">LiveSide.net: Red Dog: Ray Ozzie's answer to the Google App Engine?</a>」）。

　・効率的な仮想化環境
　・完全自動化されたサービス管理システム（※Google App Engineのように運用面は気にしなくてよい）
　・高いスケーラビリティを持つストレージ サービス（必要な容量だけを利用する形態）
　・サービスは Microsoft のデータセンターにある何百万台のマシンにスケールアウト可能
　・インターネット サービスとアプリケーションの迅速な開発、展開、メンテナンスのための最高のプラットフォームとして、今後の市場をリードしていく
　・来年にはバージョン1が提供される（かも）

ここで気になるのは「ソフトウェア＋サービス」（software-plus-services）との関係でしょうが、当然“Red Dog”も、「ソフトウェア＋サービス」アプローチの一環として進められています。今後の情報システムのあり方は以下のような3種類に分類できると思いますが、一極集中は行き過ぎた考え方であり、バランスのとれたハイブリッド型が浸透していく可能性が高いのではないでしょうか。

　・企業ベースの（アプリケーション）ソフトウェア
　・ソフトウェア＋サービスのハイブリッド
　・完全なクラウド サービス

現実的には、Googleは比重をクラウドに置いたハイブリッドを進めており、Microsoft は比重をソフトウェアに置いたハイブリッドを推進しているととらえた方がよいと思います。

「おや、Googleはクラウド一点なんじゃないの？」という意見が多数あると思いますが、Google 自身も Web アプリケーションをデスクトップで使えるようにする Google Gears（と Google Chrome ）などを提供することで、Web アプリケーションの限界を超えようとしています（Google Gearsにより、Webアプリはデスクトップ アプリになります）。Adobe については AIR で、というように、いまはWebテクノロジの方からデスクトップに歩み寄るようになっているのが現実。それらを見ると、結局はWebとデスクトップの長所をうまく利用しようとするのが今後の情報システムの方向性で、それにクラウド寄りか （Google の立場）、ソフトウェア寄りか （Microsoft の立場） という違いがあるだけだと思います。

【参考資料】
<a href="http://www.liveside.net/main/archive/2008/04/09/red-dog-ray-ozzie-s-answer-to-the-google-app-engine.aspx" target="_blank">LiveSide.net: Red Dog: Ray Ozzie's answer to the Google App Engine?</a>
<a href="http://www.informationweek.com/news/services/saas/showArticle.jhtml?articleID=209400797" target="_blank">InformationWeek: Microsoft Mum On 'Red Dog' Cloud Computing</a>
<a href="http://venturebeat.com/2008/09/25/steve-ballmer-dishes-out-the-charm-in-silicon-valley-hints-at-red-dog-pledges-to-spend-billions-on-search-business/" target="_blank">VentureBeat: Steve Ballmer dishes out the charm in Silicon Valley, hints at Red Dog, pledges to spend billions on search business</a>]]>
        
    </content>
</entry>
<entry>
    <title>未来のIT業界とクラウド コンピューティングに対する考察</title>
    <link rel="alternate" type="text/html" href="http://www.masahiko.info/it/archives/000966.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.masahiko.info/blog/mt-atom.cgi/weblog/blog_id=11/entry_id=966" title="未来のIT業界とクラウド コンピューティングに対する考察" />
    <id>tag:www.masahiko.info,2008:/it//11.966</id>
    
    <published>2008-09-13T18:01:48Z</published>
    <updated>2008-09-13T18:33:41Z</updated>
    
    <summary>商用コンピュータの過去の時代の流れと、これからの時代の流れの予測をシンプルにまと...</summary>
    <author>
        <name>一色政彦</name>
        <uri>http://www.masahiko.info/</uri>
    </author>
            <category term=".NET Development" />
            <category term="Google Development" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.masahiko.info/it/">
        <![CDATA[<img alt="cloudcomp.jpg" src="http://www.masahiko.info/it/archives/images/cloudcomp.jpg" width="200" height="100" align="right" />商用コンピュータの過去の時代の流れと、これからの時代の流れの予測をシンプルにまとめてみました。

1. 【1950～1990年】メインフレーム（汎用機）時代
　→ 利用者：一部の大企業（少ない）。
　→ 価格：大企業なら買えるレベル
　→ 用途：大企業の基幹業務。

2. 【1980～2020年】パーソナル コンピュータ時代
　→ 利用者：一般の人から大企業まで（多い）。1人1台程度
　→ 価格：中小企業や個人でも買えるレベル
　→ 用途：一般業務、日常の連絡手段や作業、ゲームなどなど。

3. 【2010～2050年】クラウド コンピューティング時代
　→ 利用者：一般の人から大企業まで（多い）。1人5台程度
　→ 価格：安い。個人がいくつでも買えるレベル。薄利多売の世界。
　→ 用途：一般業務、日常の連絡手段や作業、ゲームなどなど。そのほか生活を便利にするサービス（詳しくは下記）。

2010年から始まると予測しているクラウド コンピューティング時代ですが（まぁ、すでに始まっていると見てもいいかもしれませんが）、このころになるとソフトウェアやサービスの価格がぐっと安くなってきます。結局、経済市場の世界では、ものがあふれてくると、どうしても安くならざるを得ないと思います。

ここでもし「絶対にうちは安くしない」と言い張ったところで、機能は少し劣っても圧倒的に安いものを他社が出してきたら、それに負ける可能性が高くなります。成功した企業は機能改善して顧客満足度を追求するのが普通ですが、そうするとそれよりも機能の劣る顧客満足度の低い製品が出せなくなります。そうこうしているうちに機能は劣るが価格が安い他社の製品に負けてしまうのです。いわゆる「イノベーションのジレンマ」。

それぞれの製品が安くなっていくとすれば、企業の利益は少なくなるので、結果的に現在の（IT業界の）パーソナル コンピュータ市場の規模は小さくなっていってしまうはずです。そう考えると、IT業界に関わっている人の未来は暗いのでしょうか？ その答えは僕には分からないし、誰にも分からないでしょうが、クラウド コンピューティングに可能性を見ることができると僕は考えています。

すでにコンピュータは1人1台程度は普及していると思います。だから、メインフレーム時代からパソコン時代に起こった「パソコンを持っていない人にもっと普及させる」という手法による市場拡大は、もうさすがに期待できません。ではクラウド コンピューティングでは、どうするか？ それは、製品を安くしても1人3台も4台も持たせて、トータルでのIT業界の収益を高めることです。

とはいっても「そんなに何台も要らないよ……」という反応ばかりでしょうが、確かにそのとおりです。しかしクラウド コンピューティング時代では、ノート パソコンとか、デスクトップ パソコンとかだけをITの対象としてはいけないと僕は考えています。そうではなく、コンピュータが動くデバイスの種類を増やしていかなければならない。それ以外にIT業界がいまよりも飛躍的に発展していく道はあり得ない。僕はそう思います。

例えば、ネットワーク サービスとつなげてリアルタイムに番組視聴者のコメントを表示させる「テレビ」や「ラジオ」を作ったり、ネットワーク サービスに接続して最新ニュースのアラートが表示される「時計」を作ったり、冷蔵庫の中身をネットワーク上に情報を送信して買い物に時に携帯でチェックできるようにする「冷蔵庫」を作ったり、そういうふうにコンピュータが載る領域を広げる以外に、IT業界が今後めざましい発展を遂げる可能性はないと思います。

もしクラウド コンピューティングが単にシステム形態においてパーソナル コンピュータに取って代わるだけで、それ以外の広がりや革新がないのであれば、IT業界の未来はそれほど明るくないかもしれないと僕は危惧しています。だってIT業界で働いてもお金が儲からなくなるわけだから、この業界に入りたいという人もより少なくなるし、この業界に今居る人も居続けたいと思わないですよね？！ クラウド コンピューティング時代の幕開けは、上に書いたような対象デバイスの拡大がセットでなければならない。そうしないと、IT業界の人は上記の理由でジリ貧になってくる可能性があります。クラウド コンピューティング時代の到来が、IT業界も消費者も幸せにならずに、双方にとって悲劇になってしまう可能性もあるということです。だからこそ、時代の過渡期にいる（と思われる）今が、非常に重要な時間なのかもしれない。ふとそう思いました。未来からいまを振り返ってみると、「あのころは激動の時代だった！」とか言っているのかもしれませんね。]]>
        
    </content>
</entry>
<entry>
    <title>Google ChromeとIE8の類似性</title>
    <link rel="alternate" type="text/html" href="http://www.masahiko.info/it/archives/000965.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.masahiko.info/blog/mt-atom.cgi/weblog/blog_id=11/entry_id=965" title="Google ChromeとIE8の類似性" />
    <id>tag:www.masahiko.info,2008:/it//11.965</id>
    
    <published>2008-09-03T17:00:44Z</published>
    <updated>2008-09-03T17:08:47Z</updated>
    
    <summary>Google Chromeに搭載されている機能で、IE8の新機能と同じようなもの...</summary>
    <author>
        <name>一色政彦</name>
        <uri>http://www.masahiko.info/</uri>
    </author>
            <category term=".NET Development" />
            <category term="Google Development" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.masahiko.info/it/">
        <![CDATA[<img alt="Google Chrome" src="http://www.masahiko.info/it/archives/images/googlechrome.jpg" width="200" height="100" align="right" />Google Chromeに搭載されている機能で、IE8の新機能と同じようなものがあります。
例えば以下。

●ブラウザ全体がクラッシュしない！（タブごとにプロセス化）

●ドメイン・ハイライト（アドレス入力部分で嘘のアドレスを見つけやすい）

●ブラウザに履歴などを残さないモード
Google Chrome：シークレット・ウィンドウ
IE8（ベータ）：InPrivateブラウズ

後出しはグーグルの方だから、グーグルが「真似た」ということでしょうか。

表示の速さは同じくらいか、IE8の方が早いんじゃないかという印象を受けています（ちゃんと計測しないと分からないですが）。
やっぱり便利さではIE8と思うんですけど、Google Chromeのシンプルさはいいですね。

しかしGoogle Chromeはまだ実用レベルじゃないですね……。ブログが書き込めない……。]]>
        
    </content>
</entry>
<entry>
    <title>プラットフォームとしての「Google Chrome」</title>
    <link rel="alternate" type="text/html" href="http://www.masahiko.info/it/archives/000961.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.masahiko.info/blog/mt-atom.cgi/weblog/blog_id=11/entry_id=961" title="プラットフォームとしての「Google Chrome」" />
    <id>tag:www.masahiko.info,2008:/it//11.961</id>
    
    <published>2008-09-03T06:01:42Z</published>
    <updated>2008-09-03T06:22:00Z</updated>
    
    <summary>9月2日（米国時間）にグーグルが新しいWebブラウザ「Google Chrome...</summary>
    <author>
        <name>一色政彦</name>
        <uri>http://www.masahiko.info/</uri>
    </author>
            <category term="Google Development" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.masahiko.info/it/">
        <![CDATA[<img alt="Google Chrome" src="http://www.masahiko.info/it/archives/images/googlechrome.jpg" width="200" height="100" align="right" />9月2日（米国時間）にグーグルが新しいWebブラウザ「<a href="http://www.google.com/chrome" target="_blank">Google Chrome</a>」を提供開始しました。確かにGoogle Chromeはブラウザですが、オフラインでWebアプリケーションを実行できる機能（Google Gears）が標準で組み込まれているという意味で、長く噂されてきた「The Google OS」プラットフォームとして見る方が適切かもしれません。

<a href="http://www.google.com/chrome/intl/ja/why.html?hl=ja" target="_blank">グーグルによる</a>と「ウェブは、シンプルなテキストのみのページばかりが提供されていた時代から、リッチでインタラクティブなアプリケーションへと進化を遂げています。特に、今本当に必要とされているのは、単なる「ブラウザ」ではなく、ウェブページやアプリケーションに対応した最新の「プラットフォーム」なのだ」そうです。つまり、Google ChromeはWebアプリケーションのためのプラットフォームとして作られ、今後、Windows OS プラットフォームに対抗することを目指しているように見えます。

Google Chromeは、Mac OSよりも、Windows Vista／Windows 7よりも、安価なプラットフォームとしての地位を目指すための第1歩なのかもしれません。Windows XP Home EditionにGoogle Chromeを乗せた超安価なPCが販売され、「それだけで普段の業務（SaaSアプリケーション）や、メール、ブラウジングといった日常の操作は十分でしょ」というユーザーが増え、それがデファクト・スタンダードになることもあり得ます。これは、マイクロソフトにとって最悪のシナリオだと思います。

もちろん、マイクロソフトもIE8でブラウザを改善してくるし、こういったシナリオは現実のものには、なかなかならないとは思います。ですが、ブラウザ、インターネット、クラウド、これらの分野の競争がますます熾烈になってくるのは確実なんじゃないでしょうか。]]>
        
    </content>
</entry>
<entry>
    <title>メソッドのシグネチャ（signature）とメソッドの構文（syntax）の違い</title>
    <link rel="alternate" type="text/html" href="http://www.masahiko.info/it/archives/000959.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.masahiko.info/blog/mt-atom.cgi/weblog/blog_id=11/entry_id=959" title="メソッドのシグネチャ（signature）とメソッドの構文（syntax）の違い" />
    <id>tag:www.masahiko.info,2008:/it//11.959</id>
    
    <published>2008-06-16T16:01:04Z</published>
    <updated>2008-06-16T16:28:56Z</updated>
    
    <summary>メソッドの「シグネチャ」（signature）という用語は、メソッドの定義を示す...</summary>
    <author>
        <name>一色政彦</name>
        <uri>http://www.masahiko.info/</uri>
    </author>
            <category term=".NET Development" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.masahiko.info/it/">
        <![CDATA[<img alt="signature syntax" src="http://www.masahiko.info/it/archives/images/signaturesyntax.jpg" width="200" height="100" align="right" />メソッドの「シグネチャ」（signature）という用語は、メソッドの定義を示す際によく使われる用語ですが、厳密な意味を考えると、この用語を使用する際には注意を要します。シグネチャは、プログラミング言語設計の用語で、言語ごとに明確な意味が定義されているからです。その意味を正しく把握したうえで「シグネチャ」という用語を使う必要があるのです。

一方の「構文」（syntax）という用語は、より汎用的な意味で使われます。単に「ソース コード上にどのように文字が配列されているか」という表記方法を表しているだけなので、プログラミング言語ごとに意味合いが異なるわけではありません。

従って、無難にメソッドの定義について言及したい場合は、「メソッド構文」という用語を使った方がよいと思います。

以下ではメソッドの「シグネチャ」についてもう少し詳しく解説しましょう。
]]>
        <![CDATA[まずはシグネチャの一般的な意味について、次にC#言語やVisual Basic言語（以下、C#／VB言語）における意味について説明します。

<strong>●メソッドのシグネチャの一般的な意味</strong>

シグネチャとは日本語にすると「署名」などの意味ですが、一般的なプログラミング言語（特にオブジェクト指向言語）におけるシグネチャも正にそういう意味で、唯一無二であることを示すためのもの（＝メソッドの署名）です。1つのメソッドは基本的に1つのシグネチャを持っています。このようにシグネチャを持つことで、それぞれのメソッドがコンパイラなどで明確に区別できるわけです。

このシグネチャには、一般的には、「メソッド名」「パラメータ数と順序、パラメータの型」「戻り値の型」が含まれると考えられています。なお当然ながら、JavaやC#などで文の終わりを示す「;」はシグネチャには含めません。

しかしここで注意が必要です。実際には、現在の大半のプログラミング言語（Java言語やC#／VB言語、C++言語など）では「戻り値の型（return type）」をシグネチャに含めないからです。

<strong>●C#／VB言語におけるメソッドのシグネチャの意味</strong>

特にC#／VB言語の場合、「戻り値の型」に関するシグネチャの事情は少し複雑です。C#／VB 言語は CLR（Common Language Runtime）の CTS（Common Type System）および CLS（Common Language Specification）というの共通言語仕様の上に設計されています。つまり「C#／VB 言語＝CTS＆CLS」ではありません。実は、CTS＆CLSはさまざまな言語をサポートするために、より広範な機能を持っており、なんとシグネチャに「戻り値の型」を含めています。CTS＆CLSが含めているのにC#／VB言語は含めていないわけですが、これはC#／VB言語の設計者が意図的に含めなかったわけです（恐らくその方が言語的に美しいと考えたからです）。

では、C#／VB言語で、「戻り値の型」がシグネチャに含まれていないことを証明しましょう。


次のコードは「戻り値の型」のみが異なる2つのSampleメソッドをC#／VB言語で記述したものです。これらコンパイルするとコンパイルするとエラーになってしまいます。

<blockquote><b>【C#】</b>

int Sample(int arg)
{
&nbsp; return arg;
}

string Sample(int arg)
{
&nbsp; return arg.ToString;
}

// エラー内容：'Sample' と呼ばれるメンバを同じパラメータの型で既に定義しています。</blockquote><blockquote><b>【VB】</b>

Function Sample(ByVal arg As Integer) As Integer
&nbsp; Return arg
End Function

Function Sample(ByVal arg As Integer) As String
&nbsp; Return arg.ToString
End Function

' エラー内容：「Public Function Sample(arg As Integer) As Integer」 と 「Public Function Sample(arg As Integer) As String」 では、戻り値の型のみが異なるため、お互いをオーバーロードすることはできません。</blockquote>

両方のエラー内容を見ると分かるように、「戻り値の型」のみが異なるメソッドが複数存在するために、エラーとなっています。エラーになるのは、これらのメソッドが同じシグネチャ（署名）を持っていると、コンパイラに見なされたからです。つまり上記2つのメソッドはまったく同じ、以下のシグネチャを持っています。
<blockquote><b>【C#】</b>
Sample(int arg)</blockquote><blockquote><b>【VB】</b>
Sample(ByVal arg As Integer)</blockquote>

つまりC#／VB言語の「メソッドのシグネチャ」という表現を使った場合は、上記のようにしか書けないのです。

次の表記のように「戻り値の型」を含めてメソッドの定義を書き表したい場合は、「メソッドの構文」という表現が妥当です。
<blockquote><b>【C#】</b>
int Sample(int arg)</blockquote><blockquote><b>【VB】</b>
Function Sample(ByVal arg As Integer) As Integer</blockquote>

ちなみに、シグネチャに「パラメータ数と順序、パラメータの型」が含まれているおかげで、「メソッド名」が同じで「パラメータ数と順序、パラメータの型」が異なる複数のオーバーロード メソッドが作成可能です。

【参考資料】
<a href="http://en.wikipedia.org/wiki/Method_signature" target="_blank">Wikipedia：Method signature</a>
<a href="http://forums.msdn.microsoft.com/en-us/clr/thread/6454eb8e-1496-4393-9abd-279ea5f4a491/" target="_blank">MSDN Forum：Return type as part of a method's signature</a>
]]>
    </content>
</entry>
<entry>
    <title>ハッカソンとは（Hackathonとは）</title>
    <link rel="alternate" type="text/html" href="http://www.masahiko.info/it/archives/000958.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.masahiko.info/blog/mt-atom.cgi/weblog/blog_id=11/entry_id=958" title="ハッカソンとは（Hackathonとは）" />
    <id>tag:www.masahiko.info,2008:/it//11.958</id>
    
    <published>2008-06-14T09:20:45Z</published>
    <updated>2008-06-14T09:47:22Z</updated>
    
    <summary>ハッカソン（Hackathon：Hack-a-thon）とは、とある開発テーマの...</summary>
    <author>
        <name>一色政彦</name>
        <uri>http://www.masahiko.info/</uri>
    </author>
            <category term="ITビジネス用語集" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.masahiko.info/it/">
        <![CDATA[<img alt="itbizdic.jpg" src="http://www.masahiko.info/it/archives/images/itbizdic.jpg" width="200" height="100" align="right" />ハッカソン（Hackathon：Hack-a-thon）とは、とある開発テーマの技術に興味のあるプログラマーたちが、会議室やソファーがある場所などにノートPC持参で集まり、みんなで一緒にソフトウェアをハックしまくって楽しみ、最後に開発したアプリケーションやサービスを参加者全員の前でプレゼンするという、いわばギークのためのお祭りイベントです。ハッカソンの期間はだいたい1日中が普通で、長ければ合宿などで数日から1週間もある場合があります。

ハッカソンという用語は、「Hack」と「Marathon」を合わせた造語で、米国で1999年あたりから使われ出し、まず OpenBSD が開いたイベントで使われ、次に Sun の JavaOne conference イベントで使われたそうです。その後、2000年に PHP の開発イベントで、2001年に FreeBSD、2002年に Apache と、徐々にさまざまなイベントで使われるようになりました。ちなみに、ハッカソンと同様のイベントの用語として、「CodeFest」（コードフェスト）や「Sprint」（スプリント）などがあります。ちなみに Google のカンファレンスでは「Code Lab」（コードラボ）と呼ばれています。

ハッカソンの意義は、単にハックしている時間にあるのではなく、多くの人々が一緒に、自分らがしたいことをしたいようにハックする「特別な時間」にあります。通常、参加者は興味テーマごとにいくつかのグループ（5人程度）に分かれて、各グループ内でアイデアを出し合いながら画期的なアプリケーションを作成したり、資料となる開発手順ドキュメントなどを見ながら黙々とサンプル アプリケーションを作ったりします。各グループ内で「ああだ」「こうだ」とやり合うことで、テーマ技術に対するおもしろい発見や気づきがもらえたり、これまで抱えていた疑問が解消したりと、1人でハックするだけの行為にはないメリットがあります。こうやってみんなで考えたものが、革新的なサービスやアプリケーションを開発するためのの新たなプロジェクトの誕生につながったりすることも考えられます。つまり「3人寄れば文殊の知恵」（Two heads are better than one.）というわけです。

日本でもここ最近ハッカソンが開かれて盛り上がる例が増えてきました。そのレポート記事へのリンクを以下に紹介します。]]>
        <![CDATA[●<a href="http://itpro.nikkeibp.co.jp/article/NEWS/20080612/307870/" target="_blank">ITpro：写真で見る，“噂”の「Googleハッカソン」</a>
　Google Developer Day 2008 Japan の 1 セッションとして行われた Android ハッカソンの様子。

●<a href="http://www.masahiko.info/it/archives/000957.html" target="_blank">IT+：Google App Engine コード ラボ （Hackathon）レポート</a>
　Google Developer Day 2008 Japan の 1 セッションとして行われた Google App Engine ハッカソンの様子。

●<a href="http://www.movabletype.jp/blog/report_mt_hack-a-thon_080126.html" target="_blank">MovableType.jp：Movable Type Hack-a-thon を開催しました</a>
　Movable Type で行われたハッカソンの様子。

●<a href="http://jp.youtube.com/watch?v=z0az6k80f9A&feature=PlayList&p=FBE7B48070FF6FC1&index=7" target="_blank">YouTube：Working at Google 東京 - 賀澤 秀人: ソフトウェア エンジニア</a>
　Google の 人材募集で、仕事のおもしろさの 1 つとして、ハッカソンという独自のプログラミング合宿が紹介されている。]]>
    </content>
</entry>
<entry>
    <title>Google App Engine コード ラボ （Hackathon）レポート</title>
    <link rel="alternate" type="text/html" href="http://www.masahiko.info/it/archives/000957.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.masahiko.info/blog/mt-atom.cgi/weblog/blog_id=11/entry_id=957" title="Google App Engine コード ラボ （Hackathon）レポート" />
    <id>tag:www.masahiko.info,2008:/it//11.957</id>
    
    <published>2008-06-10T12:59:58Z</published>
    <updated>2008-06-10T14:37:40Z</updated>
    
    <summary>本日の Google Developer Day 2008 Japan の午後は...</summary>
    <author>
        <name>一色政彦</name>
        <uri>http://www.masahiko.info/</uri>
    </author>
            <category term="Google Development" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.masahiko.info/it/">
        <![CDATA[<img alt="Google Developer Day 2008" src="http://www.masahiko.info/it/archives/images/googledevday2008.gif" align="right" height="100" width="200">本日の Google Developer Day 2008 Japan の午後は、Google App Engine コード ラボ （Hackathon）に参加しました。20～30名ぐらいの参加者がいました。

まず最初の30～60分が、課題の Google App Engine アプリケーションである「Wiki」のコード内容の説明でした。

　・<a href="http://code.google.com/p/google-app-engine-codelab/" target="_blank">セッションで使った資料（A progressive example of developing a Wiki with Google App Engine）</a>

その後、「残りの3時間で、この Wiki を拡張するか、独自の Google App Engine アプリケーションを構築せよ」とのことで、それぞれ個人で黙々と、もしくは数名で協力したりしながら、ときには Google 社員のアドバイスを受け、それぞれが思いのままにアプリケーションを開発しました。

そして、5時あたりから開発したアプリケーションのプレゼンを開始しました。プレゼンは希望者だけだったので8名ぐらいが発表していたと思います。次の写真はその風景です。

<img alt="googledevday05.jpg" src="http://www.masahiko.info/it/archives/images/googledevday05.jpg" width="490" height="315" />

ちなみに僕は、独自アプリケーションの開発を選択しました。今回作成したのは、GData API（＝ Google のサービスからデータを取得、設定するためのAPI）を Google App Engine アプリケーション内で使うというもの。具体的には、Google カレンダ（Google Calendar）のイベント情報を Web ページにテキストで列挙し、またテキストでイベントを一括設定するというものです。しかし残念ながら 3 時間という時間制限のなかで、不慣れな Python 言語と GData API の活用とあって、一括設定まではすすみませんでした。しかしできたところまでをみんなの前でプレゼンさせてもらいました。質問もあり、興味を持ってもらえた人もいるようで良かったです。

今回作成したアプリケーションについてもう少し詳しく説明しましょう。]]>
        <![CDATA[今回のアプリケーションでは、GData API を操作するために、既存のライブラリ「gdata-python-client（Google Data APIs Python Client Library）」を使いました。

　・<a href="http://code.google.com/p/gdata-python-client/" target="_blank">gdata-python-client（Google Data APIs Python Client Library）</a>

実際に GData API を使って Google カレンダからデータを取得するには、セキュリティの問題があります。例えばもし、このアプリケーションが悪意のあるアプリケーションであれば、好き勝手に Google カレンダの情報を取得、改ざんできることになってしまいます。このため、GData はいくつかの認証手段が用意されています。今回は AuthSub という認証を使いました（※たぶん Google App Engine では、いまのところ AuthSub しか使えないと思います）。Python 言語による AuthSub については、次のサイトで説明されています。

　・<a href="http://code.google.com/apis/calendar/developers_guide_python.html" target="_blank">API Developer's Guide: Python</a>

しかし今回は gdata-python-client ライブラリを使っています。このライブラリによる実装方法は次のサイト（日本語）で説明されています（帰り際、この記事の翻訳をした人と直接お話をしました。あらためて「どうもありがとうございます」）。

　・<a href="http://mars.shehas.net/~tmatsuo/misc/gdata-ja.html" target="_blank">Google App Engine 上で認証が必要な Google Data Feeds を取得する方法</a>

ちなみに Google App Engine 技術の日本語情報は次のサイトに載るようです。

　・<a href="http://groups.google.co.jp/group/google-app-engine-japan" target="_blank">Google グループ：Google-App-Engine-Japan</a>

では、実際に AuthSub で認証が働くとどうなるのでしょうか？ これは実際に見てもらった方が早いので、今回作成したサンプル アプリケーションの動作を追いながら確認してみましょう。

次の画面は、わたしが作ったアプリケーションのトップ ページです。［Show Google Calendar with Auth］というリンクをクリックします。

<img alt="gaelab01.jpg" src="http://www.masahiko.info/it/archives/images/gaelab01.jpg" width="490" height="232" />

これにより Google サイトによる認証が走ります。次の画面のように、「http://localhost」のサイトが、Google サービスの「http://www.google.com/calendar/feeds/」にアクセスしようとしているが、許可するかどうか、を利用者に問い合わせます。ここで［アクセスを許可］ボタンがクリックされると、初めて GData API によるデータ取得が成功します。

<img alt="gaelab02.jpg" src="http://www.masahiko.info/it/archives/images/gaelab02.jpg" width="490" height="298" />

実際に［アクセスを許可］ボタンがクリックすると、次の画面のように Google カレンダに登録されているイベント情報を列挙します。未来から過去に向かってソートしてみました（※このキャプチャ画像は、途中を切っているので下の方の表示が変です）。

<img alt="gaelab03.jpg" src="http://www.masahiko.info/it/archives/images/gaelab03.jpg" width="490" height="350" />

下部のテキスト入力欄に「2008-06-10 イベント」のような形式で複数行入力して［Add Events］ボタンをクリックすれば一括でカレンダを設定できます。が、そこまで実装する前に時間切れになってしまいました。

-----

# ちなみにほぼすべて英語で、通訳なしでした。英語もっとできるようにならないとダメだね。。。
# 1つだけ英語で質問してみました。「<a href="http://googleappengine.blogspot.com/2008/05/app-engine-launcher-for-mac-os-x.html" target="_blank">Google App Engine Launcher （Mac OS X 用のみ）</a>は、Windows 向けに提供する予定はないの？」って聞いてみたけど、「あれは Google 社員が「20％時間」を使って作っており、Google 社員はほとんど Mac を使っている。ほら周りのみんなも Mac が多いじゃん」って。確かに。Windows 使いの Google 社員の「20％時間」に期待するしかないでしょうか。でもあの程度のアプリケーションなら .NET で簡単に作れると思いますけど。]]>
    </content>
</entry>
<entry>
    <title>Google Developer Day 2008 Japan の風景</title>
    <link rel="alternate" type="text/html" href="http://www.masahiko.info/it/archives/000956.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.masahiko.info/blog/mt-atom.cgi/weblog/blog_id=11/entry_id=956" title="Google Developer Day 2008 Japan の風景" />
    <id>tag:www.masahiko.info,2008:/it//11.956</id>
    
    <published>2008-06-10T12:12:34Z</published>
    <updated>2008-06-10T12:26:54Z</updated>
    
    <summary>本日開催されたGoogle Developer Day 2008 Japan で...</summary>
    <author>
        <name>一色政彦</name>
        <uri>http://www.masahiko.info/</uri>
    </author>
            <category term="Google Development" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.masahiko.info/it/">
        <![CDATA[<img alt="Google Developer Day 2008" src="http://www.masahiko.info/it/archives/images/googledevday2008.gif" align="right" height="100" width="200">本日開催されたGoogle Developer Day 2008 Japan で撮影したいくかの写真を掲載します（画質が悪いですが……）。

<img alt="googledevday00.jpg" src="http://www.masahiko.info/it/archives/images/googledevday00.jpg" width="490" height="238" />

朝一の5Fに置かれていた丸くてカラフルなイスです。みんな基調講演に行っているので人っ子一人いません。

<img alt="googledevday01.jpg" src="http://www.masahiko.info/it/archives/images/googledevday01.jpg" width="490" height="311" />

その脇にあるショーケース。Googleをモチーフとしたいろんなオブジェが飾られています。

<img alt="googledevday02.jpg" src="http://www.masahiko.info/it/archives/images/googledevday02.jpg" width="490" height="368" />

基調講演が始まる直前の風景。中央にカラフルな立方体が積み上げられていてGoogleらしい。

<img alt="googledevday03.jpg" src="http://www.masahiko.info/it/archives/images/googledevday03.jpg" width="490" height="267" />

基調講演中の外でもこのような映像が流れておりのんびりと受けられます。

<img alt="googledevday04.jpg" src="http://www.masahiko.info/it/archives/images/googledevday04.jpg" width="490" height="468" />]]>
        
    </content>
</entry>

</feed> 

