<?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>MSDN Blogs</title><link>http://blogs.msdn.com/default.aspx</link><description>The Blogs of MSDN</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Virtualiser Operations Manager</title><link>http://blogs.msdn.com/spapp/archive/2008/07/24/virtualiser-operations-manager.aspx</link><pubDate>Thu, 24 Jul 2008 05:08:33 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768760</guid><dc:creator>spapp</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Cela va toujours mieux en l'&amp;#233;crivant, mais il ne s'agit pas d'une position officielle sur le support d'environnement virtualis&amp;#233;s. Vous connaissez tous l'histoire relative aux solutions tierces telles que d&amp;#233;crites dans les fiches &lt;a title="http://support.microsoft.com/kb/954958/" href="http://support.microsoft.com/kb/954958/" target="_blank"&gt;954958&lt;/a&gt;, &lt;a title="http://support.microsoft.com/kb/897614/" href="http://support.microsoft.com/kb/897614/" target="_blank"&gt;897614&lt;/a&gt;, &lt;a title="http://support.microsoft.com/kb/897615/" href="http://support.microsoft.com/kb/897615/" target="_blank"&gt;897615&lt;/a&gt;, etc.&lt;/p&gt;  &lt;p&gt;Dans les diff&amp;#233;rents r&amp;#244;les de System Center Operations Manager, certains sont plus ou moins candidats &amp;#224; la virtualisation.&lt;/p&gt;  &lt;p&gt;Les serveurs h&amp;#233;bergeant les bases de donn&amp;#233;es sont de pi&amp;#232;tres candidats, sauf si l'environnement est tr&amp;#232;s petit et apr&amp;#232;s avoir fait des tests de mont&amp;#233;e en charge. Une position officielle relative &amp;#224; SQL Server dans le cadre d'Ops Mgr serait la bienvenue au-del&amp;#224; d'un simple oui ou non.&lt;/p&gt;  &lt;p&gt;Le Root Management Server (RMS) fait un usage intensif de la CPU et de la m&amp;#233;moire, par cons&amp;#233;quent, sa virtualisation est un peu plus envisageable, mais avec les m&amp;#234;mes restrictions sur les tests de mont&amp;#233;e en charge.&lt;/p&gt;  &lt;p&gt;Les serveurs d'administration sont, en revanche, de bons candidats, d&amp;#233;sormais, compte tenu des am&amp;#233;liorations r&amp;#233;centes des produits de virtualisation et, en particulier, de Hyper-V.&lt;/p&gt;  &lt;p&gt;Les serveurs passerelles ne sont jamais que des agents agissant comme proxy. Par cons&amp;#233;quent, leur virtualisation est totalement r&amp;#233;aliste.&lt;/p&gt;  &lt;p&gt;Les serveurs de reporting devraient &amp;#234;tre virtualis&amp;#233;s dans un grand nombre de cas.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768760" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/spapp/archive/tags/Information/default.aspx">Information</category><category domain="http://blogs.msdn.com/spapp/archive/tags/Operations+Manager/default.aspx">Operations Manager</category><category domain="http://blogs.msdn.com/spapp/archive/tags/Virtualisation/default.aspx">Virtualisation</category><category domain="http://blogs.msdn.com/spapp/archive/tags/Support/default.aspx">Support</category><category domain="http://blogs.msdn.com/spapp/archive/tags/Hyper-V/default.aspx">Hyper-V</category></item><item><title>XDev 2008 | X-over Development Conference 2008 に登壇します</title><link>http://blogs.msdn.com/tomohn/archive/2008/07/24/xdev-2008-x-over-development-conference-2008.aspx</link><pubDate>Thu, 24 Jul 2008 05:06:12 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768758</guid><dc:creator>Tomoharu Nagasawa</dc:creator><slash:comments>0</slash:comments><description>こんにちは。Tech・Ed 2008 Yokohama の先の話となりますが、日経BPさんの X-over Development Conference 2008 （通称 XDev 2008）に登壇することになりました。 昨年は残念ながら参加しておりませんが、なんでも大変な天候の中でもとても 熱い カンファレンスだったと伝え聞いています。そんな熱のあるカンファレンスで登壇できることは私にとってもとても楽しみです。 XDev 2008 については、 XDev 2008 http://itpro.nikkeibp.co.jp/ev/xdev/index.html をご覧ください。 私のセッションは、 2A-4: Visual Studio Team System 2008 &amp;#215; チーム開発 Visual Studio Team System 2008 で構築するチーム開発基盤 9月5日 15:25～16:05 と題し、チーム開発基盤をVSTSで構築するとこうなる・・・というのをご覧いただこうと考えています。詳細はサイトでご覧いただければ！！ &amp;#160; 他にもマイクロソフトの社員が登壇するセッションがありますので、そちらもぜひチェックし、ご参加ください。...(&lt;a href="http://blogs.msdn.com/tomohn/archive/2008/07/24/xdev-2008-x-over-development-conference-2008.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768758" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/tomohn/archive/tags/_BB30DF30CA30FC30_/default.aspx">セミナー</category><category domain="http://blogs.msdn.com/tomohn/archive/tags/XDev/default.aspx">XDev</category></item><item><title>Microsoft Financial Analyst Meeting: webcast available live</title><link>http://blogs.msdn.com/mthree/archive/2008/07/23/microsoft-analyst-mtg-072308.aspx</link><pubDate>Thu, 24 Jul 2008 04:42:29 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768707</guid><dc:creator>mthree</dc:creator><slash:comments>0</slash:comments><description>As noted on our website, Microsoft hosts a Financial Analyst Meeting tomorrow (July 24). You can listen in to the action and get the play-by-play as a live webcast will be available starting at 8:30AM Pacific Time. As noted on Bloomberg news today... "Ballmer, along with Chief Financial Officer Chris Liddell and the presidents of Microsoft's three businesses, will address analysts and investors tomorrow at company headquarters in Redmond..." Hopefully analysts will get a little more clarity about...(&lt;a href="http://blogs.msdn.com/mthree/archive/2008/07/23/microsoft-analyst-mtg-072308.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768707" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mthree/archive/tags/webcast/default.aspx">webcast</category><category domain="http://blogs.msdn.com/mthree/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://blogs.msdn.com/mthree/archive/tags/Announcements/default.aspx">Announcements</category></item><item><title>GNC Review of Access 2007</title><link>http://blogs.msdn.com/access/archive/2008/07/23/gnc-review.aspx</link><pubDate>Thu, 24 Jul 2008 04:31:09 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768683</guid><dc:creator>clintc</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Found this nice review about Access 2007 the other day…&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;GCN Lab review: The options are endless — and the learning curve is, too — but with Access, you get more bang for the buck than with any other program of its kind.&lt;/p&gt;    &lt;p&gt;Access has a reputation for being, well, inaccessible. But with the 2007 version, this seems true only if you’re working on an advanced schema or using advanced features.      &lt;br /&gt;&lt;img height="9" alt=" " src="http://www.gcn.com/images/clearpixel.gif" width="1" border="0" /&gt;      &lt;br /&gt;One of the best ways to get started with the program quickly is to use one of the included database templates. There are dozens to choose from, particularly if you tap into the repository available online from Microsoft.com. &lt;/p&gt;    &lt;p&gt;…&lt;/p&gt;    &lt;p&gt;&lt;a title="http://www.gcn.com/print/27_16/46621-1.html" href="http://www.gcn.com/print/27_16/46621-1.html"&gt;http://www.gcn.com/print/27_16/46621-1.html&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768683" width="1" height="1"&gt;</description></item><item><title>Useful Abstractions Enabled with ContinueWith</title><link>http://blogs.msdn.com/pfxteam/archive/2008/07/23/8768673.aspx</link><pubDate>Thu, 24 Jul 2008 04:27:08 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768673</guid><dc:creator>toub</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;In the June 2008 CTP of &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=348F73FD-593D-4B3C-B055-694C50D2B0F3&amp;amp;displaylang=en"&gt;Parallel Extensions to the .NET Framework&lt;/a&gt;, we introduced the ContinueWith method on both Task and Future&amp;lt;T&amp;gt;.&amp;#160; ContinueWith is, in effect, a callback, very much like events in .NET.&amp;#160; With events, a causal action results in the event being raised, which by default triggers all of the delegates registered with the event to be invoked.&amp;#160; ContinueWith supports this, but rather than just registering the callback, it also provides back a Task or Future&amp;lt;T&amp;gt; that represents the callback; that returned Task or Future&amp;lt;T&amp;gt;'s lifecycle is tied specifically to the callback and won't be marked as IsCompleted until that callback completes.&amp;#160; While at its core this could be considered a relatively simple idea and is useful for general dataflow in applications, it also enables some important patterns and can serve as the building block for a whole host of larger abstractions.&lt;/p&gt;  &lt;p&gt;For example, the June 2008 CTP doesn't provide support for mulit-item continuations (is this something you think we should provide in a future release?): you can create a continuation Task or Future&amp;lt;T&amp;gt; for when one Task or Future&amp;lt;T&amp;gt; finishes, but out-of-the-box you can't create one for when all of multiple Task or Future&amp;lt;T&amp;gt;'s complete.&amp;#160; Nevertheless, you can use the basic ContinueWith support to implement this additional support.&amp;#160; Here's an example of a ContinueWith method you could implement, where you provide it with multiple Task instances, and the resulting Task will only be scheduled and executed when all of the provided tasks complete (I've ommitted parameter validation and the like to simplify the code):&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;static Task ContinueWhenAll(     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Action&amp;lt;Task[]&amp;gt; continuation, params Task[] tasks)       &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; var starter = Future&amp;lt;bool&amp;gt;.Create();       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; var task = starter.ContinueWith(o =&amp;gt; continuation(tasks)); &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; CountdownEvent ce = new CountdownEvent(tasks.Length);      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Action&amp;lt;Task&amp;gt; whenComplete = delegate {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (ce.Decrement()) starter.Value = true;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; };       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; foreach (var t in tasks)       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; t.ContinueWith(whenComplete, TaskContinuationKind.OnAny,       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; TaskCreationOptions.None, true); &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; return task;      &lt;br /&gt;} &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This ContinueWhenAll method tasks two parameters: an Action&amp;lt;Task[]&amp;gt; to execute when all of the provided tasks have completed (supplied with those tasks), and the params array of the Tasks to monitor for completion.&amp;#160; It then uses a workaround to create a Task that can be started at an arbitrary time in the future (in the June 2008 CTP, we don't directly support this capability, hence the workaround, but we're planning to in a future release as that capability is useful for a bunch of scenarios, including this one).&amp;#160; A delegate is created that will count down from the number of provided tasks every time it's invoked, and when the count reaches 0, it will start the task.&amp;#160; ContinueWith is then used to register that whenComplete action as a continuation for all of the parameter tasks.&amp;#160; And voila, we now have a ContinueWhenAll method, which can be used like:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Task t1 = ..., t2 = ...;     &lt;br /&gt;Task t3 = ContinueWhenAll(      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; delegate { Console.WriteLine(&amp;quot;t1 and t2 finished&amp;quot;); }, t1, t2);&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Similarly, a method could be implemented for creating a task continuation for when any of a set of tasks completes (rather than when they all complete):&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;static Task ContinueWhenAny(      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Action&amp;lt;Task&amp;gt; continuation, params Task[] tasks)       &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; WriteOnce&amp;lt;Task&amp;gt; theCompletedTask = new WriteOnce&amp;lt;Task&amp;gt;();       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; var starter = Future&amp;lt;bool&amp;gt;.Create();       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; var task = starter.ContinueWith(o =&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; continuation(theCompletedTask.Value)); &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; Action&amp;lt;Task&amp;gt; whenComplete = t =&amp;gt; {      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (theCompletedTask.TrySetValue(t)) starter.Value = true;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; };       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; foreach (var t in tasks)       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; t.ContinueWith(whenComplete, TaskContinuationKind.OnAny,       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; TaskCreationOptions.None, true); &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; return task;      &lt;br /&gt;}&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This implementation is very similar to ContinueWhenAll.&amp;#160; However, the action that's registered as the continuation for each task uses a WriteOnce&amp;lt;T&amp;gt; to store the first Task to complete and to schedule the continuation task when it does.&amp;#160; ContinueWhenAny can be used like:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Task t1 = ..., t2 = ...;     &lt;br /&gt;Task t3 = ContinueWhenAny(      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; delegate { Console.WriteLine(&amp;quot;t1 or t2 finished&amp;quot;); }, t1, t2);&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;There are other neat patterns enabled with ContinueWith.&amp;#160; One pattern that's starting to become popular with frameworks like the CCR or AsyncEnumerator is to take advantage of C#'s iterator support to make writing code that uses asynchronous operations a bit more like sequential code.&amp;#160; While not the primary focus of the Task Parallel Library, ContinueWith can be used to implement such patterns in at least a limited capacity.&amp;#160; Consider the following method:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;static void RunAsync(IEnumerable&amp;lt;Task&amp;gt; iterator)      &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; var enumerator = iterator.GetEnumerator();       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Action a = null;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; a = delegate       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (enumerator.MoveNext())       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; var next = enumerator.Current;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; next.ContinueWith(delegate { a(); },       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; TaskContinuationKind.OnAny, TaskCreationOptions.None, true);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; else enumerator.Dispose();       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; };       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; a();       &lt;br /&gt;}&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This method accepts an IEnumerable&amp;lt;Task&amp;gt;.&amp;#160; It retrieves an enumerator from the enumerable and uses that enumerator in a delegate.&amp;#160; The delegate moves the enumerator to its next element, and if there is a next element, retrieves it and uses ContinueWith to schedule the delegate (recursively, in a sense) for execution when that current Task completes.&amp;#160; When the enumerator reaches the end, it's disposed.&amp;#160; With that delegate created, RunAsync simply executes the delegate to get the execution started.&lt;/p&gt;  &lt;p&gt;Now imagine I wanted a method that would asynchronously read a file, processing it as it's read in.&amp;#160; I can implement such a method as follows:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;static IEnumerable&amp;lt;Task&amp;gt; ReadFile(string path)      &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; using (FileStream fs = new FileStream(       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; path, FileMode.Open, FileAccess.Read, FileShare.Read, 0x1000, true))       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; var enc = new UTF8Encoding();       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; byte[] data = new byte[0x1000];       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; while (true)       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; var pendingRead = CreateFutureFromApm&amp;lt;int&amp;gt;(ac =&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; fs.BeginRead(data, 0, data.Length, ac, null), fs.EndRead);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; yield return pendingRead;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; int bytesRead = pendingRead.Value;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (bytesRead &amp;lt;= 0) break; &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Console.WriteLine(enc.GetString(data, 0, bytesRead));      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }       &lt;br /&gt;}&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;ReadFile opens a file stream and continually reads from it asynchronously.&amp;#160; The code wraps usage of the FileStream's BeginRead/EndRead methods with a Future&amp;lt;int&amp;gt; (using the example method from &lt;a href="http://blogs.msdn.com/8272833.aspx"&gt;http://blogs.msdn.com/8272833.aspx&lt;/a&gt;); that Future&amp;lt;int&amp;gt; is yielded from the ReadFile method (which returns an enumerator).&amp;#160; We'll execute ReadFile by passing it to RunAsync.&amp;#160; When the Future&amp;lt;int&amp;gt; completes, its continuation will be executed, which will cause the RunAsync iterator to MoveNext, thus ending up back in the ReadFile method just after the yield location.&amp;#160; The ContinueWhenAll method can be used to allow more complicated asynchronous methods to be written, by wrapping multiple asynchronous invocations and yielding a continuation for when they all complete.&lt;/p&gt;  &lt;p&gt;There are a myriad of such interesting patterns that ContinueWith enables.&amp;#160; We'd love to hear about any useful ones you come up with.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768673" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/pfxteam/archive/tags/Task+Parallel+Library/default.aspx">Task Parallel Library</category><category domain="http://blogs.msdn.com/pfxteam/archive/tags/Parallel+Extensions/default.aspx">Parallel Extensions</category><category domain="http://blogs.msdn.com/pfxteam/archive/tags/Coordination+Data+Structures/default.aspx">Coordination Data Structures</category></item><item><title>Events in Space</title><link>http://blogs.msdn.com/cburrows/archive/2008/07/24/events-in-space.aspx</link><pubDate>Thu, 24 Jul 2008 04:01:14 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768609</guid><dc:creator>cburrows</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;My last post was many months ago, and I've been pretty busy here since then. Nobody who starts a blog &lt;em&gt;means&lt;/em&gt; to neglect it, even though mostly that's what happens. I won't let it go for so long again. =)&lt;/p&gt;  &lt;p&gt;Anyway, &lt;a href="http://blogs.msdn.com/cburrows/archive/2008/02/18/field-like-events-considered-harmful.aspx"&gt;we were talking about events&lt;/a&gt;. Field-like events in particular, and the nastiness of their implementation with respect to the way they use synchronization. Sam, also on my team, has &lt;a href="http://blogs.msdn.com/samng/archive/2007/11/26/virtual-events-in-c.aspx"&gt;a post that has to do with field-like events&lt;/a&gt;, in particular that when you declare them virtual and then override them, you should be a bit careful. &lt;/p&gt;  &lt;p&gt;I want to bring up something else about events, which is their performance in space--how much of it they use. On a per-instance basis, each field-like event you declare takes up at least the size of a delegate field. Is that the best you can do?&lt;/p&gt;  &lt;p&gt;WinForms doesn't think so. Take a minute and reflect over System.Windows.Forms.Control and look at the events. There are 68 of them. I won't list them all here, but they're things like &amp;quot;Click,&amp;quot; &amp;quot;GotFocus,&amp;quot; &amp;quot;KeyDown,&amp;quot; etc. Now, Control is the fundamental base class for pieces of WinForms UI, and so there are likely to be a lot of instances around. If these events were all field-like, then every piece of UI would be bloated by 68 delegate fields. That'll add up quickly, but the important bit is that it's almost all a waste. It's not the case that control events are frequently subscribed to. Mostly they're not. You create a button and then you listen for Click and maybe one or two others, but you're not adding 68 events on the thing.&lt;/p&gt;  &lt;p&gt;So what did they do? Well, you can look at the events. They implemented their own accessors, and those accessors, instead of dealing in terms of delegate fields, deal with a list of delegates that have been used so far in that instance.&lt;/p&gt;  &lt;p&gt;This strategy allows the list to be sparse.&lt;/p&gt;  &lt;p&gt;See, if no one ever calls add for a particular event, then it never gets a list entry. If someone does, then it has a list entry and the total footprint grows by that amount for your instance, but that's ok. You're paying for what you're using!&lt;/p&gt;  &lt;p&gt;This is a really good idea, if you're in the same boat. Of course... you're probably not. Just having a handful of events won't warrant this amount of attention, since the container is going to have overhead. And if you implement a lot of events but they're always used, or if you don't have a lot of instances, you probably also don't want to do this. Oh, and if you're going to try an optimization like this, test it to see if it gets you anything. You don't want to wind up with an implementation that's worse than you started with (which is actually not that unlikely--an obvious implementation here uses a Dictionary, but Dictionaries have quite a lot of overhead). You can see that the particular implementation used by System.Windows.Forms.Control has a tiny, hand-crafted list.&lt;/p&gt;  &lt;p&gt;So that's another reason sometimes not to use field-like events.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768609" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/cburrows/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://blogs.msdn.com/cburrows/archive/tags/events/default.aspx">events</category></item><item><title>Update on Microsoft Insurance Value Chain + Sizzle</title><link>http://blogs.msdn.com/allandcp/archive/2008/07/24/update-on-microsoft-insurance-value-chain-sizzle.aspx</link><pubDate>Thu, 24 Jul 2008 04:00:02 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768266</guid><dc:creator>allandcp_ms</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;&lt;a href="http://blogs.msdn.com/allandcp/pages/VS2008.aspx"&gt;eek!&lt;/a&gt; The &lt;a href="http://www.microsoft.com/industry/financialservices/insurance/media/insurance_livemeeting.wmx" target="_blank"&gt;webcast is online&lt;/a&gt; for your viewing pleasure in case you missed it. I thought it was very well done - I learned a few things *and* it was less than 60 minutes (my attention span max)!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.microsoft.com/industry/financialservices/insurance/media/insurance_livemeeting.wmx" target="_blank"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="267" alt="webcast thesis" src="http://blogs.msdn.com/blogfiles/allandcp/WindowsLiveWriter/UpdateonMicrosoftInsuranceValueChainSizz_129B6/image_3.png" width="339" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The abstract: &lt;em&gt;Microsoft's Insurance Value Chain (IVC) pioneered Services Oriented Architecture, Web Services, and standards-based integration in the insurance industry.&amp;#160; At ACORD LOMA 2008, Microsoft released a number of technical assets to accelerate customers and partners who want to build next generation software to plug into the IVC.&amp;#160; This webcast will follow up on that announcement and will explain the IVC concept and demonstrate new tools and components that help speed the development of Connected Experiences for customers, employees, and partners.&amp;#160; The components include a &lt;strong&gt;.NET web services&lt;/strong&gt; messaging framework for ACORD P&amp;amp;C and L&amp;amp;A;&amp;#160; a next generation web reference user interface based on a &lt;strong&gt;Software plus Services&lt;/strong&gt; model; and finally an &lt;strong&gt;Office Business Application&lt;/strong&gt; example showcasing each piece working as part of a unified solution.&amp;#160; You also will hear from &lt;strong&gt;Virtual Earth&lt;/strong&gt; and how they are changing the game by enabling organizations to create &lt;strong&gt;immersive experiences&lt;/strong&gt; for their clients to easily search, locate, and visualize business locations and other locally-relevant information.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.addthis.com/bookmark.php" onclick="addthis_url   = location.href; addthis_title = document.title; return addthis_click(this);" target="_blank"&gt;&lt;img src="http://s9.addthis.com/button1-share.gif" width="125" height="16" border="0" alt="share this!" /&gt;&lt;/a&gt; &lt;script type="text/javascript"&gt;var addthis_pub = 'allandcp';&lt;/script&gt;&lt;script type="text/javascript" src="http://s9.addthis.com/js/widget.php?v=10"&gt;&lt;/script&gt; &lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768266" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/allandcp/archive/tags/Wealth/default.aspx">Wealth</category></item><item><title>Regular Expression Flat FIle Source</title><link>http://blogs.msdn.com/mattm/archive/2008/07/23/regular-expression-flat-file-source.aspx</link><pubDate>Thu, 24 Jul 2008 03:52:27 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768590</guid><dc:creator>mmasson</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;The RegEx flat file source is one of the new &lt;a href="http://www.codeplex.com/SQLSrvIntegrationSrv"&gt;community samples&lt;/a&gt; for SQL Server 2008 we’ve published to Codeplex. It uses &lt;a href="http://msdn.microsoft.com/en-us/library/hs600312.aspx"&gt;regular expressions&lt;/a&gt; to extract values from a text file. It works similar to the flat file source, except that it’s not limited to CSV-type files (I saw a demo where the developer who created the sample used it to extract class names from a source files). &lt;/p&gt;  &lt;p&gt;Note, when I ran the installer for the sample, it didn’t put the RegExFlatFileSource.dll file under 100\DTS\PipelineComponents. It only put the source down. We’ll either update the installer, or update the docs on the site. To get the component, I opened the project in Visual Studio, and ran a build. The project has a post build step which places the DLL under the PipelineComponents directory, and runs gacutil.exe to place it in the GAC. &lt;/p&gt;  &lt;p&gt;Once the sample is installed, you can add it to your toolbar in Visual Studio.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/mattm/WindowsLiveWriter/RegularExpressionFlatFIleSource_111B1/image_2.png"&gt;&lt;img title="image" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="116" alt="image" src="http://blogs.msdn.com/blogfiles/mattm/WindowsLiveWriter/RegularExpressionFlatFIleSource_111B1/image_thumb.png" width="209" border="0" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;The component has two outputs – one for matches, and one for rows without matches.&lt;/p&gt;  &lt;p&gt;We’ll start off with a simple flat file example. My data looks like this:&lt;/p&gt;  &lt;p&gt;value 1,1,2001-01-01   &lt;br /&gt;value 2,2,2002-02-02    &lt;br /&gt;value 3,3,2003-03-03    &lt;br /&gt;value 4,4,2004-04-04    &lt;br /&gt;value 5,5,2005-05-05    &lt;br /&gt;value 6,6,2006-06-06    &lt;br /&gt;value 7,7,2007-07-07    &lt;br /&gt;value 8,8,2008-08-08&lt;/p&gt;  &lt;p&gt;Columns are defined using &lt;a href="http://msdn.microsoft.com/en-us/library/bs2twtah.aspx"&gt;groups&lt;/a&gt;. If I want the component to behave like a regular CSV parser, I can use a regular expression like this:&lt;/p&gt;  &lt;p&gt;(\w+),(\w+),(\w+)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/mattm/WindowsLiveWriter/RegularExpressionFlatFIleSource_111B1/image_6.png"&gt;&lt;img title="image" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="361" alt="image" src="http://blogs.msdn.com/blogfiles/mattm/WindowsLiveWriter/RegularExpressionFlatFIleSource_111B1/image_thumb_2.png" width="484" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;If I click on the Column Mappings tab, I can see four columns have been defined.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/mattm/WindowsLiveWriter/RegularExpressionFlatFIleSource_111B1/image_4.png"&gt;&lt;img title="image" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="139" alt="image" src="http://blogs.msdn.com/blogfiles/mattm/WindowsLiveWriter/RegularExpressionFlatFIleSource_111B1/image_thumb_1.png" width="124" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Like with regular expression matches, the first match (column 0) is the entire pattern (which is the whole line in this case). The next three columns are the groups I defined in my regex.&lt;/p&gt;  &lt;p&gt;I can also provide default names for my columns by naming the groups. This regex is a little more specific, and adds names to the groups using the ?&amp;lt;name&amp;gt; syntax supported by .NET. &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;(?&amp;lt;text&amp;gt;.*?),(?&amp;lt;number&amp;gt;\d),(?&amp;lt;date&amp;gt;\d{4}-\d{2}-\d{2})&lt;/p&gt;  &lt;p&gt;If I look back at the Column Mappings tab, I can see the columns now have names.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/mattm/WindowsLiveWriter/RegularExpressionFlatFIleSource_111B1/image_10.png"&gt;&lt;img title="image" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="139" alt="image" src="http://blogs.msdn.com/blogfiles/mattm/WindowsLiveWriter/RegularExpressionFlatFIleSource_111B1/image_thumb_4.png" width="124" border="0" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;You’ll notice that the component provides two outputs – one for rows that match the pattern, and one for rows that don’t match. The non-matching row output will always have a single string column which contains the entire line.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/mattm/WindowsLiveWriter/RegularExpressionFlatFIleSource_111B1/image_8.png"&gt;&lt;img title="image" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="236" alt="image" src="http://blogs.msdn.com/blogfiles/mattm/WindowsLiveWriter/RegularExpressionFlatFIleSource_111B1/image_thumb_3.png" width="385" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Adding a data viewer to the Match output, I can see all of the column matches it made:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/mattm/WindowsLiveWriter/RegularExpressionFlatFIleSource_111B1/image_12.png"&gt;&lt;img title="image" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="228" alt="image" src="http://blogs.msdn.com/blogfiles/mattm/WindowsLiveWriter/RegularExpressionFlatFIleSource_111B1/image_thumb_5.png" width="484" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I really like this sample because it opens up a lot of data sources, like log files, that used to require custom parsing using a script component. I think it has a lot of potential!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768590" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mattm/archive/tags/Samples/default.aspx">Samples</category></item><item><title>Information Management in the 21st Century</title><link>http://blogs.msdn.com/hchoing/archive/2008/07/23/information-management-in-the-21st-century.aspx</link><pubDate>Thu, 24 Jul 2008 03:42:27 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768555</guid><dc:creator>Hong Choing</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Listen/download podcast (15:14 min)    &lt;br /&gt;&lt;a href="http://www.scientificcomputing.com/multimedia/audio/21st_Century_Information_Mgmt.mp3"&gt;&lt;img alt="audio player" src="http://www.scientificcomputing.com/images/player.gif" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.scientificcomputing.com/Information_Management_in_the_21st_Century.aspx" href="http://www.scientificcomputing.com/Information_Management_in_the_21st_Century.aspx"&gt;http://www.scientificcomputing.com/Information_Management_in_the_21st_Century.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;In the global information economy of the 21st century, effective information management is critical to gaining competitive advantage. In virtually all industries, companies that can best transform their data into information will have an edge over the competition, as vast knowledge can be gained, resulting in better speed to insight and confidence in decision making.    &lt;br /&gt;Unfortunately, enterprises are fraught with complex interdisciplinary processes and challenges when it comes to integrating systems to be able to take full advantage of the information they are generating. These challenges include:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;inability of the scientist/manager to efficiently find information locked in a variety of unconnected and frequently incompatible systems across the organization &lt;/li&gt;    &lt;li&gt;lack of integration among the devices and equipment in the laboratory and enterprise systems &lt;/li&gt;    &lt;li&gt;a multitude of different systems used for analysis &lt;/li&gt;    &lt;li&gt;manufacturing and research teams, under pressure to move quickly, that are compelled to make decisions without all of the relevant data at their disposal &lt;/li&gt;    &lt;li&gt;manual reporting processes resulting, for example, in compound pipeline reports that are out of date before they are even completed &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;To enable effective information management, there are many IT-based activities that need to be conducted by researchers, scientists and managers, such as&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;search &lt;/li&gt;    &lt;li&gt;data integration &lt;/li&gt;    &lt;li&gt;collaboration &lt;/li&gt;    &lt;li&gt;analysis/visualization &lt;/li&gt;    &lt;li&gt;reporting/business intelligence &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;   &lt;br /&gt;This podcast discusses these five activities, illustrating the complexities and challenges and, more importantly, the advances in technology that address them thereby driving innovation.&lt;/p&gt;  &lt;p&gt;Listen/download podcast (15:14 min)   &lt;br /&gt;&lt;a href="http://www.scientificcomputing.com/multimedia/audio/21st_Century_Information_Mgmt.mp3"&gt;&lt;img alt="audio player" src="http://www.scientificcomputing.com/images/player.gif" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768555" width="1" height="1"&gt;</description></item><item><title>Imagine Cup 2008 Memories</title><link>http://blogs.msdn.com/giorgio/archive/2008/07/24/imagine-cup-2008-memories.aspx</link><pubDate>Thu, 24 Jul 2008 03:41:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768549</guid><dc:creator>gisardo</dc:creator><slash:comments>1</slash:comments><description>Imagine Cup 2008 is over. Another GREAT edition has challenged more than 100 thousands students from all over the world. This year I’ve been invited as a judge in the Software Design category; it’s hard to describe the amazing week I spent with the competitors, other judges and all the Microsoft ADEs and staff. I thought that sharing some picture might be a good start; however, if you have any question on this or previous edition of IC…don’t hesitate to contact me or add a comment to this post Louvre...(&lt;a href="http://blogs.msdn.com/giorgio/archive/2008/07/24/imagine-cup-2008-memories.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768549" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/giorgio/archive/tags/Imagine+Cup/default.aspx">Imagine Cup</category></item><item><title>Community post: Peter’s Software releases VelociForm</title><link>http://blogs.msdn.com/access/archive/2008/07/23/community-post-peter-s-software-releases-velociform.aspx</link><pubDate>Thu, 24 Jul 2008 03:20:22 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768498</guid><dc:creator>clintc</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;I got the following email from Peter’s Software:&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Los Angeles, CA For Release July 28, 2008 - Adding to its growing suite of Microsoft Access developer tools, Peter's Software announces the release of VelociForm v1.0.&lt;/p&gt;    &lt;p&gt;VelociForm is an add-on for Microsoft Access that provides the ability to instantly and dynamically display an add/change/delete/search form based on any table or query definition, or SQL statement. Intended as an alternative to creating a separate form for each miscellaneous table, VelociForm is one form that brings consistency, flexibility and a professional look to the beginner or experienced developer's Access application. Users can set properties with an easy-to-use form, then open VelociForm with one line of code or a one-line macro.&lt;/p&gt;    &lt;p&gt;Like the Access form wizard, VelociForm displays a form based on table or query fields. Unlike the form wizard, VelociForm appears instantly, is fully functional, professionally designed, and fields and labels are sized to fit the data they contain. Since VelociForm is formatted on the fly, any table or query changes to the underlying record source are instantly reflected on VelociForm.&lt;/p&gt;    &lt;p&gt;Shareware versions of VelociForm are available from the Peter's Software web site at &lt;a href="http://www.peterssoftware.com"&gt;www.peterssoftware.com&lt;/a&gt;.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;I haven’t tried it out but thought I would pass along the information.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768498" width="1" height="1"&gt;</description></item><item><title>How to create IronPython objects of types defined in C#</title><link>http://blogs.msdn.com/seshadripv/archive/2008/07/23/how-to-create-objects-of-types-defined-in-c-inside-a-hosted-python-script.aspx</link><pubDate>Thu, 24 Jul 2008 02:45:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768459</guid><dc:creator>seshadripv</dc:creator><slash:comments>1</slash:comments><description>&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;SPAN style="FONT-SIZE: 10.5pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Trebuchet MS','sans-serif'"&gt;The DLR Hosting API lets the hosted script instantiate objects of types defined in the hosting &lt;SPAN style="FONT-SIZE: 10.5pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Trebuchet MS','sans-serif'"&gt;C# / VB module. This post describes how to do that using the appropriate methods from the API. Here are the simple steps - &lt;/SPAN&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpFirst style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="FONT-SIZE: 10.5pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Trebuchet MS','sans-serif'; mso-fareast-font-family: 'Trebuchet MS'; mso-bidi-font-family: 'Trebuchet MS'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;1)&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10.5pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Trebuchet MS','sans-serif'"&gt;Load the assembly containing the type in to the ScriptRuntime object&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: 0.5in; LINE-HEIGHT: normal; mso-add-space: auto; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #2b91af; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;ScriptRuntime&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; runtime = &lt;SPAN style="COLOR: #2b91af"&gt;ScriptRuntime&lt;/SPAN&gt;.Create();&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: 0.5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;runtime.LoadAssembly( &lt;SPAN style="COLOR: #2b91af"&gt;Assembly&lt;/SPAN&gt;.GetAssembly( &lt;SPAN style="COLOR: blue"&gt;typeof&lt;/SPAN&gt;( n1.&lt;SPAN style="COLOR: #2b91af"&gt;MyType1&lt;/SPAN&gt;)));&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: 0.5in"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="FONT-SIZE: 10.5pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Trebuchet MS','sans-serif'; mso-fareast-font-family: 'Trebuchet MS'; mso-bidi-font-family: 'Trebuchet MS'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;2)&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10.5pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Trebuchet MS','sans-serif'"&gt;Import the namespace/type inside the script&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: 0.5in"&gt;&lt;FONT face=Calibri size=3&gt;from n1 import *&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="FONT-SIZE: 10.5pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Trebuchet MS','sans-serif'; mso-fareast-font-family: 'Trebuchet MS'; mso-bidi-font-family: 'Trebuchet MS'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;3)&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10.5pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Trebuchet MS','sans-serif'"&gt;Create an object of the type and invoke members&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: 0.5in"&gt;&lt;FONT face=Calibri size=3&gt;n=MyType1()&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpLast style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: 0.5in"&gt;&lt;FONT face=Calibri size=3&gt;print n.Name&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;SPAN style="FONT-SIZE: 10.5pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Trebuchet MS','sans-serif'"&gt;Here’s the full sample &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; System.Scripting;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; Microsoft.Scripting.Hosting;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; System.Reflection;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;namespace&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; n1 {&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;MyType1&lt;/SPAN&gt; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; Name { &lt;SPAN style="COLOR: blue"&gt;get&lt;/SPAN&gt;; &lt;SPAN style="COLOR: blue"&gt;set&lt;/SPAN&gt;; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; MyType1() {&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Name = &lt;SPAN style="COLOR: #a31515"&gt;"MyType1"&lt;/SPAN&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;public&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;Program&lt;/SPAN&gt; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; Main(&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt;[] args) {&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; code = &lt;SPAN style="COLOR: #a31515"&gt;@"from n1 import *&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;n=MyType1()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;print n.Name"&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #2b91af"&gt;ScriptRuntime&lt;/SPAN&gt; runtime = &lt;SPAN style="COLOR: #2b91af"&gt;ScriptRuntime&lt;/SPAN&gt;.Create();&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;runtime.LoadAssembly( &lt;SPAN style="COLOR: #2b91af"&gt;Assembly&lt;/SPAN&gt;.GetAssembly( &lt;SPAN style="COLOR: blue"&gt;typeof&lt;/SPAN&gt;( n1.&lt;SPAN style="COLOR: #2b91af"&gt;MyType1&lt;/SPAN&gt;)));&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #2b91af"&gt;ScriptEngine&lt;/SPAN&gt; eng = runtime.GetEngine(&lt;SPAN style="COLOR: #a31515"&gt;"py"&lt;/SPAN&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #2b91af"&gt;ScriptScope&lt;/SPAN&gt; scope = eng.GetEngine(&lt;SPAN style="COLOR: #a31515"&gt;"py"&lt;/SPAN&gt;).CreateScope();&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #2b91af"&gt;ScriptSource&lt;/SPAN&gt; src = eng.CreateScriptSourceFromString( code, &lt;SPAN style="COLOR: #2b91af"&gt;SourceCodeKind&lt;/SPAN&gt;.Statements);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;src.Execute(scope);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-fareast-font-family: Calibri; mso-no-proof: yes; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;}&lt;/SPAN&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768459" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/seshadripv/archive/tags/IronPython/default.aspx">IronPython</category><category domain="http://blogs.msdn.com/seshadripv/archive/tags/Hosting+API/default.aspx">Hosting API</category><category domain="http://blogs.msdn.com/seshadripv/archive/tags/sample/default.aspx">sample</category><category domain="http://blogs.msdn.com/seshadripv/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://blogs.msdn.com/seshadripv/archive/tags/ScriptRuntime/default.aspx">ScriptRuntime</category><category domain="http://blogs.msdn.com/seshadripv/archive/tags/LoadAssembly/default.aspx">LoadAssembly</category></item><item><title>PowerShell Build Environment for Windows SDK</title><link>http://blogs.msdn.com/powershell/archive/2008/07/24/powershell-build-environment-for-windows-sdk.aspx</link><pubDate>Thu, 24 Jul 2008 02:39:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768433</guid><dc:creator>PowerShellTeam</dc:creator><slash:comments>1</slash:comments><description>&lt;P&gt;The Windows SDK team would like your feedback on what features you would like most in&amp;nbsp;a future&amp;nbsp;Windows SDK.&amp;nbsp; One of your choices is a PowerShell Build Environment.&amp;nbsp; If this is something that would be useful to you, go &lt;A class="" href="http://blogs.msdn.com/windowssdk/archive/2008/07/23/what-new-windows-sdk-features-do-you-want.aspx" mce_href="http://blogs.msdn.com/windowssdk/archive/2008/07/23/what-new-windows-sdk-features-do-you-want.aspx"&gt;HERE&lt;/A&gt; and take the survey and let them know.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Cheers!&lt;/P&gt;
&lt;P&gt;Jeffrey Snover [MSFT]&lt;BR&gt;Windows Management Partner Architect&lt;BR&gt;Visit the Windows PowerShell Team blog at:&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;A href="http://blogs.msdn.com/PowerShell"&gt;http://blogs.msdn.com/PowerShell&lt;/A&gt;&lt;BR&gt;Visit the Windows PowerShell ScriptCenter at:&amp;nbsp; &lt;A href="http://www.microsoft.com/technet/scriptcenter/hubs/msh.mspx"&gt;http://www.microsoft.com/technet/scriptcenter/hubs/msh.mspx&lt;/A&gt;&lt;BR&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768433" width="1" height="1"&gt;</description></item><item><title>Fix corrupt preformance counter information with logman</title><link>http://blogs.msdn.com/movingmars/archive/2008/07/23/fix-corrupt-preformance-counter-information-with-logman.aspx</link><pubDate>Thu, 24 Jul 2008 02:35:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768513</guid><dc:creator>MovingMars</dc:creator><slash:comments>1</slash:comments><description>&lt;P&gt;I'm a bit rusty on the operations side of things and this sometimes gets me into trouble. So, when I find a tool that can clean up the mess after I've already scrambled things beyond recognition, I waste no time using it. Sometimes I'm so anxious to use it, in fact, that I launch the tool without reading all the instructions first. I stumbled upon a tool today that fixes corrupt performance counters. And, by mistake, I neglected to supply all the suggested parameters. The result was an interesting accident, but one I am not likely to forget soon.&lt;/P&gt;
&lt;P&gt;So here's the situation. I was trying to set up some performance counters and alerts on a SQL Server (SQL2K5) by importing a template my friend Chad Boyd&amp;nbsp;- &lt;A href="http://blogs.mssqltips.com/blogs/chadboyd" mce_href="http://blogs.mssqltips.com/blogs/chadboyd"&gt;http://blogs.mssqltips.com/blogs/chadboyd&lt;/A&gt; created. However, there were changes I should have made to the template to insure the counters would work on the new server. After installing from the template, I had no counters that could be recognized. I tried a number of things, eventually realizing that I had corrupted the counter information in my registry. I resigned myself to the probability that the only likely solution was to rebuild the box (I had not made any restore points either - it seems the only time you really need a restore point is when you don't have one...).&lt;/P&gt;
&lt;P&gt;I searched TechNet and other likely places for a solution, but found nothing that helped. Finally as sort of a last resort, while looking at one of the multitude of counter errors in the event viewer, I clicked the "More Info" Link (this was on windows server 2003). This took me to an article on TechNet that said I could use a builtin command "lodctr.exe" to fix the problem (see: &lt;A href="http://technet.microsoft.com/en-us/library/bb490926(TechNet.10).aspx" mce_href="http://technet.microsoft.com/en-us/library/bb490926(TechNet.10).aspx"&gt;http://technet.microsoft.com/en-us/library/bb490926(TechNet.10).aspx&lt;/A&gt;&amp;nbsp;). &lt;/P&gt;
&lt;P&gt;Lodctr.exe is supplied with every version of windows (I think) since windows 2003 server. The description of lodctr says "&lt;EM&gt;Lodctr Registers new Performance counter names and Explain text for a service or device driver, and saves and restores counter settings and Explain text."&lt;/EM&gt;&amp;nbsp; What an understatement. I've looked around and don't see a lot of references to it. Those that do seem to imply that if you use the /r switch (to fix registry problems), you must also include the name of a file containing the correct entries. Luckily, as I said, I'm not known for patience or thorough reading, so I missed this.&lt;/P&gt;
&lt;P&gt;Here's what I did.&amp;nbsp;From a command prompt on the affected machine I entered &lt;EM&gt;&lt;STRONG&gt;lodctr.exe /r&lt;/STRONG&gt;&lt;/EM&gt;&amp;nbsp;&amp;nbsp;and hit enter. Lodctr started working and went away long enough for me to start worrying (now, I finished reading and realized that I should have used &lt;EM&gt;/r:filename &lt;/EM&gt;but by the time I was through reading this, my cmd prompt was back and there was a message that said "Info: Successfully rebuilt performance counter setting from system backup store". &lt;/P&gt;
&lt;P&gt;&amp;nbsp;I can't tell you how or why this works, but it does (I've tested it on a box running Windows 2003 Server and one running Vista). Perhaps someone more knowledgable than me will feel like filling in the details. But regardless of how or why it works, it does work. And, that's what I care about...&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768513" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/movingmars/archive/tags/Tips+_2600_amp_3B00_+Tricks/default.aspx">Tips &amp;amp; Tricks</category></item><item><title>SharePoint End User Training</title><link>http://blogs.msdn.com/ianpal/archive/2008/07/24/sharepoint-end-user-training.aspx</link><pubDate>Thu, 24 Jul 2008 02:33:45 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768415</guid><dc:creator>ianpal</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;If you are looking for the End User Training for SharePoint 2007, the End User training is free to all, and is provided by the SharePoint Product team. &lt;p&gt;There is a standalone version that you can run on a users PC desktop, and also a version of the same content that runs in the &lt;a href="http://www.codeplex.com/slk"&gt;SharePoint Learning Kit (SLK)&lt;/a&gt; if you want leverage MOSS as your training platform, track who has taken the course, and facilitate/manage the participation in the training. &lt;p&gt;The portal site to access these official training courses from Microsoft is: &lt;a href="http://office.microsoft.com/en-us/sharepointserver/HA102488011033.aspx"&gt;http://office.microsoft.com/en-us/sharepointserver/HA102488011033.aspx&lt;/a&gt; &lt;p&gt;The direct download to the standalone training here:&amp;nbsp; &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=7bb3a2a3-6a9f-49f4-84e8-ff3fb71046df&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyID=7bb3a2a3-6a9f-49f4-84e8-ff3fb71046df&amp;amp;displaylang=en&lt;/a&gt; &lt;p&gt;Training topics included in the &lt;a href="http://office.microsoft.com/en-us/sharepointserver/HA102488011033.aspx"&gt;Office SharePoint Server 2007 Training&lt;/a&gt;: &lt;blockquote&gt; &lt;p&gt;· &lt;strong&gt;&lt;u&gt;Collaboration&lt;/u&gt;:&lt;/strong&gt; team sites, permissions, Web parts, libraries, lists, blogs, wikis, and workspaces. &lt;p&gt;· &lt;strong&gt;&lt;u&gt;Enterprise Content Management&lt;/u&gt;:&lt;/strong&gt; document and records management, protecting files, using workflows, compliance, and more. &lt;p&gt;· &lt;u&gt;&lt;strong&gt;Search&lt;/strong&gt;:&lt;/u&gt; finding files, Web sites, information and people. &lt;p&gt;· &lt;u&gt;&lt;strong&gt;Portals and personalization&lt;/strong&gt;&lt;/u&gt;: My Sites, targeting content, and managing My Site access &lt;p&gt;· &lt;u&gt;&lt;strong&gt;Business processes and forms&lt;/strong&gt;&lt;/u&gt;: streamline business processes, gather information with forms, and configure workflows. &lt;p&gt;· &lt;u&gt;&lt;strong&gt;Business intelligence&lt;/strong&gt;&lt;/u&gt;: share Excel workbooks, work with a Report Center site, use dashboards, integrate internal data, and more.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;If you want to see what these training courses look like and what content they include, Ian Morrish from Microsoft New Zealand has them all running on a public site to easily see/evaluate them &lt;a href="http://training.wssdemo.com/training/default.aspx"&gt;http://training.wssdemo.com/training/default.aspx&lt;/a&gt; &lt;p&gt;Additionally, there is 17 x 30 minute videos that you can watch to learn about team sites, document management, calendars etc in SharePoint.&amp;nbsp; Find them all here &lt;a href="http://office.microsoft.com/en-us/training/cr102146081033.aspx"&gt;http://office.microsoft.com/en-us/training/cr102146081033.aspx&lt;/a&gt; &lt;p&gt;Finally - our training partners also offer End User Training if there is a need for specialised requirements for site ownership etc. &lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768415" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/ianpal/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://blogs.msdn.com/ianpal/archive/tags/Training/default.aspx">Training</category></item><item><title>Darn Gigabit switches...</title><link>http://blogs.msdn.com/conor_cunningham_msft/archive/2008/07/23/darn-gigabit-switches.aspx</link><pubDate>Thu, 24 Jul 2008 02:22:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768404</guid><dc:creator>Conor Cunningham [MSFT]</dc:creator><slash:comments>1</slash:comments><description>I had a netgear gs108 (8 port gigabit switch) die on me this evening. Perhaps it is me working from home.. Perhaps it is the high temperatures in Austin this time of year.. Perhaps it is the humidity from Hurricane Dolly. Who knows... I have patched together the home network enough to get back online, albeit at 100Mbs (which is now sooooo 2400 baud...) So, I'm looking to buy a new switch for the home network. http://www.newegg.com/Product/Product.aspx?Item=N82E16833129035 Comments appreciated - I...(&lt;a href="http://blogs.msdn.com/conor_cunningham_msft/archive/2008/07/23/darn-gigabit-switches.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768404" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/conor_cunningham_msft/archive/tags/network/default.aspx">network</category></item><item><title>BizTalk - a beautiful big beast</title><link>http://blogs.msdn.com/geoc/archive/2008/07/24/biztalk-a-beautiful-big-beast.aspx</link><pubDate>Thu, 24 Jul 2008 01:29:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768414</guid><dc:creator>geoc</dc:creator><slash:comments>2</slash:comments><description>&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;OK, so here's a confession - I've always been a huge fan of BizTalk. I remember back in the day (that's last century to you, young fella) when &lt;A class="" href="http://blogs.technet.com/jamesu/" mce_href="http://blogs.technet.com/jamesu/"&gt;James Utzschneider&lt;/A&gt; and his team came up with the BizTalk name, the library and community.&amp;nbsp;But let's face facts, when BizTalk Server 2000 came out, it was still a great idea (using XML and derivatives as the core to your central messaging hub for EAI and B2B) but lacked the ‘complete engineering’ required for you to bet your business on it (things like monitoring, staging and performance tuning were, um, 'challenging'). Since then we’ve improved it with BTS 2000, then 2002, 2004 (which was the “bet your business on this” release) then 2006 and today we’re at &lt;A class="" href="http://www.microsoft.com/biztalk/en/us/default.aspx" mce_href="http://www.microsoft.com/biztalk/en/us/default.aspx"&gt;BizTalk Server 2006 R2&lt;/A&gt; and now it’s a magnificent beautiful beast of a product.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;(Incidentally, if you’re using BizTalk as the central pillar of your SOA strategy, then you’ll want to take a look at our ESB Guidance, &lt;A class="" href="http://msdn.microsoft.com/en-us/library/cc487894.aspx" mce_href="http://msdn.microsoft.com/en-us/library/cc487894.aspx"&gt;here&lt;/A&gt;.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;It is a big beast though – for a couple of reasons. The main one is actually business politics. Because it’s a central messaging hub, it’s really an infrastructure sell and there aren’t many people in organisations that understand both the technical and business significance of that. Getting both the Enterprise Architects as well as the General Managers to invest in such infrastructure can be interesting. The second reason for BizTalk being a “big beast” is that, because it’s a central messaging hub, it touches so many systems. And while we try (!) to have well defined interfaces into all these systems, it often takes a knowledge of those systems to get the end-to-end business process flowing smoothly. So, that’s a big chunk of technical knowledge required – outside the knowledge of BizTalk. &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;The answer for a successful BizTalk implementation appears to involve the following:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN-LEFT: 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: Arial"&gt;&lt;SPAN style="mso-list: Ignore"&gt;-&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;Executive buy in and support – after all BizTalk is going to span many groups both internal and external to your organisation. It’s going to have a big impact on how you do business.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN-LEFT: 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: Arial"&gt;&lt;SPAN style="mso-list: Ignore"&gt;-&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;An “integration” centre of excellence run by passionate and committed people&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN-LEFT: 36pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: Arial"&gt;&lt;SPAN style="mso-list: Ignore"&gt;-&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;Great &lt;A class="" href="http://www.microsoft.com/optimization/model/coreio.mspx" mce_href="http://www.microsoft.com/optimization/model/coreio.mspx"&gt;core infrastructure optimization&lt;/A&gt; (ie a metric driven IT department that keeps the lights on and is always looking for ways to improve)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;Fortunately, things are getting easier. We've now got some great BizTalk partners here in Australia (&lt;A class="" href="http://www.avanade.com/au/" mce_href="http://www.avanade.com/au/"&gt;Avanade&lt;/A&gt;, &lt;A class="" href="http://www.breezetraining.com.au/site/" mce_href="http://www.breezetraining.com.au/site/"&gt;Breeze&lt;/A&gt;, &lt;A class="" href="http://www.data3.com/Pages/default.aspx" mce_href="http://www.data3.com/Pages/default.aspx"&gt;Data#3&lt;/A&gt;,&amp;nbsp;&lt;A class="" href="http://sharepoint.datacogs.com/default.aspx" mce_href="http://sharepoint.datacogs.com/default.aspx"&gt;DataCogs&lt;/A&gt;, &lt;A class="" href="http://www.oakton.com.au/" mce_href="http://www.oakton.com.au/"&gt;Oakton&lt;/A&gt;, &lt;A class="" href="http://www.stargategroup.com.au/" mce_href="http://www.stargategroup.com.au/"&gt;Stargate&lt;/A&gt; to name a few). Additionally, the folks in Redmond have produced some great “how to” manuals that you can download. In particular, I’d highlight the &lt;A class="" href="http://msdn.microsoft.com/en-us/library/cc296643.aspx" mce_href="http://msdn.microsoft.com/en-us/library/cc296643.aspx"&gt;Operations Guide&lt;/A&gt; and &lt;A class="" href="http://msdn.microsoft.com/en-us/library/cc558617.aspx" mce_href="http://msdn.microsoft.com/en-us/library/cc558617.aspx"&gt;Performance Guide&lt;/A&gt;. You can get the full list &lt;A class="" href="http://msdn.microsoft.com/en-us/library/cc185650.aspx" mce_href="http://msdn.microsoft.com/en-us/library/cc185650.aspx"&gt;here&lt;/A&gt;. &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;BizTalk just gets better – and if you look at where we’re going with &lt;A class="" href="http://www.microsoft.com/soa/products/oslo.aspx" mce_href="http://www.microsoft.com/soa/products/oslo.aspx"&gt;Oslo&lt;/A&gt;, you can see it continues to be pretty core to our enterprise development strategy.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768414" width="1" height="1"&gt;</description></item><item><title>Previous Post's Application Using Live Data Services</title><link>http://blogs.msdn.com/corrinab/archive/2008/07/24/8768276.aspx</link><pubDate>Thu, 24 Jul 2008 01:15:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768276</guid><dc:creator>CorrinaB</dc:creator><slash:comments>4</slash:comments><description>&lt;P&gt;All of the code for the sample application described in my previous post is updated and working in Silverlight 2 beta 2 now, and it is using live data services from various places on the web including MSN Video, Flickr, Digg, and Ebay. My passion is not coding, so the code is not perfect by any means, but it works reasonably well. &lt;/P&gt;
&lt;P&gt;You can download my sample project or view the application live using the following links...&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A class="" title="Download Project" href="http://www.corrina_b.members.winisp.net/riapalooza/final/RiaPaloozaB2Proj.zip" mce_href="http://www.corrina_b.members.winisp.net/riapalooza/final/RiaPaloozaB2Proj.zip"&gt;Download Project&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A class="" title="View Application Live" href="http://www.corrina_b.members.winisp.net/riapalooza/final/testpage.html" mce_href="http://www.corrina_b.members.winisp.net/riapalooza/final/testpage.html"&gt;View Application Live&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768276" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/corrinab/archive/tags/Silverlight+2/default.aspx">Silverlight 2</category></item><item><title>19th Enterprise Architecture Practitioners Conference: Day 1 Highlights</title><link>http://blogs.msdn.com/mikewalker/archive/2008/07/23/19th-enterprise-architecture-practitioners-conference-day-1-highlights.aspx</link><pubDate>Thu, 24 Jul 2008 01:09:36 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768259</guid><dc:creator>mikewalker</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;For those who didn't get the updates. Here is a summary of the activates at the Open Group Conference in Chicago.    &lt;br /&gt;    &lt;br /&gt;The Open Group&amp;#8217;s 19th Enterprise Architecture Practitioners Conference kicked off on Monday, July 21st in Chicago.&amp;#160; Industry leaders from near and far convened at the historic InterContinental Chicago Hotel to share their insights on the latest enterprise architecture trends, challenges and opportunities facing federal government organizations as well as global businesses.&amp;#160; Below, please find highlights from Day One.&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;&lt;b&gt;Allen Brown, President and CEO, The Open Group&lt;/b&gt;, kicked off the Day One &amp;#8220;Frameworks for Federated Architectures&amp;#8221; plenary session with open remarks. Mr. Brown welcomed several hundred attendees from around the globe.&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;Following Mr. Brown&amp;#8217;s opening remarks &lt;b&gt;Wing Commander&lt;/b&gt; &lt;b&gt;Shaun Harvey, Department Director, United Kingdom SAF/XCPA&lt;/b&gt;, delivered his presentation, &amp;#8220;Architecting for Interoperability using Fit For Federation Criteria.&amp;#8221; Wing Commander Harvey prefaced that much like complex, highly distributed businesses, the Department of Defense (DoD) is comprised of many interdependent components. These include the Air Force, Army, Navy, and Marines, each of which shares common integration and interoperation issues. While the DoD and the Air Force use Architecture Federation to help address integration, the Wing Commander explained the Air Force&amp;#8217;s development of an Architecture Federation approach called &amp;#8220;Fit For Federation&amp;#8221; to specifically support interoperation. &lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;Next, &lt;b&gt;Marc Othersen, Senior Analyst, Forrester Research&lt;/b&gt;, delivered his presentation &amp;#8220;Compliance Frameworks: The Foundation of IT-GRC.&amp;#8221; According to Othersen, business imperatives, increased regulatory pressure, and customer demands are forcing many CIOs to adopt a structured, enterprise wide approach to deal with IT governance, risk, and compliance (GRC). Because IT GRC initiatives have traditionally been scattered across organizations without much coordination, many companies are looking for solutions that can help them create a unified approach to managing information risk and IT compliance requirements while ensuring good governance at the same time. Marc outlined Forrester&amp;#8217;s view on IT GRC and gave recommendations for developing a robust IT GRC program.    &lt;br /&gt;To access additional information on Marc&amp;#8217;s presentation, including a free report from Forrester, entitled &amp;#8220;Defining IT GRC&amp;#8221;, please visit: &lt;a href="http://www.forrester.com/opengroup2008"&gt;www.forrester.com/opengroup2008&lt;/a&gt;.    &lt;br /&gt;&lt;b&gt;     &lt;br /&gt;Ron Schuldt, Senior Staff Systems Architect, Lockheed Martin Enterprise Business Services&lt;/b&gt;, next presented on &amp;#8220;An Open Group Standard for Building Your Controlled Vocabulary.&amp;#8221; Mr. Schuldt began his address by explaining that TOGAF&amp;#8482; does a great job of identifying the processes necessary for defining an enterprise architecture, but it does not &lt;i&gt;assure&lt;/i&gt; &amp;#8220;Boundaryless Information Flow&amp;#8221; across organizations. The Open Group standard that provides the foundation framework for a controlled vocabulary, known as the Universal Data Element Framework (UDEF) is part of the solution, argued Schuldt. His presentation provided a detailed demonstration on UDEF and highlighted the role of this critical standard within the enterprise. For more information on the UDEF standard, visit: &lt;a href="http://www.opengroup.org/udefinfo/"&gt;http://www.opengroup.org/udefinfo/&lt;/a&gt;.     &lt;br /&gt;An in-depth UDEF Training is open to all conference attendees on Wednesday, July 23&lt;sup&gt;rd&lt;/sup&gt; at 9:00am.    &lt;br /&gt;The day&amp;#8217;s last plenary presentation, &amp;#8220;Standardize Architecture Delivery in a Federated Architecture using TOGAF,&amp;#8221;&lt;b&gt; was given by Peter Van Hoof, Principal Enterprise Architect, Sasol, South Africa.&lt;/b&gt; Sasol, South Africa&amp;#8217;s largest industrial company, has a strongly entrenched federated business model and utilizes a deeply embedded business project methodology across its many diverse business units, called the Business Development and Implementation Model (BD&amp;amp;IM). Mr. Van Hoof&amp;#8217;s presentation covered how Sasol aligned TOGAF with the BD&amp;amp;IM &amp;#8211; a great example of how to standardize architecture delivery in a federated architecture environment using TOGAF.    &lt;br /&gt;Kicking off the afternoon&amp;#8217;s Government Enterprise Architecture Track was &lt;b&gt;Robert Weisman, Partner &amp;amp; Executive Consultant, Global Enterprise Architecture Practice Leader, CGI,&lt;/b&gt; with &amp;#8220;&lt;b&gt;TOGAF Case Studies in Government.&amp;#8221; &lt;/b&gt;Mr. Weisman highlighted several applications of TOGAF in selected US State and Canadian Federal Government engagements. The presentation provided recommendations for future use of TOGAF within a government environment and also discussed how TOGAF works in conjunction with other EA frameworks, including Zachman, EA Tool, Australian Government Outcome Based Planning and Australian Government Architecture.&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;In the TOGAF Track, &lt;b&gt;Matt Vandenbush, Enterprise Architect, Brady Corporation,&lt;/b&gt; presented a case study &amp;#8220;&lt;b&gt;Preparing the Enterprise for a Successful Architecture Program Based on TOFAF.&amp;#8221; &lt;/b&gt;Mr. Vandenbush began his presentation with a poignant statement, &amp;#8220;Almost half of EA groups are dissolved within two years and many more do not meet stakeholder expectations.&amp;#8221; This is more often the outcome of poor internal advocacy- architects within their organizations need to prove the value of EA as a tool for making better decisions; and TOGAF has served as Brady Corporation&amp;#8217;s guide to achieve this level of success. Mr. Vandenbush made recommendations on the three most important activities to make EA matter within any organization: getting your governance processes under control; prepare to use the TOGAF architecture development method (ADM); and focus on &amp;#8220;delivery&amp;#8221;. &lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;Later in the Government Enterprise Architecture Track, &lt;b&gt;Eduardo Castro, Architect, Grupo Asesor en Informatica, Costa Rica&lt;/b&gt;, presented on &amp;#8220;Digital Government Strategy in Costa Rica.&amp;#8221; He covered the strategy followed by Costa Rica to implement a massive EA initiative in order to bring better services to the public institutions, providers and citizens.    &lt;br /&gt;In the SOA Track,&lt;b&gt; Pinaki Ghosh, Lead Architect Specialist, The Dow Chemical Company&lt;/b&gt;, delivered a lively presentation on &amp;#8220;Developing Enterprise Business Object Libraries to Support SOA.&amp;#8221; Mr. Ghosh began his session arguing that the main competitive advantage in information architecture comes down to a well constructed information footprint model within an EA framework, such as TOGAF, Zachman or DoDAF. During the transition from legacy architecture to SOA, however, one of the critical things most companies neglect is the preparation of an Enterprise Object Library. Such a library contains both business and IT objects categorized by international standards, unique artifact numbers and database identities. Pinaki&amp;#8217;s presentation delved into The Dow Chemical Company&amp;#8217;s use of a business object library to better align IT services with the business.&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;&lt;b&gt;Chang Peng, Enterprise Architect, MoneyGram International, &lt;/b&gt;closed out Day One&amp;#8217;s EA Best Practice Management Track with his presentation &amp;#8220;Enterprise Architecture in Support of Business Strategy.&amp;#8221; The goal of Mr. Peng&amp;#8217;s presentation was to extend enterprise architecture beyond the IT walls to support corporate business strategy. Chang&amp;#8217;s presentation demonstrated how MoneyGram International re-aligned their traditional EA model to encompass deep rooted business logic and link with several tangible business strategies. As a result &amp;#8220;enterprise architecture&amp;#8221; is now a part of the common vocabulary among MoneyGram&amp;#8217;s senior executive management team. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:a1d3f2ec-035d-422d-a917-ba0a70d7adc9" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/Enterprise%20Architecture" rel="tag"&gt;Enterprise Architecture&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Open%20Group" rel="tag"&gt;Open Group&lt;/a&gt;,&lt;a href="http://technorati.com/tags/TOGAF" rel="tag"&gt;TOGAF&lt;/a&gt;,&lt;a href="http://technorati.com/tags/SOA" rel="tag"&gt;SOA&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Security" rel="tag"&gt;Security&lt;/a&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768259" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mikewalker/archive/tags/Enterprise+Architecture/default.aspx">Enterprise Architecture</category><category domain="http://blogs.msdn.com/mikewalker/archive/tags/Events/default.aspx">Events</category><category domain="http://blogs.msdn.com/mikewalker/archive/tags/S_2B00_S/default.aspx">S+S</category><category domain="http://blogs.msdn.com/mikewalker/archive/tags/Open+Group/default.aspx">Open Group</category></item><item><title>Kevin Johnson to leave Microsoft</title><link>http://blogs.msdn.com/mthree/archive/2008/07/23/kevin-johnson-to-leave-ms.aspx</link><pubDate>Thu, 24 Jul 2008 01:04:28 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768236</guid><dc:creator>mthree</dc:creator><slash:comments>1</slash:comments><description>"I read the news today... oh, boy." You can read more in the Journal article by Robert Guth... "The head of Microsoft Corp.'s online business who led the company's bid to buy Yahoo Inc. is leaving the software giant to run Juniper Networks, Inc., according to people familiar with the situation. The departure of Kevin Johnson, president of Microsoft's Platforms and Services Division, will be combined with a re-organization of Mr. Johnson's business unit, which houses both the online services business...(&lt;a href="http://blogs.msdn.com/mthree/archive/2008/07/23/kevin-johnson-to-leave-ms.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768236" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mthree/archive/tags/People/default.aspx">People</category><category domain="http://blogs.msdn.com/mthree/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://blogs.msdn.com/mthree/archive/tags/news/default.aspx">news</category><category domain="http://blogs.msdn.com/mthree/archive/tags/Announcements/default.aspx">Announcements</category></item><item><title>Channel9 Interview: Visual Basic Language Design Meeting</title><link>http://blogs.msdn.com/bethmassi/archive/2008/07/23/channel9-interview-visual-basic-language-design-meeting.aspx</link><pubDate>Thu, 24 Jul 2008 01:02:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768248</guid><dc:creator>Beth Massi</dc:creator><slash:comments>1</slash:comments><description>&lt;P&gt;&lt;SPAN id=ctl00_MainPlaceHolder_Starter_BodyLabel&gt;&lt;A class="" href="http://channel9.msdn.com/posts/funkyonex/Visual-Basic-Language-Design-Meeting/" target=_blank mce_href="http://channel9.msdn.com/posts/funkyonex/Visual-Basic-Language-Design-Meeting/"&gt;I sat down with the VB Language design team&lt;/A&gt; and asked them about their design process, favorite features, their thoughts on other languages, as well as what the Visual Basic language strategy really is. It was a fun and enlightening interview with a group of really smart people lead by&amp;nbsp;&lt;A href="http://channel9.msdn.com/Admin/Edit/417025/(http:/www.panopticoncentral.net"&gt;Paul Vick&lt;/A&gt;. You can find most of the team members writing on the &lt;A href="http://blogs.msdn.com/vbteam/"&gt;Visual Basic Team Blog&lt;/A&gt;. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Stay tuned for more interviews &lt;A class="" href="http://channel9.msdn.com/posts/funkyonex/" target=_blank mce_href="http://channel9.msdn.com/posts/funkyonex/"&gt;like these&lt;/A&gt;...&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;Enjoy!&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8768248" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/bethmassi/archive/tags/Visual+Basic/default.aspx">Visual Basic</category><category domain="http://blogs.msdn.com/bethmassi/archive/tags/Community/default.aspx">Community</category><category domain="http://blogs.msdn.com/bethmassi/archive/tags/Channel9/default.aspx">Channel9</category></item><item><title>Get in on the action: SharePoint certifications</title><link>http://blogs.msdn.com/trika/archive/2008/07/24/get-in-on-the-action-sharepoint-certifications.aspx</link><pubDate>Thu, 24 Jul 2008 00:44:48 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8768201</guid><dc:creator>trikah@microsoft.com</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;I'm going to type up some of the things John and J talked about in this morning's SharePoint certification Live Meeting. My report will be from my non-IT perspective, so you might find this over-simplified, too elementary, or way beneath you. If that is the case, consider that I might be feigning a lack of technological expertise just to make you feel real, real smart.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;You can &lt;/strong&gt;&lt;a href="https://www.livemeeting.com/cc/lmevents/view?id=msft072308AMlm&amp;amp;pw=ATT11809"&gt;&lt;strong&gt;watch the recording here&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;.&lt;/strong&gt; I'll post the written Q&amp;amp;A when I get that tomorrow.&lt;/p&gt;  &lt;p&gt;----------------------------------------------------------&lt;/p&gt;  &lt;p&gt;HERE IS WHAT JOHN AND J TALKED ABOUT&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;There are &lt;strong&gt;two kinds of SharePoint&lt;/strong&gt;. You should learn the difference if you don't know it already--check out the &lt;a href="http://office.microsoft.com/en-us/sharepointserver/FX100492001033.aspx"&gt;office site&lt;/a&gt; for info, or here's a &lt;a href="http://dotnetaddict.dotnetdevelopersjournal.com/moss_vs_wss.htm"&gt;developer's perspective on the difference&lt;/a&gt; that I found helpful.       &lt;ul&gt;       &lt;li&gt;Office SharePoint &lt;strong&gt;Server&lt;/strong&gt; 2007: Stand alone server product with excellent features for Enterprise Content Management, workflow, etc--lots of opportunity to develop specific tools, interface with web applications or customize &lt;/li&gt;        &lt;li&gt;SharePoint &lt;strong&gt;Services&lt;/strong&gt; 3.0: is a part of Windows Server, a good out of the box solution for collaboration, etc. Not as feature-rich, not as much opp to customize &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Companies are spending a lot of money on collaboration technologies like SharePoint--it's about a &lt;strong&gt;7 billion dollar industry&lt;/strong&gt;--which means these companies need people who can help them get their money's worth from the investment. &lt;/li&gt;    &lt;li&gt;We have &lt;strong&gt;two developer certifications&lt;/strong&gt; to help you show you're ready and able to help them--one for Server and one for Services, and &lt;strong&gt;two for IT pros&lt;/strong&gt;--one for Server and one for Services. Each takes one exam, all of which are available now. Download a &lt;a href="http://cid-17971e0c952a3d0a.skydrive.live.com/self.aspx/MSFT%7C_Certification/Sharepoint%7C_R4.pdf"&gt;PDF Datasheet&lt;/a&gt; with all of this in one place. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/trika/WindowsLiveWriter/SharePointCertifications_AF1E/image_4.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="403" alt="image" src="http://blogs.msdn.com/blogfiles/trika/WindowsLiveWriter/SharePointCertifications_AF1E/image_thumb_1.png" width="706" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Where to start?&lt;/strong&gt; Pick the SP product (Server or Services) you've got your hands on and the role (Configuring or developing) you're doing or will be doing and start there. If you aren't locked in yet - &lt;strong&gt;start with Services&lt;/strong&gt; &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Brand new developers...&lt;/strong&gt; Don't START with SharePoint certification. You'll need some background--in ASP.NET development, for example--to be successful wiht SharePoint. If you'd like some help on getting started with developer certifications, check out my friend &lt;a href="http://blogs.msdn.com/gerryo/archive/2008/02/19/microsoft-certifications-where-do-i-start-part-1of-2.aspx "&gt;Gerry's blog post on the subject&lt;/a&gt;. &lt;/li&gt;    &lt;li&gt;No &lt;strong&gt;professional-series cert&lt;/strong&gt; underway at the moment (MCPD or MCITP) but we would like to have one, especially with the growth in this area. Need to make sure we get the role right and it's not that clear cut. The planning teams are trying to sort through that now (any thoughts? post a comment...) &lt;/li&gt;    &lt;li&gt;There is an &lt;strong&gt;end-user (I.e. YT) certification&lt;/strong&gt; in development for SharePoint, planned for early 2009. Someone asked about cert for the non-developer designer role... nothing in the works today. &lt;/li&gt;    &lt;li&gt;There are &lt;strong&gt;no training kits&lt;/strong&gt; for these exams, so don't spin your wheels looking for them. Lots of other good materials (see table below--prep guides aren't up to date FYI) to help you prep for exams, and other great resources from Technet, MSDN, and the product group. We recognize there's a need for advanced training materials - we're working on that. &lt;/li&gt; &lt;/ul&gt;  &lt;table style="width: 696pt; border-collapse: collapse" cellspacing="0" cellpadding="0" width="928" border="0"&gt;&lt;colgroup&gt;&lt;col style="width: 53pt; mso-width-source: userset" width="71" /&gt;&lt;col style="width: 73pt; mso-width-source: userset" width="97" /&gt;&lt;col style="width: 210pt; mso-width-source: userset" width="280" /&gt;&lt;col style="width: 126pt; mso-width-source: userset" width="168" /&gt;&lt;col style="width: 234pt; mso-width-source: userset" width="312" /&gt;&lt;/colgroup&gt;&lt;tbody&gt;     &lt;tr style="height: 18pt; mso-height-source: userset" height="24"&gt;       &lt;td class="oa1" style="width: 53pt; height: 18pt" width="71" height="24"&gt;         &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-weight: bold; font-size: 10pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt"&gt;Exam&lt;/span&gt;&lt;span style="font-weight: bold; font-size: 10pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt"&gt; &lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td class="oa1" style="width: 73pt" width="97"&gt;         &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-weight: bold; font-size: 10pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt"&gt;Objectives&lt;/span&gt;&lt;span style="font-weight: bold; font-size: 10pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt"&gt; &lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td class="oa1" style="width: 210pt" width="280"&gt;         &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-weight: bold; font-size: 10pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt"&gt;Instructor-led&lt;/span&gt;&lt;span style="font-weight: bold; font-size: 10pt; vertical-align: baseline; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt; mso-text-raise: 0%"&gt; training&lt;/span&gt;&lt;span style="font-weight: bold; font-size: 10pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt"&gt; &lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td class="oa1" style="width: 126pt" width="168"&gt;         &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-weight: bold; font-size: 10pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt"&gt;E-learning&lt;/span&gt;&lt;span style="font-weight: bold; font-size: 10pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt"&gt; &lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td class="oa1" style="width: 234pt" width="312"&gt;         &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-weight: bold; font-size: 10pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt"&gt;MS&lt;/span&gt;&lt;span style="font-weight: bold; font-size: 10pt; vertical-align: baseline; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt; mso-text-raise: 0%"&gt; Press&lt;/span&gt;&lt;span style="font-weight: bold; font-size: 10pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt"&gt; &lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr style="height: 81.6pt; mso-height-source: userset" height="109"&gt;       &lt;td class="oa2" style="width: 53pt; height: 81.6pt" width="71" height="109"&gt;         &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;70-541&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt; &lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td class="oa2" style="width: 73pt" width="97"&gt;         &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-weight: normal; font-size: 9pt; vertical-align: baseline; text-transform: none; color: black; font-style: normal; font-family: segoe; font-variant: normal; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt; mso-text-raise: 0%"&gt;&lt;a href="http://www.microsoft.com/learning/exams/70-541.mspx"&gt;http://www.microsoft.com/learning/exams/70-541.mspx&lt;/a&gt;&lt;/span&gt;&lt;span style="font-weight: normal; font-size: 9pt; vertical-align: baseline; text-transform: none; color: black; font-style: normal; font-family: segoe; font-variant: normal; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt; mso-text-raise: 0%"&gt; &lt;/span&gt;&lt;/p&gt;          &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-weight: normal; font-size: 9pt; vertical-align: baseline; text-transform: none; color: black; font-style: normal; font-family: segoe; font-variant: normal; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt; mso-text-raise: 0%"&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-weight: bold; font-size: 9pt; vertical-align: baseline; text-transform: none; color: black; font-style: normal; font-family: segoe; font-variant: normal; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt; mso-text-raise: 0%"&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p style="margin: 0pt 0in; word-break: normal; direction: ltr; text-indent: 0in; line-height: normal; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging; mso-vertical-align-alt: auto"&gt;&lt;span style="font-weight: bold; font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;a href="http://learning.microsoft.com/manager/LearningPlanV2.aspx?resourceId=%7b547ca506-6888-11dc-8314-0800200c9a66%7d&amp;amp;clang=en-US"&gt;Learning Plan &lt;/a&gt;&lt;/span&gt;&lt;span style="font-weight: bold; font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td class="oa2" style="width: 210pt" width="280"&gt;         &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.13in; word-break: normal; direction: ltr; text-indent: -0.13in; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt"&gt;&lt;span style="font-family: arial; mso-special-format: bullet"&gt;&amp;#8226;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;Please check &lt;/span&gt;&lt;u style="text-underline: single"&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;a href="http://www.microsoft.com/learning"&gt;www.microsoft.com/learning&lt;/a&gt;&lt;/span&gt;&lt;/u&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt; for resources.&lt;/span&gt;&lt;/div&gt;          &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.13in; word-break: normal; direction: ltr; text-indent: -0.13in; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt"&gt;&lt;span style="font-family: arial; mso-special-format: bullet"&gt;&amp;#8226;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;50026A: SharePoint 2007 Hands-On Labs&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt; &lt;/span&gt;&lt;/div&gt;       &lt;/td&gt;        &lt;td class="oa2" style="width: 126pt" width="168"&gt;         &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;a href="http://www.microsoft.com/learning/elearning/course/5385.mspx"&gt;Collection 5385&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;: Developing Solutions with Windows SharePoint Services 3.0 and Visual Studio 2005&lt;/span&gt;&lt;/p&gt;          &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;a href="http://www.microsoft.com/learning/elearning/course/5392.mspx"&gt;Collection 5392&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;: Developing and Extending Windows SharePoint Services 3.0 with Visual Studio 2005&lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td class="oa2" style="width: 234pt" width="312"&gt;         &lt;div style="margin: 0pt 0in 0pt 0.13in; word-break: normal; direction: ltr; text-indent: -0.13in; line-height: normal; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging; mso-vertical-align-alt: auto"&gt;&lt;span style="font-size: 9pt"&gt;&lt;span style="font-family: arial; mso-special-format: bullet"&gt;&amp;#8226;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-style: italic; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;a href="http://www.microsoft.com/MSPress/books/9692.aspx"&gt;Inside Microsoft Windows SharePoint Services Version 3&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; vertical-align: baseline; color: black; font-style: italic; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt; mso-text-raise: 0%"&gt; &lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;(ISBN: 978-0-7356-2320-0)&lt;/span&gt;&lt;/div&gt;          &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.13in; word-break: normal; direction: ltr; text-indent: -0.13in; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt"&gt;&lt;span style="font-family: arial; mso-special-format: bullet"&gt;&amp;#8226;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-style: italic; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;6 Microsoft Office Business Applications for Office SharePoint Server 2007 &lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;(ISBN: 9780735622760)&lt;/span&gt;&lt;/div&gt;          &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.13in; word-break: normal; direction: ltr; text-indent: -0.13in; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt"&gt;&lt;span style="font-family: arial; mso-special-format: bullet"&gt;&amp;#8226;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&amp;#160;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-style: italic; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;Programming Microsoft Office Business Applications &lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;(ISBN: 9780735625365)&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt; &lt;/span&gt;&lt;/div&gt;          &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr style="height: 43.52pt; mso-height-source: userset" height="58"&gt;       &lt;td class="oa3" style="width: 53pt; height: 43.52pt" width="71" height="58"&gt;         &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;70-542&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt; &lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td class="oa3" style="width: 73pt" width="97"&gt;         &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-weight: normal; font-size: 9pt; vertical-align: baseline; text-transform: none; color: black; font-style: normal; font-family: segoe; font-variant: normal; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt; mso-text-raise: 0%"&gt;&lt;a href="http://www.microsoft.com/learning/exams/70-542.mspx"&gt;http://www.microsoft.com/learning/exams/70-542.mspx&lt;/a&gt;&lt;/span&gt;&lt;span style="font-weight: normal; font-size: 9pt; vertical-align: baseline; text-transform: none; color: black; font-style: normal; font-family: segoe; font-variant: normal; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt; mso-text-raise: 0%"&gt; &lt;/span&gt;&lt;/p&gt;          &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-weight: normal; font-size: 9pt; vertical-align: baseline; text-transform: none; color: black; font-style: normal; font-family: segoe; font-variant: normal; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt; mso-text-raise: 0%"&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-weight: normal; font-size: 9pt; vertical-align: baseline; text-transform: none; color: black; font-style: normal; font-family: segoe; font-variant: normal; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt; mso-text-raise: 0%"&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p style="margin: 0pt 0in; word-break: normal; direction: ltr; text-indent: 0in; line-height: normal; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging; mso-vertical-align-alt: auto"&gt;&lt;span style="font-weight: bold; font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;a href="http://learning.microsoft.com/manager/LearningPlanV2.aspx?resourceId=%7b346a7820-6889-11dc-8314-0800200c9a66%7d&amp;amp;clang=en-US"&gt;Learning Plan &lt;/a&gt;&lt;/span&gt;&lt;span style="font-weight: bold; font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td class="oa3" style="width: 210pt" width="280"&gt;         &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.13in; word-break: normal; direction: ltr; text-indent: -0.13in; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt"&gt;&lt;span style="font-family: arial; mso-special-format: bullet"&gt;&amp;#8226;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;50046: SharePoint Developer (Mindsharp) - (2 Days)&lt;/span&gt;&lt;/div&gt;          &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.13in; word-break: normal; direction: ltr; text-indent: -0.13in; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt"&gt;&lt;span style="font-family: arial; mso-special-format: bullet"&gt;&amp;#8226;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;50026A: SharePoint 2007 Hands-On Labs &lt;/span&gt;&lt;/div&gt;          &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.13in; word-break: normal; direction: ltr; text-indent: -0.13in; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt"&gt;&lt;span style="font-family: arial; mso-special-format: bullet"&gt;&amp;#8226;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;Please check &lt;/span&gt;&lt;u style="text-underline: single"&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;a href="http://www.microsoft.com/learning"&gt;www.microsoft.com/learning&lt;/a&gt;&lt;/span&gt;&lt;/u&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt; for resources.&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt; &lt;/span&gt;&lt;/div&gt;       &lt;/td&gt;        &lt;td class="oa3" style="width: 126pt" width="168"&gt;         &lt;p style="margin: 0pt 0in; word-break: normal; direction: ltr; text-indent: 0in; line-height: normal; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging; mso-vertical-align-alt: auto"&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;a href="http://www.microsoft.com/learning/elearning/course/6071.mspx"&gt;Collection 6071&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;: Visual Studio 2008 Connected Systems: Windows Workflow Foundation (12 hours)&lt;/span&gt;&lt;/p&gt;          &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td class="oa3" style="width: 234pt" width="312"&gt;         &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.13in; word-break: normal; direction: ltr; text-indent: -0.13in; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt"&gt;&lt;span style="font-family: arial; mso-special-format: bullet"&gt;&amp;#8226;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-style: italic; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;Inside Microsoft Office SharePoint Server 2007 &lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;(ISBN 978-0-7356-2368-2)&lt;/span&gt;&lt;/div&gt;          &lt;div style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.13in; word-break: normal; direction: ltr; text-indent: -0.13in; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt"&gt;&lt;span style="font-family: arial; mso-special-format: bullet"&gt;&amp;#8226;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-style: italic; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;Inside the Index and Search Engines: Microsoft&amp;#174; Office SharePoint&amp;#174; Server 2007&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt; (ISBN 9780735625358)&lt;/span&gt;&lt;/div&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr style="height: 43.52pt; mso-height-source: userset" height="58"&gt;       &lt;td class="oa4" style="width: 53pt; height: 43.52pt" width="71" height="58"&gt;         &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;70-630&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt; &lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td class="oa4" style="width: 73pt" width="97"&gt;         &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-weight: normal; font-size: 9pt; vertical-align: baseline; text-transform: none; color: black; font-style: normal; font-family: segoe; font-variant: normal; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt; mso-text-raise: 0%"&gt;&lt;a href="http://www.microsoft.com/learning/exams/70-630.mspx"&gt;http://www.microsoft.com/learning/exams/70-630.mspx&lt;/a&gt;&lt;/span&gt;&lt;span style="font-weight: normal; font-size: 9pt; vertical-align: baseline; text-transform: none; color: black; font-style: normal; font-family: segoe; font-variant: normal; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt; mso-text-raise: 0%"&gt; &lt;/span&gt;&lt;/p&gt;          &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-weight: normal; font-size: 9pt; vertical-align: baseline; text-transform: none; color: black; font-style: normal; font-family: segoe; font-variant: normal; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt; mso-text-raise: 0%"&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-weight: bold; font-size: 9pt; vertical-align: baseline; text-transform: none; color: black; font-style: normal; font-family: segoe; font-variant: normal; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 1; mso-font-kerning: 12.0pt; mso-text-raise: 0%"&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p style="margin: 0pt 0in; word-break: normal; direction: ltr; text-indent: 0in; line-height: normal; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging; mso-vertical-align-alt: auto"&gt;&lt;span style="font-weight: bold; font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;a href="http://learning.microsoft.com/manager/LearningPlanV2.aspx?resourceId=%7b3151fc16-67ca-11dc-8314-0800200c9a66%7d&amp;amp;clang=en-US"&gt;Learning Plan &lt;/a&gt;&lt;/span&gt;&lt;span style="font-weight: bold; font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p style="margin-top: 0pt; margin-bottom: 0pt; margin-left: 0in; word-break: normal; direction: ltr; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging"&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td class="oa4" style="width: 210pt" width="280"&gt;         &lt;div style="margin: 0pt 0in 0pt 0.13in; word-break: normal; direction: ltr; text-indent: -0.13in; line-height: normal; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging; mso-vertical-align-alt: auto"&gt;&lt;span style="font-size: 9pt"&gt;&lt;span style="font-family: arial; mso-special-format: bullet"&gt;&amp;#8226;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;&lt;a href="http://www.microsoft.com/learning/syllabi/en-us/5061afinal.mspx"&gt;Course 5061&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;: Implementing Microsoft Office SharePoint Server 2007 (three days)&lt;/span&gt;&lt;/div&gt;          &lt;div style="margin: 0pt 0in 0pt 0.13in; word-break: normal; direction: ltr; text-indent: -0.13in; line-height: normal; unicode-bidi: embed; text-align: left; language: en-us; mso-line-break-override: none; punctuation-wrap: hanging; mso-vertical-align-alt: auto"&gt;&lt;span style="font-size: 9pt"&gt;&lt;span style="font-family: arial; mso-special-format: bullet"&gt;&amp;#8226;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: black; font-family: segoe; language: en-us; mso-ascii-font-family: segoe; mso-color-index: 13; mso-font-kerning: 12.0pt"&gt;Course 50048: Architecting and Planning the Search Capability in Microsoft&amp;#174; Office SharePoint&amp;#174; Server 2007 (2 Days)&lt;/span&gt;&lt;/div&gt;          &lt;div style="margin: 0pt 0in 0pt 0.13in; word-break: normal; direction: ltr; text-indent: -0.13in; line-height: normal; unicode-bidi: embed; text-align: left