<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>荒井省三のBlog : TechEd</title><link>http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx</link><description>Tags: TechEd</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>TechEd 2009 での Silverlight3 を使ったピアノサンプルについて</title><link>http://blogs.msdn.com/shozoa/archive/2009/09/08/about-piano-demo-on-silverlight3-in-teched-2009.aspx</link><pubDate>Tue, 08 Sep 2009 06:51:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9892380</guid><dc:creator>shozoa</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/9892380.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=9892380</wfw:commentRss><description>&lt;P&gt;TechEd 2009のMVPラウンジでお見せしたSilverlight 3のマルチタッチ対応のピアノのデモですが、その後の調査で作成したデモのバグのためにSilverlight3ランタイムがハングアップしたようになっていたことが判明しました。この件は、多くの方が陥りそうな気がするので自戒の意味も込めて、状況を以下に記載します。&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Silverlight3でマルチタッチを使用するには、System.Windows.Input.Touchクラスを使用します。 &lt;BR&gt;具体的には、「Touch.FrameReported += Touch_FrameReported」のようにイベントハンドラを登録します。イベントハンドラは、「void Touch_FrameReported(object sebder, TouchFrameEventArgs e)」というシグネチャを持ちます。 &lt;/LI&gt;
&lt;LI&gt;イベントハンドラ内では、タッチポイントコレクションを取得します。 &lt;BR&gt;「TouchPointCollection touchPoints e.GetTouchPoints(FrameworkElement)」メソッドでタッチポイントコレクションを取得します。タッチポイントコレクションには、複数のタッチされたポイントで構成されています。 &lt;/LI&gt;
&lt;LI&gt;タッチポイントコレクションからタッチポイントを取り出して処理します。 &lt;BR&gt;「foreach (TouchPoint tp in touchPoints)」のようにタッチポイントを列挙します。タッチポイントには、ActionプロパティとTouchDeviceプロパティなどがあります。 &lt;/LI&gt;
&lt;LI&gt;Actionプロパティによってタッチ動作を識別します。 &lt;BR&gt;TouchAction.Down、Move、Upという列挙値とActionプロパティを比較することでタッチ動作を記述します。タッチの動作の基本は、ダウン-&amp;gt;移動-&amp;gt;アップ(移動が無い場合もあります)になります。 &lt;/LI&gt;
&lt;LI&gt;TouchDeviceプロパティによって、タッチされた場所を識別します。 &lt;BR&gt;TouchDevice.Idにタッチした場所の識別子が格納されています。つまり、ダウン-&amp;gt;移動-&amp;gt;アップが一回のタッチ動作であれば同じ識別子になります。複数(マルチ)のタッチであれば、TouchDevice.Idが異なるので一致するId毎にActionプロパティと組み合わせてタッチ動作を記述します。言い換えると、タッチ動作がダウン-&amp;gt;移動-&amp;gt;アップですからダウン時にTouchDevice.Idと座標を記録して、移動やアップ時に記録されたIdを取り出してタッチ動作にするのです。 &lt;/LI&gt;
&lt;LI&gt;私のサンプルで問題があった個所は、MouseLeftButtonDownイベントとタッチイベントの両方をハンドリングしていたことでした。これで何が問題になったかというと、軽いタッチの場合はOSというかブラウザがタッチダウンをMouseLeftButtonDownイベントに変換してしまうので、タッチダウンイベントを処理できないというものでした。 &lt;/LI&gt;&lt;/OL&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;if tp.Action == TouchAction.Down)
{
    Path hitKey = null;
    // タッチされた場所の最上位のFrameworkElementを取得
    FrameworkElement hitElement =
        tp.TouchDevice.DirectOver as FrameworkElement;
    // これが対処したコード
    while (hitElement != null)
    {
      if (hitElement is Path)
      { hitKey = hitElement as Path;
        Breake;
      }
      // Visual Tree を上へたどる
      hitElement = hitElement.Parent as FrameworkElement;
    }
    if (hitKey != null) タッチダウンの動作を記述
}&lt;/PRE&gt;&lt;BR&gt;&lt;BR&gt;
&lt;P&gt;上記のwhile文が対処コードです。このサンプルでは、Pathオブジェクトにタッチした場合に動作を作り込んでいます。while文の中で「hitElement = hitElement.Parent as FrameworkElement」とすることでVisual Treeを最上位までたどりnullでwhile文を抜けます。このwhile文を入れたことで、タッチダウンがMouseLeftButtonDownイベントに変換されなくなりました。&lt;/P&gt;
&lt;P&gt;この動作はSilverlight3のマルチタッチ対応において仕様ともとれるものです。タッチデバイスでのタッチダウンイベントは、マウスのボタンダウンイベントと同様に扱うこともできるからです。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9892380" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx">TechEd</category></item><item><title>Windows Touch について</title><link>http://blogs.msdn.com/shozoa/archive/2009/09/07/about-windows-touch.aspx</link><pubDate>Mon, 07 Sep 2009 10:31:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9892119</guid><dc:creator>shozoa</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/9892119.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=9892119</wfw:commentRss><description>&lt;P&gt;Windows 7もRTMしまして、マルチタッチに対応しているPCが幾つかあります。具体的には、以下のようなPCです。&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;A href="http://h50146.www5.hp.com/products/desktops/personal/touchsmart_iq800/" target=_blank mce_href="http://h50146.www5.hp.com/products/desktops/personal/touchsmart_iq800/"&gt;HP Touch Smart IQ800&lt;/A&gt; や IQ500&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://h50146.www5.hp.com/products/portables/personal/tx2/" target=_blank mce_href="http://h50146.www5.hp.com/products/portables/personal/tx2/"&gt;HP Touch Smart tx2 ノートブック&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://www1.jp.dell.com/jp/ja/business/notebooks/laptop-latitude-xt2/pd.aspx?refid=laptop-latitude-xt2&amp;amp;s=bsd&amp;amp;cs=jpbsd1&amp;amp;~ck=anavml" target=_blank mce_href="http://www1.jp.dell.com/jp/ja/business/notebooks/laptop-latitude-xt2/pd.aspx?refid=laptop-latitude-xt2&amp;amp;s=bsd&amp;amp;cs=jpbsd1&amp;amp;~ck=anavml"&gt;DELL Latitude XT2&lt;/A&gt; や XT&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;Microsoftで行うデモで良く見かけるのが、IQ800です。個人で所有するとなると、ノートブックになると思います。このように記述している私もHP Touch Smart tx2を購入しました。現在は、Windows 7 RTMをインストールして、マルチタッチ対応のプログラムを開発するのに使っています。マルチタッチ対応のプログラムの実行環境としては、以下のような方法があります。&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Silverlight 3&lt;/LI&gt;
&lt;LI&gt;.NET Framework 3.5&lt;/LI&gt;
&lt;LI&gt;WPF4(.NET Framework 4.0ベータ1)&lt;/LI&gt;
&lt;LI&gt;Win32 APIを使ったネイティブアプリケーション&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;Silverlight 3で開発するには、&lt;A href="http://msdn.microsoft.com/ja-jp/library/system.windows.input.touch(VS.95).aspx" target=_blank mce_href="http://msdn.microsoft.com/ja-jp/library/system.windows.input.touch(VS.95).aspx"&gt;System.Windows.Input.Touch&lt;/A&gt;クラスを使用します。.NET Framework 3.5(WPFかWindows Forms)の場合は、&lt;A href="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=WindowsTouch&amp;amp;DownloadId=5038" target=_blank mce_href="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=WindowsTouch&amp;amp;DownloadId=5038"&gt;Windows 7 Multitouch .NET Interop Sample Library&lt;/A&gt;を使用するのが簡単です。このライブラリの場合は、Win32 APIをラップしたヘルパークラスが提供されています。WPF4では、FrameworkElementにTouchイベントハンドラを記述できるようになっています。が、IDEで自動的には記述できませんのでXAMLに記述する必要があります。&lt;/P&gt;
&lt;P&gt;Windows Touchを理解するには、&lt;A href="http://msdn.microsoft.com/en-us/library/dd317309(VS.85).aspx" target=_blank mce_href="http://msdn.microsoft.com/en-us/library/dd317309(VS.85).aspx"&gt;ManipulationとInertia&lt;/A&gt;を理解するのが良いでしょう。WM_GESTUREやWM_TOUCHメッセージは低レベルなものなので、自分で動作を作りこむ必要があります。これに対して、ManipulationやInertiaでは、複数のタッチによる振る舞いを処理するための仕組みが用意されているからです。デモなどで見かける、写真の移動や回転、ズームなどがManipulationで実現されているのです。 &lt;BR&gt;Silverlight3のWindows Touch対応は、WM_TOUCHメッセージのみの対応となります。従って、タッチによる振る舞いは、コードで作りこむ必要があります。&lt;/P&gt;
&lt;P&gt;HP Touch Smart tx2を使っていて気がついた点は、マルチタッチのドライバーの動作が不安定だということです。色々と調べていくと、ACアダプタを抜いてバッテリモードで試すと安定していることに気がつきました。私が使用しているマルチタッチのドライバーでは、静電式パネルのタッチポイントの認識時に電源周りの磁界が影響するようです。この点を気をつけるようになってから、安定してマルチタッチを試すことができるようになりました。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9892119" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx">TechEd</category></item><item><title>Deep Dive to .NET Framework CLR を作成中です</title><link>http://blogs.msdn.com/shozoa/archive/2009/07/04/deep-dive-to-net-framework-clr.aspx</link><pubDate>Sat, 04 Jul 2009 07:54:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9817271</guid><dc:creator>shozoa</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/9817271.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=9817271</wfw:commentRss><description>&lt;P&gt;TechEd 2009 横浜で「&lt;A href="http://www.microsoft.com/japan/teched/2009/session/tech_abstract.aspx?T2-401" target=_blank mce_href="http://www.microsoft.com/japan/teched/2009/session/tech_abstract.aspx?T2-401"&gt;Deep Dive to .NET Framework CLR&lt;/A&gt;」というセッションを担当します。この資料を作成しています。このセッションは、私の著書である「The Root of .NET Framework」という書籍をモチーフにして、資料を構成しています。どのような内容が良いか、悩みながら作成を行っています。その途中経過を以下に引用します。&lt;BR&gt;&lt;BR&gt;&lt;A href="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DeepDiveto.NETFrameworkCLR_C37B/T2-07-01_2.png" mce_href="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DeepDiveto.NETFrameworkCLR_C37B/T2-07-01_2.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=T2-07-01 border=0 alt=T2-07-01 src="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DeepDiveto.NETFrameworkCLR_C37B/T2-07-01_thumb.png" width=244 height=184 mce_src="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DeepDiveto.NETFrameworkCLR_C37B/T2-07-01_thumb.png"&gt;&lt;/A&gt; &lt;BR&gt;&lt;BR&gt;PEヘッダーから CLIヘッダーのアドレスを見つけて&lt;BR&gt;&lt;BR&gt;&lt;A href="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DeepDiveto.NETFrameworkCLR_C37B/T2-07-02_2.png" mce_href="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DeepDiveto.NETFrameworkCLR_C37B/T2-07-02_2.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=T2-07-02 border=0 alt=T2-07-02 src="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DeepDiveto.NETFrameworkCLR_C37B/T2-07-02_thumb.png" width=244 height=184 mce_src="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DeepDiveto.NETFrameworkCLR_C37B/T2-07-02_thumb.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;CLI ヘッダーを読み解くのが、上記のスライドです。ここまで来るとメタデータが、どのように格納されているかを知りたくなることでしょう。それらも作成しているのですが、どこまで作るかが難しいところです。&lt;/P&gt;
&lt;P&gt;これ以外にも、GCやCLRのホストインターフェース、RCWなどとアイディアがあるのですが、如何とも時間の制約がありますので作成したスライドを全部、説明しきれないかもしれません。現時点で30スライド程度が出来上がっていて、ここから SOSデバッガ拡張や.NET Framework 4.0の話を入れようと思っていますので。まだまだ、悩みは尽きません。公開されているセッションレベルは400番台なので、最低でも16進数ダンプの見方を知っている方が対象になると思います。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9817271" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx">TechEd</category></item><item><title>DLR Console を使って時計をドラッグするサンプル</title><link>http://blogs.msdn.com/shozoa/archive/2008/09/03/dragging-clock-on-dlr-console.aspx</link><pubDate>Wed, 03 Sep 2008 11:49:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8921656</guid><dc:creator>shozoa</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8921656.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8921656</wfw:commentRss><description>&lt;P&gt;前回のエントリで Silverlight Dynamic Language SDK 0.3.0がリリースされたと記載しました。このSDKで提供されているサンプルにDLR Consoleがあります。もっともDLR Consoleは、SDK 0.2.0(Silverlight 2.0 ベータ2と一緒に提供されたものです)で動作するようになっています。SDK 0.3.0に含まれているDLRを調べると、IronPythonのChangeset38029以降のもののようです。このためIronRubyプロジェクトで今日時点で公開されているSVN138よりも新しいDLRになります。このDLRでは、ホスティングAPIなどの細かな変更やネームスペースの変更が行われています。&lt;/P&gt;
&lt;P&gt;SDK 0.3.0のDLR Consoleでは、時計をドラッグするというRuby用のスクリプトが含まれています。時計をドラッグするサンプルは、&lt;A href="http://blog.jimmy.schementi.com/2008/08/dragging-elements-in-silverlight-with.html" target=_blank mce_href="http://blog.jimmy.schementi.com/2008/08/dragging-elements-in-silverlight-with.html"&gt;Jimmyさんのブログ&lt;/A&gt;に解説があり&lt;A href="http://www.flickr.com/photos/jschementi/2802715720/" target=_blank mce_href="http://www.flickr.com/photos/jschementi/2802715720/"&gt;ビデオのリンク&lt;/A&gt;やDLR Consoleを試すリンクなどがあります(英語キーボードなのでご注意ください)。このサンプルを動かしているのが、以下の画像になります。&lt;BR&gt;&lt;A href="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DraggingClockonDLRConsole_FABE/DLR%20Console_2.png" mce_href="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DraggingClockonDLRConsole_FABE/DLR%20Console_2.png"&gt;&lt;IMG style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height=204 alt="DLR Console" src="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DraggingClockonDLRConsole_FABE/DLR%20Console_thumb.png" width=244 border=0 mce_src="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DraggingClockonDLRConsole_FABE/DLR%20Console_thumb.png"&gt;&lt;/A&gt; &lt;BR&gt;&lt;BR&gt;ここで入力しているコードを以下に記載します(Jimmyさんのブログには、一か所不足しているコードがありますので)。&lt;BR&gt;&lt;PRE&gt;require 'lib/clock'
$clock = Clock.show
require 'lib/drag'
Drag.new($clock.canvas).enable
&lt;/PRE&gt;
&lt;P&gt;&lt;BR&gt;これで私は上記のサンプルを動作させることができました。&lt;BR&gt;ちなみに今日時点でIronPythonの最新のChangesetは38690がUpされています。&lt;/P&gt;
&lt;P&gt;追伸:実はTechEdでこのデモをお見せしようとしたのですが、時間が足りなくて忘れてしまいました。Peer Talkで一部の方に受けていたのが、このサンプルです。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8921656" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx">TechEd</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>DLR B4 対応の MyCalc サンプルです</title><link>http://blogs.msdn.com/shozoa/archive/2008/08/30/dlr-b4-based-mycalc-sample.aspx</link><pubDate>Sat, 30 Aug 2008 16:14:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8909669</guid><dc:creator>shozoa</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8909669.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8909669</wfw:commentRss><description>&lt;P&gt;TechEd 2008 Yokohamaでお話したようにDLRのホスティングのサンプルを公開します。今回は、1)MyCalc、2)Toolサンプルの2種類が含まれています。どちらもIronPython 2.0ベータ4のDLR対応ですので、DLRは&lt;A href="http://www.codeplex.com/IronPython/" target=_blank mce_href="http://www.codeplex.com/IronPython/"&gt;IronPythonプロジェクト&lt;/A&gt;からダウンロードしてください。TechEdに参加して頂いた方には、事後になりますがカンファレンスDVDにも収録しますので、そちらを見ていただいても結構です。もっともDVDが届くのまで時間がかかりますので、早く知りたいという場合は、ここからダウンロードしてください。&lt;/P&gt;
&lt;P&gt;それから当日にお話したと思いますが、IronPythonプロジェクトとIronRubyプロジェクトに含まれるDLRの状況を記載しておきます。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;IronPython 2.0ベータ4に対応したIronRubyのソースを私は見つけていません。&lt;/LI&gt;
&lt;LI&gt;IronPython Changeset37512とIronRuby SVN138のDLRは同期しています。&lt;/LI&gt;
&lt;LI&gt;IronPython Chnageset38029のDLRは、37512から変更されていますのでご注意ください。&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;TechEdでお見せしたオブジェクト共有のデモの環境は、Silverlight2ベータ2とIronPython Chnageset37512、IronRuby SVN138です。それぞれのソースコードは、TechEd期間中にサブミットされた最新を使用しています。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8909669" width="1" height="1"&gt;</description><enclosure url="http://blogs.msdn.com/shozoa/attachment/8909669.ashx" length="571266" type="application/x-zip-compressed" /><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx">TechEd</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>明日からTechEdが始まりますが、まだデモの準備中です</title><link>http://blogs.msdn.com/shozoa/archive/2008/08/25/now-making-demos-of-teched.aspx</link><pubDate>Mon, 25 Aug 2008 04:50:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8893056</guid><dc:creator>shozoa</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8893056.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8893056</wfw:commentRss><description>&lt;P&gt;いよいよ明日からTechEd Yokohamaが始まります。実は、まだデモの準備をしている最中なのですが... 先週中にIronRubyとIronPythonプロジェクトで動きがありました。具体的には、IronRuby SVNが135になって週末には137になっていました。IronPythonでもChangeset 37512が週末にUpされました。これらのリビジョンに含まれるDLRですが、かなり同期している模様です。前回のエントリに記載したChangeset36656とSVN132に含まれるDLRとは異なりますので、ご注意ください。&lt;/P&gt;
&lt;P&gt;動かないというものではありませんが、OLEオートメーション系のリファクタリングが行われていました(これだけではありませんが)。IronRubyのソースコードを調べていくと、インタロップ・アセンブリを利用するためにSystem.Scripting.Comネームスペースを使用していました。またIronRuby SVN135からは、RubyというネームスペースがIronRubyというネームスペースに変更になっています。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8893056" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx">TechEd</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>IronRubyとIronPythonのDLRが同期した模様</title><link>http://blogs.msdn.com/shozoa/archive/2008/08/18/dlr-sync-version.aspx</link><pubDate>Mon, 18 Aug 2008 05:18:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8875748</guid><dc:creator>shozoa</dc:creator><slash:comments>4</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8875748.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8875748</wfw:commentRss><description>&lt;P&gt;FXさんからのフィードバッグから色々と調べていました。&lt;/P&gt;
&lt;P&gt;IronRuby SVN 132とIronPython Changeset35778で試したところDLRが同期している模様です。両方のソースコードからビルドして組み合わせて見ると問題なく動作することを確認できました。Changeset35778の詳細をまだ調べきれていませんが、ベータ4に対してネームスペースなどのリファクタリングが行われています。一番顕著なのが、System.Scripting.Runtimeネームスペースが、Microsoft.Scripting.Runtimeになっていることです。つまり、Microsoft.Scripting.CoreプロジェクトからMicrosoft.Scriptingプロジェクトへ変更になっているのです。&lt;/P&gt;
&lt;P&gt;IronPythonからはclrモジュールのUse関数を利用することでRubyのスクリプトを実行することができます。またIronRubyのソースコードの大きな変更は、署名無しのソースツリーになったことです。&lt;/P&gt;
&lt;P&gt;これを使って来週に迫ったTechEd Yokohamaのデモをこれから考えるところです。&lt;/P&gt;
&lt;P&gt;追記:FXさんよりフィードバックを頂いて、Changeset36656がリリースされているそうです。このChangesetを使って試してみるつもりです。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8875748" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx">TechEd</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>IronPython 2.0 Beta4 に含まれるDLR</title><link>http://blogs.msdn.com/shozoa/archive/2008/08/08/dlr-beta4.aspx</link><pubDate>Fri, 08 Aug 2008 13:41:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8843246</guid><dc:creator>shozoa</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8843246.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8843246</wfw:commentRss><description>&lt;P&gt;IronPython 2.0 Beta4のリリースに伴ってDLRにも変更が行われています。細かく調べていくと、Microsoft.Scripting.Core.dllに含まれるネームスペースが大きく変更されています。具体的には、以下のようなものです。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Microsoft.Scripting -&amp;gt; System.Scripting&lt;/LI&gt;
&lt;LI&gt;Microsoft.Scripting.Runtime -&amp;gt; System.Scripting.Runtime&lt;BR&gt;など&lt;/LI&gt;
&lt;LI&gt;Microsoft.Scripting.Ast -&amp;gt; System.Linq.Expression&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;現時点では、全てがSystemネームスペースに移行しているわけではありません。一部、Microsoft.Scriptingネームスペースも残っています。また、Microsoft.Scripting.dllの方は、ネームスペースの変更はありません。&lt;/P&gt;
&lt;P&gt;現在、TechEdの資料やサンプルを作成しているのですが、上記のネームスペース変更以外にLanguageContextクラスなども変更になっており、色々と調べています。この関係で、IronRubyのSVN 127のソースコードも調べていくと、DLRはSystemネームスペースになっているものが含まれています。でも、Beta4とは違うバージョンのためIronPython 2.0 Beta4からIronRubyを利用することはできませんでした。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8843246" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx">TechEd</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>IronPython 2.0 の OLE オートメーション・サポート</title><link>http://blogs.msdn.com/shozoa/archive/2008/08/05/ironpython-2-0-support-ole-automation-on-beta4.aspx</link><pubDate>Tue, 05 Aug 2008 11:50:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8833268</guid><dc:creator>shozoa</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8833268.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8833268</wfw:commentRss><description>&lt;P&gt;&lt;A href="http://blogs.msdn.com/shrib/archive/2008/07/30/idispatch-support-on-in-ironpython-beta-4.aspx" target=_blank mce_href="http://blogs.msdn.com/shrib/archive/2008/07/30/idispatch-support-on-in-ironpython-beta-4.aspx"&gt;Shiroさんのブログ&lt;/A&gt;にIronPython 2.0 Beta4でOLEオートメーションサポートがどのようになるかが詳しく解説されています。彼の記述した内容の概要は、以下のようなものです。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;IronPython 1.x系では、オンザフライでインタロップ・アセンブリを生成するか、インタロップ・アセンブリを明示的に指定してCOMオブジェクトを使用する(チュートリアルにあるマーリンのデモがこれです)。&lt;/LI&gt;
&lt;LI&gt;IronPython 2.0Beta3では、デフォルトでPIAかインタロップアセンブリを生成します(実際に私がBeta2で実験すると、-X:PreferComDispatchスイッチによってSystem.__ComObjectを使用していますし、Beta3ではスイッチが削除されています)。&lt;/LI&gt;
&lt;LI&gt;IronPython 2.0Beta4では、デフォルトでSystem.__ComObejctを使用するようになります。-X:PreferComInteropAssemblyスイッチを使うことでインタロップ・アセンブリを使用するようになります(彼のブログでは、DLR_PreferComInteropAssembly環境変数と書かれています)。&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;DLR上のOLEオートメーション・サポートは、1)Type.GetTypeFromProgIDメソッド、2)clr.AddReferenceToTypeLibrary関数を使う方法と従来通りインタロップ・アセンブリを使用する方法になります。このような仕様にした理由として、VB6のCreateObject関数と同様の仕様にするためであると彼は説明しています。&lt;/P&gt;
&lt;P&gt;ChageSet34570を使って試してみると彼のブログに記述されているような動作を確認することができました。但し、DLR_PreferComInteropAssembly環境変数だけは動作しませんでした。ソースコードを調べていくと、環境変数としてのサポート機能はまだ実装されていないようです。これ以外にもOLEオートメーション・サポートに関する内容がShiroさんのブログに記述されていますので、ご興味がある方は参照してください。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8833268" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx">TechEd</category></item><item><title>ドメイン特化型開発の書籍</title><link>http://blogs.msdn.com/shozoa/archive/2008/07/25/domain-specific-development-with-visual-studio-dsl-tools.aspx</link><pubDate>Fri, 25 Jul 2008 12:14:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8771709</guid><dc:creator>shozoa</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8771709.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8771709</wfw:commentRss><description>&lt;P&gt;色々な方たちのご協力を得ながら&lt;A href="http://www.informit.com/store/product.aspx?isbn=0321398203" target=_blank mce_href="http://www.informit.com/store/product.aspx?isbn=0321398203"&gt;Domain-Specific Development with Visual Studio DSL Tools&lt;/A&gt;の書籍の作業を行っていました。このほど出版していただける日経BPソフトプレスさんから TechEd 2008 Yokohamaで&lt;A href="http://softpress.nikkeibp.co.jp/nsp/tech_ed2008_information002.shtml" target=_blank mce_href="http://softpress.nikkeibp.co.jp/nsp/tech_ed2008_information002.shtml"&gt;関連書籍のイベント&lt;/A&gt;を開催していただけることになりました。微力ながら私も参加させていただきますので、宜しくお願いいたします。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8771709" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx">TechEd</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/DSL/default.aspx">DSL</category></item><item><title>IronRuby アルファのリリース</title><link>http://blogs.msdn.com/shozoa/archive/2008/07/25/ironruby-alpha-release.aspx</link><pubDate>Fri, 25 Jul 2008 06:50:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8771038</guid><dc:creator>shozoa</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8771038.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8771038</wfw:commentRss><description>&lt;P&gt;&lt;A href="http://www.iunknown.com/2008/07/ironruby-at-oscon.html" target=_blank mce_href="http://www.iunknown.com/2008/07/ironruby-at-oscon.html"&gt;John Lam&lt;/A&gt; が OSC2008で最初のバイナリーセットであるアルファをリリースしたとアナウンスしています。RubyForgeの&lt;A href="http://rubyforge.org/projects/ironruby/" target=_blank mce_href="http://rubyforge.org/projects/ironruby/"&gt;IronRubyプロジェクト&lt;/A&gt;からダウンロードできます。合わせて、IronRubyの&lt;A href="http://github.com/ironruby/ironruby-contrib/tree/master" target=_blank mce_href="http://github.com/ironruby/ironruby-contrib/tree/master"&gt;協力者向けの(Contributor)プロジェクト&lt;/A&gt;もアナウンスされています。&lt;/P&gt;
&lt;P&gt;これから色々と試してみる予定です。&lt;BR&gt;リポジトリをチェックすると127になっています。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8771038" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx">TechEd</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>DLR ホスティング API の概要</title><link>http://blogs.msdn.com/shozoa/archive/2008/07/24/dlr-hosting-api.aspx</link><pubDate>Thu, 24 Jul 2008 11:54:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8769014</guid><dc:creator>shozoa</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8769014.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8769014</wfw:commentRss><description>&lt;P&gt;Silverlight 2.0 Beta2やIronPython 2.0 Beta3に含まれているDLRのホスティングAPIの概要図を作成しました。&lt;BR&gt;&lt;A href="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DLRHostingAPI_FBB4/DLR%20hosting%20API_2.png" mce_href="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DLRHostingAPI_FBB4/DLR%20hosting%20API_2.png"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=118 alt="DLR hosting API" src="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DLRHostingAPI_FBB4/DLR%20hosting%20API_thumb.png" width=244 border=0 mce_src="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DLRHostingAPI_FBB4/DLR%20hosting%20API_thumb.png"&gt;&lt;/A&gt;&amp;nbsp;&lt;BR&gt;&lt;BR&gt;TechEd Yokohamaに向けて準備したものです。この作業の中でBeta2向けに移植した簡単な言語シリーズもBeta3向けに移植しています。Beta2からBeta3への移行は、それほど難しくないので、TechEd Yokohamaが終了してから公開する予定でいます。それまでに新しいベータがでなかればという条件が付きますけど。&lt;/P&gt;
&lt;P&gt;会場では可能な限り最新版のDLRでお見せしたいと考えています。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8769014" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx">TechEd</category></item><item><title>TechEd2008 の資料を作成中です</title><link>http://blogs.msdn.com/shozoa/archive/2008/07/16/creating-teched2008-content.aspx</link><pubDate>Wed, 16 Jul 2008 11:52:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8737567</guid><dc:creator>shozoa</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8737567.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8737567</wfw:commentRss><description>&lt;P&gt;IronPython 1.1.2RC1がリリースされています。バグフィックスが主体のようです。&lt;BR&gt;今は、今年のTechEd Yokohama のプレゼンテーション資料の作成を行っています。テーマは「Lightweight Language」にしたので、内容を色々と検討しています。今、考えているのは以下のようなものです。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;DLRホスティングモデル&lt;BR&gt;(コンソール、Silverlight 2.0)&lt;/LI&gt;
&lt;LI&gt;オブジェクト共有(DynamicObject)&lt;/LI&gt;
&lt;LI&gt;俺様言語&lt;/LI&gt;
&lt;LI&gt;DynamicSiteの利点と欠点&lt;/LI&gt;
&lt;LI&gt;etc&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;DLRのASTに関しては、プレアルファから極端な変更がないので、基本的な考えは昨年のセッションを参考にすれば良いかと考えています。今回はホスティングモデルの拡張性を中心にしようかと考えています。ホスティングモデルが理解できれば、John Lamが公開している&lt;A href="http://www.iunknown.com/2008/06/ironruby-and-aspnet-mvc.html" target=_blank mce_href="http://www.iunknown.com/2008/06/ironruby-and-aspnet-mvc.html"&gt;ASP.NET MVC + IronRuby&lt;/A&gt; や Silverlight 2.0のDLR対応も理解できるようになりますので。&lt;/P&gt;
&lt;P&gt;#IronPythonのChangeSet 34286とIronRuby SVN Rev123を調べていて気が付きましたが、IronRuby側のDLRがIronPythonに同期し始めている模様です。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8737567" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx">TechEd</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>Dynamic Silverlightの記事が公開されました</title><link>http://blogs.msdn.com/shozoa/archive/2008/07/13/publish-dynamic-silverlight-article.aspx</link><pubDate>Sun, 13 Jul 2008 09:09:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8726876</guid><dc:creator>shozoa</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8726876.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8726876</wfw:commentRss><description>&lt;P&gt;遅まきながら日経ソフトウェア7月号に掲載された「Silverlightで動的言語を使う」の記事が&lt;A href="http://itpro.nikkeibp.co.jp/article/COLUMN/20080617/308438/?ST=swd-tech&amp;amp;P=4" target=_blank mce_href="http://itpro.nikkeibp.co.jp/article/COLUMN/20080617/308438/?ST=swd-tech&amp;amp;P=4"&gt;日経BP IT Pro&lt;/A&gt;でオンライン公開されました。詳細な記事というより、IronPythonやIronRubyでSilverlightアプリが作れるという紹介程度なんですけど...&lt;BR&gt;SilverLight2.0 Beta2でIronPythonを使う場合に、追加のアセンブリを読み込むには&lt;BR&gt;import clr&lt;BR&gt;clr.AddReference("アセンブリ名")&lt;BR&gt;とすることで読み込むことができるようになっています。Beta1の場合は、アセンブリの完全名である必要があったのですが、Beta2から使いやすくなっています。IronRubyの場合は、requireでアセンブリの完全名を記述するのは、Pre Alphaの頃と同じですのでご注意ください。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8726876" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx">TechEd</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>IronPython ソースコード・リポジトリ</title><link>http://blogs.msdn.com/shozoa/archive/2008/06/25/ironpython-repository.aspx</link><pubDate>Wed, 25 Jun 2008 11:38:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8651683</guid><dc:creator>shozoa</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8651683.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8651683</wfw:commentRss><description>&lt;P&gt;　IronPython 2.0 Beta3が公開されてから気がついたのですが、ソースリポジトリにBeta3が入っていないですねぇ。何ででしょうね。少し、不思議な気がしています。まだまだ準備に入れていないのですが、今年のTechEd横浜でもDLR関係のセッションを持たせていただくことになりました。内容などはまだまだこれからです。&lt;/P&gt;
&lt;P&gt;米国のTechEdでは、IronPythonとIronRubyのハンズオンがあったようです。それと今月の初めにあったRailsConfでIronRubyを使ってRuby on Railsを動作させたようです。最近のJohn Lamのブログには、IronRubyでASP.NET MVCのサンプルが掲載されています。これらのサンプルも面白いと思うのですが、やはりDLRの面白さはオブジェクトの共有にあると思うので、この点からは色々と考えなきゃと思っていたりします。&lt;/P&gt;
&lt;P&gt;何か、取り留めもない話になりましたけど近況報告ということです。&lt;BR&gt;#6/28は、札幌におりますので、OSC2008にいらっしゃる方が居りましたら、お気軽にお声をおかけ下さい。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8651683" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx">TechEd</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item></channel></rss>