<?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>Sehmi-Conscious Thoughts : Distributed Computing</title><link>http://blogs.msdn.com/asehmi/archive/tags/Distributed+Computing/default.aspx</link><description>Tags: Distributed Computing</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Architecture Journal #17 - Article on Distributed Embedded Systems</title><link>http://blogs.msdn.com/asehmi/archive/2008/10/07/architecture-journal-17-article-on-distributed-embedded-systems.aspx</link><pubDate>Tue, 07 Oct 2008 12:21:01 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8983773</guid><dc:creator>asehmi</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/asehmi/comments/8983773.aspx</comments><wfw:commentRss>http://blogs.msdn.com/asehmi/commentrss.aspx?PostID=8983773</wfw:commentRss><wfw:comment>http://blogs.msdn.com/asehmi/rsscomments.aspx?PostID=8983773</wfw:comment><description>&lt;p&gt;&lt;a title="Download Architecture Journal 17" href="http://www.msarchitecturejournal.com/pdf/Journal17.pdf" target="_blank"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; margin: 0px 15px 5px 0px; border-right-width: 0px" height="169" alt="image" src="http://blogs.msdn.com/blogfiles/asehmi/WindowsLiveWriter/ArchitectureJournal17ArticleonDistribute_A52F/image_5.png" width="244" align="left" border="0"&gt;&lt;/a&gt; I've been working on Distributed Embedded Systems and related communications technology recently so for the "Distributed Computing", Issue #17, of the Microsoft Architecture Journal I wrote a paper on the subject. My Aim was to open up - 'expose' - this very exciting field to the "traditional" distributed systems community. As the industry moves from standalone, smart devices to connected devices and then towards systems of service-oriented connected devices, we will begin to see much more overlap with "traditional" distributed systems design and architecture practices. Not everything we (traditional distributed systems developers and architects) know translates easily to the world of distributed embedded systems, so it's vitally important to understand the different challenges and issues faced, technical imperatives, development strategies, and technology road maps. Hopefully, in my paper, I've done some justice towards answering those questions.&lt;/p&gt; &lt;p&gt;Apart from my own paper there's a fab collections of others. I haven't started reading them as yet, but personally know and respect many of the authors. I know attendees of PDC2008 will be receiving a copy of the Journal, so we've been calling this the "PDC Issue"! The new editorial team are beginning to make their positive marks and you'll notice a new clean, bold look to the Journal as it starts to establish a shared identity with Microsoft other "architecture evangelism" assets. I approve wholeheartedly, but it still hasn't got the minimalism I think we prefer in Europe Western/Northern. But at the end of day it's about content value and that you certainly have in abundance.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.msarchitecturejournal.com/pdf/Journal17.pdf"&gt;http://www.msarchitecturejournal.com/pdf/Journal17.pdf&lt;/a&gt; &lt;!-- &lt;p&gt;&lt;iframe style="border-right: #dde5e9 1px solid; padding-right: 0px; border-top: #dde5e9 1px solid; padding-left: 0px; padding-bottom: 0px; margin: 3px; border-left: #dde5e9 1px solid; width: 240px; padding-top: 0px; border-bottom: #dde5e9 1px solid; height: 26px; background-color: #ffffff" marginwidth="0" marginheight="0" src="http://cid-a5f7ad2e511a1926.skydrive.live.com/embedrow.aspx/Public/Journal|_17|_Sehmi.pdf" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt; --&gt; &lt;p&gt;On another note, my colleague, &lt;a href="http://www.linkedin.com/in/yuriyz" target="_blank"&gt;Yuriy Zaytsev&lt;/a&gt;, alerted me to a &lt;a href="http://www.meti.go.jp/english/press/data/nBackIssue20080522_01.html"&gt;Japan MITI survey&lt;/a&gt; which concluded:  &lt;ul&gt; &lt;li&gt;(4) &lt;i&gt;Over 40% of the quality problems with embedded products after shipment are caused by software errors.&lt;/i&gt; &lt;br&gt;&lt;i&gt;The leading cause of the quality problems with embedded products after shipment was software errors (46.3%), followed by hardware design faults (21.8%) and production faults (12.7%). A trend over the past four years is that the percentage of faults during product conceptualization and specification continues to fall year after year. Software errors have remained the major cause of quality problems for the past four years.&lt;br&gt;&lt;/i&gt; &lt;li&gt;&lt;em&gt;(6) Advanced* embedded software engineers are needed.&lt;br&gt;Although overall shortages are easing, demand is still high for embedded software engineers with advanced skills; the shortage rate of entry-level engineers was 26.3%, while that of advanced (experienced) engineers was 48.4%. Over the three years from 2006, the shortage rate of entry-level engineers fell from 44.2% to 26.3%, showing the largest decline among all the categories. The shortage rate of advanced engineers stood out last year at 64.9%, but the rate declined this year, making the disparity between different skill levels restored to an extent equivalent to that of two years ago.&lt;br&gt;&lt;br&gt;&lt;/em&gt;&lt;em&gt;&lt;font size="2"&gt;*Advanced: Capable of implementing technologies, methodologies and businesses while exercising leadership or capable of implementing these while leading internal and external teams by means of standardization and the development of new technologies.&lt;br&gt;Intermediate: Capable of discovering and solving challenges in business operations while exercising leadership.&lt;br&gt;Entry-level: Capable of discovering and solving challenges in business operations under the leadership of higher-level engineers.&lt;br&gt;&lt;/font&gt;&lt;/em&gt; &lt;li&gt;&lt;em&gt;(7) Software engineering methods have been introduced for improving quality and developing human resources.&lt;br&gt;The respondents’ most common reason for having adopted solutions developed and provided by the Software Engineering Center was “quality improvement” (cited by more than 75%), followed by “human resource development” (more than 60%). This suggests that many respondents recognize SEC’s solutions as effective for solving major challenges in developing embedded software. About 70% of those who have adopted SEC’s solutions give high marks to them, rating them as being “beyond expectations” or “just as expected.” &lt;/em&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;The questions that arise for me, especially in the context of realizing Distributed Embedded Systems solutions (i.e. Complex Embedded Systems), are:  &lt;ul&gt; &lt;li&gt;Which, if any, of the software development processes, design and architecture methods we use in traditional software development, can be leveraged in Embedded Systems development to mitigate these quality problems and skills shortages?  &lt;li&gt;What is Microsoft doing to address these issues in terms of next generation tool chains for this industry?&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Over the next few months we'll certainly be exploring these questions in more detail and report back our learning.  &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Anyway, here’s wishing you a great read of Journal 17!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8983773" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/asehmi/archive/tags/Architecture/default.aspx">Architecture</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/JOURNAL/default.aspx">JOURNAL</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/Distributed+Computing/default.aspx">Distributed Computing</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/Embedded+Systems/default.aspx">Embedded Systems</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/MSArchitectPortal/default.aspx">MSArchitectPortal</category></item><item><title>JAOO 2008 Presentation</title><link>http://blogs.msdn.com/asehmi/archive/2008/10/03/jaoo-2008-presentation.aspx</link><pubDate>Fri, 03 Oct 2008 17:46:19 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8975556</guid><dc:creator>asehmi</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/asehmi/comments/8975556.aspx</comments><wfw:commentRss>http://blogs.msdn.com/asehmi/commentrss.aspx?PostID=8975556</wfw:commentRss><wfw:comment>http://blogs.msdn.com/asehmi/rsscomments.aspx?PostID=8975556</wfw:comment><description>&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/asehmi/WindowsLiveWriter/JAOO2008Presentation_DDA4/image_4.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; margin: 0px 5px 5px 0px; border-left: 0px; border-bottom: 0px" height="179" alt="image" src="http://blogs.msdn.com/blogfiles/asehmi/WindowsLiveWriter/JAOO2008Presentation_DDA4/image_thumb_1.png" width="244" align="left" border="0"&gt;&lt;/a&gt; In a &lt;a title="Microsoft Speakers at JAOO 2008" href="http://blogs.msdn.com/asehmi/archive/2008/09/18/microsoft-folks-at-jaoo-conference-sep-28-oct-3-2008-aarhus-denmark.aspx" target="_blank"&gt;previous post&lt;/a&gt; I listed all the Microsoft folks presenting at JAOO 2008. Well that event has successfully come and gone this week and I'm pleased to share my presentation with the community.&lt;/p&gt; &lt;p&gt;&lt;iframe style="border-right: #dde5e9 1px solid; padding-right: 0px; border-top: #dde5e9 1px solid; padding-left: 0px; padding-bottom: 0px; margin: 3px; border-left: #dde5e9 1px solid; width: 240px; padding-top: 0px; border-bottom: #dde5e9 1px solid; height: 66px; background-color: #ffffff" marginwidth="0" marginheight="0" src="http://cid-a5f7ad2e511a1926.skydrive.live.com/embedrowdetail.aspx/Public/JA002008|_Sehmi.pptx" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;p&gt;My talk went pretty well and I achieved my objective to explain the relevance of Distributed Embedded Systems to traditional distributed systems developers and architects. I briefly discussed the &lt;a href="http://en.wikipedia.org/wiki/DPWS" target="_blank"&gt;Device Profile for Web Services&lt;/a&gt; and &lt;a title="CCR/DSS info on my Blog" href="http://blogs.msdn.com/asehmi/archive/tags/CCR_2F00_DSS/default.aspx" target="_blank"&gt;CCR/DSS&lt;/a&gt; as good candidates for DES communications infrastructure, choosing to describe these technologies mainly because they would be relevant to my audience in non-DES scenarios too.&lt;/p&gt; &lt;p&gt;The back end of my talk hints at Fabriq4Dss - an implementation of &lt;a title="The original and awesome FABRIQ! :-)" href="http://blogs.msdn.com/asehmi/archive/2007/06/20/fabriq-has-gone-public.aspx" target="_blank"&gt;Fabriq&lt;/a&gt; (remember that?) on CCR/DSS. I skipped the demos of Fabriq4Dss because I only had 45 minutes for the session, but rest-assured you'll be hearing more about this here soon.&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/asehmi/WindowsLiveWriter/JAOO2008Presentation_DDA4/image_2.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; margin: 0px 5px 5px 0px; border-right-width: 0px" height="164" alt="image" src="http://blogs.msdn.com/blogfiles/asehmi/WindowsLiveWriter/JAOO2008Presentation_DDA4/image_thumb.png" width="244" align="left" border="0"&gt;&lt;/a&gt;Other highlights of the conference were meeting, &lt;a title="Gregor Hohpe's Contact Page" href="http://www.enterpriseintegrationpatterns.com/gregor.html" target="_blank"&gt;Gregor Hohpe&lt;/a&gt; and &lt;a href="http://www.scruminc.com/" target="_blank"&gt;Jeff Sutherland&lt;/a&gt;. Gregor attended my session after which I demoed another recent CCR/DSS/VPL project of mine ("PIE") related to his famous book on &lt;a title="Enterprise Integration Patterns Catalog" href="http://www.enterpriseintegrationpatterns.com/eaipatterns.html" target="_blank"&gt;Enterprise Integration Patterns&lt;/a&gt;. We're plotting something together which I hope can be pulled off.&lt;/p&gt; &lt;p&gt;I sat next to Jeff Sutherland at the speaker's dinner. He is of course the co-creator of Scrum and as we chatted he intrigued me with a number of non-S/W development uses of the process. Having myself, just prior to JAOO, attended at a team offsite exploring elements of virtual teaming and organizational design with Dr &lt;a href="http://www.haas.berkeley.edu/faculty/bahrami.html" target="_blank"&gt;Homa Bahrami&lt;/a&gt;, I thought this conversation with Jeff was sweet serendipity - which in turn reminded me of the late &lt;a href="http://research.microsoft.com/users/needham/" target="_blank"&gt;Roger Needham&lt;/a&gt;'s words, "Serendipity is looking for a needle in a haystack and finding the farmer's daughter." How-so-very-true!&lt;/p&gt; &lt;p&gt;JAOO was a great conference and I'd like to extend my thanks to &lt;a href="http://jaoo.dk/speaker/Beat+Schwegler" target="_blank"&gt;Beat Schwegler&lt;/a&gt;, Microsoft Denmark and the JAOO organizing committee for having me.&lt;/p&gt; &lt;p&gt;P.S. We'll be talking a lot more about these topics at &lt;a href="https://emea.msteched.com/dev/public/sessions.aspx" target="_blank"&gt;Tech-Ed EMEA Developers 2008&lt;/a&gt;, 10-14 November (select Embedded Systems, Architecture tracks).&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8975556" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/asehmi/archive/tags/Distributed+Computing/default.aspx">Distributed Computing</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/Embedded+Systems/default.aspx">Embedded Systems</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/MSArchitectPortal/default.aspx">MSArchitectPortal</category></item><item><title>Gorgeous Fractals with VPL and Distributed DSS Services</title><link>http://blogs.msdn.com/asehmi/archive/2008/06/23/gorgeous-fractals-with-vpl-and-distributed-dss-services.aspx</link><pubDate>Mon, 23 Jun 2008 08:43:21 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8641352</guid><dc:creator>asehmi</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/asehmi/comments/8641352.aspx</comments><wfw:commentRss>http://blogs.msdn.com/asehmi/commentrss.aspx?PostID=8641352</wfw:commentRss><wfw:comment>http://blogs.msdn.com/asehmi/rsscomments.aspx?PostID=8641352</wfw:comment><description>&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/asehmi/WindowsLiveWriter/GorgeousFractalswithVPLandDistributedDSS_5E85/image_2.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; margin: 0px 10px 0px 0px; border-left: 0px; border-bottom: 0px" height="230" alt="image" src="http://blogs.msdn.com/blogfiles/asehmi/WindowsLiveWriter/GorgeousFractalswithVPLandDistributedDSS_5E85/image_thumb.png" width="244" align="left" border="0"&gt;&lt;/a&gt;I think Angel is fast becoming one of VPL's biggest fans. After discussing some ideas with him about simple Map-Reduce scenarios for his agent toolkit and a grid system that I'm building, he went ahead and did it. Check out his distributed Mandelbrot fractal generator. Gorgeous results. A bit over-engineered as a fractal calculator, but that wasn't the point really!&lt;/p&gt; &lt;p&gt;You can get Angel's blog, agent toolkit and sample applications &lt;a title="distributed-agents-and-fractals-using-dssvpl" href="http://ajlopez.wordpress.com/2008/06/22/distributed-agents-and-fractals-using-dssvpl/" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8641352" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/asehmi/archive/tags/Distributed+Computing/default.aspx">Distributed Computing</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/CCR_2F00_DSS/default.aspx">CCR/DSS</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/MSArchitectPortal/default.aspx">MSArchitectPortal</category></item><item><title>Using the Visual Programming Language (VPL) as a Deployment Tool</title><link>http://blogs.msdn.com/asehmi/archive/2008/06/16/using-the-visual-programming-language-vpl-as-a-deployment-tool.aspx</link><pubDate>Mon, 16 Jun 2008 11:43:48 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8603852</guid><dc:creator>asehmi</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/asehmi/comments/8603852.aspx</comments><wfw:commentRss>http://blogs.msdn.com/asehmi/commentrss.aspx?PostID=8603852</wfw:commentRss><wfw:comment>http://blogs.msdn.com/asehmi/rsscomments.aspx?PostID=8603852</wfw:comment><description>&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/asehmi/WindowsLiveWriter/UsingtheVisualProgrammingLanguageVPLasaD_8897/image_6.png" target="_blank"&gt;&lt;img style="border-right: 0px; border-top: 0px; margin: 0px 15px 100px 0px; border-left: 0px; border-bottom: 0px" height="441" alt="image" src="http://blogs.msdn.com/blogfiles/asehmi/WindowsLiveWriter/UsingtheVisualProgrammingLanguageVPLasaD_8897/image_thumb_2.png" width="434" align="left" border="0"&gt;&lt;/a&gt; When building applications using CCR, DSS and VPL one doesn't need to know a priori the precise order of data and message flows between services. Many of the VPL examples provided with the MRDS show services already 'wired' up which can give the impression that one needs to know this information and design one's set of services to be orchestrated as such up front. What if you don't know this information up front but still want to use the VPL? Well, there's the pub/sub pattern supported by DSS out of the box which is very handy and well-understood. Or one can define a 'host' service that acts as a message forwarding system based on its own service directory (perhaps using the one built into DSS). Or one can use an external configuration file that defines the orchestration itself (like a BPML specification, say). Additionally, one could use UPnP device (service) discovery. &lt;/p&gt; &lt;p&gt;But orchestration is not the only thing, what about deployment? Well, the VPL also supports service deployment and this works across multiple physical nodes too!&lt;/p&gt; &lt;p&gt;&lt;a href="http://ajlopez.wordpress.com/" target="_blank"&gt;Angel Lopez&lt;/a&gt; has extended his Web Crawler sample and without knowing the orchestration a priori uses VPL simply to create multiple instances of his several service 'agents'. The actual 'orchestration' is emergent as a result of collaboration between his agents and the 'agent host' - in fact he can have several agent hosts in the same Web Crawler application. The agent hosts forward messages to service agents based on their capabilities inferred from a logical 'URI' which gets physically bound when the agents themselves register with their (machine) local hosts. Should more than one agent service offer the same capability, such as web crawling or page downloading, the agent host will automatically load balance across them.&lt;/p&gt; &lt;p&gt;An interesting benefit of using the new VPL (in the April 2008 CTP of MRDS) is its ability to deploy services on multiple DSS nodes which themselves can be hosted on physically different machines. Angel does this with his Web Crawler application and together with the application-level load balancing facility his sample offers a neat and simple outline of potentially powerful solutions that you can build using this approach. I particularly liked the lack of a priori orchestration and the use of VPL as a multi-node deployment tool.&lt;/p&gt; &lt;p&gt;Check out Angel's application &lt;a title="Distributed Agents Using DSS/VPL" href="http://ajlopez.wordpress.com/2008/06/15/distributed-agents-using-dssvpl/" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8603852" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/asehmi/archive/tags/Distributed+Computing/default.aspx">Distributed Computing</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/CCR_2F00_DSS/default.aspx">CCR/DSS</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/MSArchitectPortal/default.aspx">MSArchitectPortal</category></item><item><title>CCR/DSS Use Cases in the Enterprise</title><link>http://blogs.msdn.com/asehmi/archive/2008/06/12/ccr-dss-use-cases-in-the-enterprise.aspx</link><pubDate>Fri, 13 Jun 2008 00:40:18 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8593690</guid><dc:creator>asehmi</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/asehmi/comments/8593690.aspx</comments><wfw:commentRss>http://blogs.msdn.com/asehmi/commentrss.aspx?PostID=8593690</wfw:commentRss><wfw:comment>http://blogs.msdn.com/asehmi/rsscomments.aspx?PostID=8593690</wfw:comment><description>&lt;a href="http://blogs.msdn.com/blogfiles/asehmi/WindowsLiveWriter/CCRDSSUseCasesintheEnterprise_13EB4/image_2.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; margin: 0px 0px 100px 10px; border-left: 0px; border-bottom: 0px" height="198" alt="image" src="http://blogs.msdn.com/blogfiles/asehmi/WindowsLiveWriter/CCRDSSUseCasesintheEnterprise_13EB4/image_thumb.png" width="324" align="right" border="0"&gt;&lt;/a&gt; I'm often asked what Enterprise customers are using CCR/DSS in serious, i.e. pretty significant, production deployments. I'm not at liberty to disclose the names of our customers without their permission - a few will be made public soon - but I can say there are quite a lot of application domains where this technology is being applied seriously. Here's a list of scenarios I mined from our internal list of CCR/DSS adoption customers in the Enterprise: &lt;ul&gt; &lt;li&gt;Very large scale web request load balancing &amp;amp; IO handling (online social networks) &lt;li&gt;Security systems (distributed sensor networks) &lt;li&gt;Package sorting system (real-time logistics monitoring and control) &lt;li&gt;Real time processing of seismic data in drilling control (industrial automation &amp;amp; control) &lt;li&gt;Supply Chain Modeling (simulation and control) &lt;li&gt;Law enforcement information intercept/inspection (large scale complex event processing) &lt;li&gt;Automated inventory inspection system in FMCG/retail scenarios (vision processing) &lt;li&gt;Financial trading systems (transaction flow routing and processing) &lt;li&gt;Business processes - there is an academic BPEL implementation on CCR &lt;li&gt;Scientific computing – MPI primitives concisely written as CCR patterns (exchange, shift, double shift)&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Hopefully that's useful and piques your interest to look at this &lt;a title="Microsoft Robotics (CCR/DSS)" href="http://www.microsoft.com/robotics" target="_blank"&gt;Microsoft Robotics (CCR/DSS)&lt;/a&gt; stuff deeper.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8593690" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/asehmi/archive/tags/Distributed+Computing/default.aspx">Distributed Computing</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/CCR_2F00_DSS/default.aspx">CCR/DSS</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/Microsoft+Robotics+Studio/default.aspx">Microsoft Robotics Studio</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/MSArchitectPortal/default.aspx">MSArchitectPortal</category></item><item><title>Fun with Microsoft Robotics Studio</title><link>http://blogs.msdn.com/asehmi/archive/2008/04/20/fun-with-microsoft-robotics-studio.aspx</link><pubDate>Sun, 20 Apr 2008 22:50:19 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8412765</guid><dc:creator>asehmi</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/asehmi/comments/8412765.aspx</comments><wfw:commentRss>http://blogs.msdn.com/asehmi/commentrss.aspx?PostID=8412765</wfw:commentRss><wfw:comment>http://blogs.msdn.com/asehmi/rsscomments.aspx?PostID=8412765</wfw:comment><description>&lt;p&gt;&lt;font face="Arial" size="2"&gt;Not bad for a Saturday project down in sunny Buenos Aires! My friend and professional geek &lt;a href="http://ajlopez.wordpress.com/"&gt;Angel "Java" Lopez&lt;/a&gt; has recently rekindled his love of distributed computing (and Agents) through &lt;a title="Microsoft Robotics Developer Studio" href="http://www.microsoft.com/robotics" target="_blank"&gt;MRDS&lt;/a&gt; and specifically &lt;a title="CCR, DSS, VPL, Simulation Webcast with George Cxxxx" href="http://channel9.msdn.com/ShowPost.aspx?PostID=303072" target="_blank"&gt;CCR/DSS&lt;/a&gt;. We're going to have a lot more fun with this stuff in the coming weeks. In the mean time check out his great little experiment and download the source code &lt;a href="http://ajlopez.wordpress.com/2008/04/20/distributed-scribble-with-microsoft-robotics-developer-studio-and-dss"&gt;here&lt;/a&gt;.&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/asehmi/WindowsLiveWriter/FunwithMicrosoftRoboticsStudio_12504/clip_image002_2.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="123" alt="clip_image002" src="http://blogs.msdn.com/blogfiles/asehmi/WindowsLiveWriter/FunwithMicrosoftRoboticsStudio_12504/clip_image002_thumb.jpg" width="244" border="0"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;Angel concludes:&lt;/font&gt;&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt;All these tools opened my brain. Writing DSS service component is a new way of thinking and programming, something I want to explore for years: how to write objects with one-way message processing, in a&lt;/em&gt; &lt;em&gt;distributed and parallel way. I envision some system that model Minsky ideas about the human mind.&lt;/em&gt;&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;blockquote&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt;Well, it’s a new brave world. Dorothy: we are not in Kansas anymore…&lt;/em&gt;&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;I couldn't agree more!&lt;/font&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8412765" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/asehmi/archive/tags/Distributed+Computing/default.aspx">Distributed Computing</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/CCR_2F00_DSS/default.aspx">CCR/DSS</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/Microsoft+Robotics+Studio/default.aspx">Microsoft Robotics Studio</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/MSArchitectPortal/default.aspx">MSArchitectPortal</category></item><item><title>Microsoft Robotics Developer Studio 2008 CTP April Available</title><link>http://blogs.msdn.com/asehmi/archive/2008/04/10/microsoft-robotics-developer-studio-2008-ctp-april-available.aspx</link><pubDate>Thu, 10 Apr 2008 10:33:29 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8374240</guid><dc:creator>asehmi</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/asehmi/comments/8374240.aspx</comments><wfw:commentRss>http://blogs.msdn.com/asehmi/commentrss.aspx?PostID=8374240</wfw:commentRss><wfw:comment>http://blogs.msdn.com/asehmi/rsscomments.aspx?PostID=8374240</wfw:comment><description>&lt;p&gt;&lt;font face="Arial" size="2"&gt;The high level set of changes is listed below. For me #2 and #3 are golden, but be sure to drill down to find out the details... like async streaming support!&lt;/font&gt;&lt;/p&gt; &lt;ol&gt; &lt;li&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;Improved security model with support for Message Level Authorization using Role-based access control allowing to fine-grained control of who can access services and how.&lt;/font&gt;&lt;/p&gt; &lt;li&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;&lt;strong&gt;Support for LINQ queries in DSSP subscriptions enabling applications to create complex queries that can be executed close to the data source instead of requiring moving data across the network &lt;/strong&gt;&lt;/font&gt;&lt;/p&gt; &lt;li&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;&lt;strong&gt;Support for creating applications that run on multiple DSS nodes using Visual Programming Language and DSS Manifest Editor. This makes it much simpler to create applications that run across nodes, either on the same machine or across the network. When an application containing multiple nodes is to be started, VPL creates individual deploy packages for each node and fires them up across the network.&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt; &lt;li&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;Support for record and playback functionality in Visual Simulation Environment enabling it to record the position and orientation of each entity and save that information to a file which later can be replayed.&lt;/font&gt;&lt;/p&gt; &lt;li&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;Support for storing simulation media resources such as texture maps, bitmaps, and mesh files directly as part of the CLR assemblies in the form of embedded resources rather than as external files.&lt;/font&gt;&lt;/p&gt; &lt;li&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;New Simulation floor plan editor which allows the user to put together walls, doors, windows, etc. to represent the interior of a room, house, or other building.&lt;/font&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/asehmi/WindowsLiveWriter/MicrosoftRoboticsDeveloperStudio2008CTPA_7CF/image_4.png" target="_blank"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; margin: 0px 10px 10px 0px; border-right-width: 0px" height="366" alt="image" src="http://blogs.msdn.com/blogfiles/asehmi/WindowsLiveWriter/MicrosoftRoboticsDeveloperStudio2008CTPA_7CF/image_thumb_1.png" width="484" align="left" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;&lt;font face="Arial" size="2"&gt;Quoting from &lt;/font&gt;&lt;a href="http://www.marcmercuri.com/default.aspx" target="_blank"&gt;&lt;font face="Arial" size="2"&gt;Marc Mercuri&lt;/font&gt;&lt;/a&gt;&lt;font face="Arial" size="2"&gt;'s blog:&lt;/font&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt;At RoboBusiness today, Microsoft announced the release of Microsoft Robotics Developer Studio 2008 CTP1. &lt;/em&gt;&lt;/font&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt;Get the free download here - &lt;/em&gt;&lt;/font&gt; &lt;p&gt;&lt;a href="http://www.marcmercuri.com/ct.ashx?id=6a3dcca7-daff-440c-8edc-bd910836798e&amp;amp;url=http%3a%2f%2fwww.microsoft.com%2fdownloads%2fdetails.aspx%3fFamilyId%3dEB00C558-2163-45A5-BEFE-531AD48BC525%26displaylang%3den"&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt;http://www.microsoft.com/downloads/details.aspx?FamilyId=EB00C558-2163-45A5-BEFE-531AD48BC525&amp;amp;displaylang=en&lt;/em&gt;&lt;/font&gt;&lt;/a&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt; &lt;/em&gt;&lt;/font&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt;Mary-Jo Foley has an article on why you should care ('Why business users should grab a copy of Microsoft's new robotics' toolkit') &lt;/em&gt;&lt;/font&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt;See that here - &lt;/em&gt;&lt;/font&gt;&lt;a href="http://www.marcmercuri.com/ct.ashx?id=6a3dcca7-daff-440c-8edc-bd910836798e&amp;amp;url=http%3a%2f%2fblogs.zdnet.com%2fmicrosoft%2f%3fp%3d1325"&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt;http://blogs.zdnet.com/microsoft/?p=1325&lt;/em&gt;&lt;/font&gt;&lt;/a&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt; &lt;/em&gt;&lt;/font&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt;The folks who attended the conference also saw some videos from my new project. CNET references it in the article - "Microsoft's new gig: Virtual host to robot competitions". &lt;/em&gt;&lt;/font&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt;See that here - &lt;/em&gt;&lt;/font&gt;&lt;a href="http://www.marcmercuri.com/ct.ashx?id=6a3dcca7-daff-440c-8edc-bd910836798e&amp;amp;url=http%3a%2f%2fwww.news.com%2f8301-10784_3-9914959-7.html"&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt;http://www.news.com/8301-10784_3-9914959-7.html&lt;/em&gt;&lt;/font&gt;&lt;/a&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt;. &lt;/em&gt;&lt;/font&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt;Outside of this, mum's the word until the clock at &lt;/em&gt;&lt;/font&gt;&lt;a href="http://www.marcmercuri.com/ct.ashx?id=6a3dcca7-daff-440c-8edc-bd910836798e&amp;amp;url=http%3a%2f%2fwww.robochamps.com"&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt;www.robochamps.com&lt;/em&gt;&lt;/font&gt;&lt;/a&gt;&lt;font face="Arial" size="2"&gt;&lt;em&gt; hit's 0's across the board.&lt;/em&gt;&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;&lt;/font&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;By the way, in addition to RoboChamps, Marc also planned and built &lt;/font&gt;&lt;a href="http://www.codeplex.com/WLQuickApps/Wiki/View.aspx?title=Tafiti%20Overview&amp;amp;referringTitle=Home"&gt;&lt;font face="Arial" size="2"&gt;Tafiti&lt;/font&gt;&lt;/a&gt;&lt;font face="Arial" size="2"&gt; – the guy is smart!&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;For further information, you can also check out: &lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;1. &lt;/font&gt;&lt;a href="http://microsoft.com/robotics"&gt;&lt;font face="Arial" size="2"&gt;MSDN Developer Centre&lt;/font&gt;&lt;/a&gt;  &lt;p&gt;&lt;font face="Arial" size="2"&gt;2. &lt;/font&gt;&lt;a href="http://blogs.msdn.com/msroboticsstudio"&gt;&lt;font face="Arial" size="2"&gt;MRDS Team Blog&lt;/font&gt;&lt;/a&gt;  &lt;p&gt;&lt;font face="Arial" size="2"&gt;3. &lt;/font&gt;&lt;a href="http://www.microsoft.com/feeds/msdn/en-us/robotics/rss.xml"&gt;&lt;font face="Arial" size="2"&gt;MRDS News Feed&lt;/font&gt;&lt;/a&gt;  &lt;p&gt;&lt;font face="Arial" size="2"&gt;4. &lt;/font&gt;&lt;a href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=3147761&amp;amp;SiteID=1"&gt;&lt;font face="Arial" size="2"&gt;MRDS Community Forum&lt;/font&gt;&lt;/a&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8374240" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/asehmi/archive/tags/Distributed+Computing/default.aspx">Distributed Computing</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/CCR_2F00_DSS/default.aspx">CCR/DSS</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/Microsoft+Robotics+Studio/default.aspx">Microsoft Robotics Studio</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/MSArchitectPortal/default.aspx">MSArchitectPortal</category></item><item><title>Distributed Computing Gets Spruced-Up with CCR/DSS!</title><link>http://blogs.msdn.com/asehmi/archive/2008/02/27/distributed-computing-gets-spruced-up-with-ccr-dss.aspx</link><pubDate>Wed, 27 Feb 2008 03:00:40 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7911590</guid><dc:creator>asehmi</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/asehmi/comments/7911590.aspx</comments><wfw:commentRss>http://blogs.msdn.com/asehmi/commentrss.aspx?PostID=7911590</wfw:commentRss><wfw:comment>http://blogs.msdn.com/asehmi/rsscomments.aspx?PostID=7911590</wfw:comment><description>&lt;table cellspacing="0" cellpadding="2" width="400" border="0"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td align="middle" width="200"&gt;&lt;img alt="" src="http://msdn2.microsoft.com/aa731517.HomePage-VPL.jpg"&gt;&lt;/td&gt; &lt;td align="middle" width="200"&gt;&lt;img alt="" src="http://msdn2.microsoft.com/aa731517.HomePage-LEGO.jpg"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;The reality of distributed systems development today is the complexity that eventually if not immediately bogs it down. Instead of being fun, exciting and easy to develop, distributed systems are often hard and unwieldy to design and work with. We continue to face the same old issues time and again yet never appear to come up with game-changing simplifying solutions to our common issues of complexity which, amongst others, are:&lt;/font&gt; &lt;ul&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;The large variety of participants: consumers, providers, intermediaries, administrators, etc.&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Highly heterogeneous systems and architecture, implementation and deployment practices&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Highly autonomous and independent systems &amp;amp; services&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Highly distributed information sources and services&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;The challenges developers, architects, testers, etc. face are many. In general we need to be able to: &lt;/font&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Apply (re)configuration in a live running system&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Coordinate many simultaneous asynchronous interactions&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Support high throughputs (and afford low latencies)&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Provide simple lifecycle services like starting and stopping components dynamically&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Monitor, interact with, and debug a running (distributed) system&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Ideally be able to develop the system in simulated conditions or a test environment&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Span multiple physically or logically distributed compute units&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Re-use components across multiple hardware platforms &amp;amp; devices&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;A typical solution to these challenges might be to centralise &amp;amp; standardise, but that's a kind of anti-pattern for many types of distributed systems scenarios today and simply serves to:&lt;/font&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Reduce the variety of systems, i.e. seeking economies of scale&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Remove the positive benefits of heterogeneity in a distributed system&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Eliminate the autonomy&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Put demands on 'perfect information' which is really hard to do consistently and reliably&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Hardwire the connections between components of the system&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;A better solution is to simply accept diversity and decentralize!&lt;/font&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Accept variety, i.e. seeking economies of innovation&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Encourage autonomy&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Accept heterogeneity&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Understand that that custom, personalized, networked information is normal&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;Imagine an adaptable, open, distributed information system&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;Recently I've been energized by the power of the Concurrency and Coordination Runtime (CCR) + Decentralized Software Services (DSS) combined features, and dare I say, paradigm shifting concepts to fix a lot of the problems we have today in building distributed systems.&lt;/font&gt; &lt;ul&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;CCR provides concurrent (multi-core) programming support by way of some key pattern implementations and developer conveniences&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;DSS provides higher level support to create, host, and discover lightweight services&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;DSS services are oriented to have a state and react to incoming request and updates, and sends update and request to other services&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;DSS services state can be serialized and a service can migrate to another host&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;DSS services are naturally RESTful&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;The Visual Programming Language designer can be used to define, compose, monitor and manage DSS services&lt;/font&gt;&lt;/li&gt; &lt;li&gt;&lt;font face="Arial" size="2"&gt;CCR/DSS can be hosted in a device and is capable of running under .NET Compact Framework (and .NET Micro Framework coming soon)&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;em&gt;&lt;font face="Arial" size="2"&gt;Side Note - How does CCR/DSS relate to WCF?&lt;/font&gt;&lt;/em&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;WCF is more about communications infrastructure – standards-based ‘plumbing’ – whereas CCR/DSS is a high level programming model for distributed service-based and resource-oriented systems (however initially targeted to Robotics applications). Some key CCR features such as ports, memory queues, dispatchers, arbiters, etc. are hard to implement and beyond the scope of WCF. A better comparison would be the combo of WCF+WF, but still there would be many features and patterns missing from both sides. Apples to Oranges - just avoid trying to force a comparison and understand the core use cases for each technology set. In my opinion the patterns supported in CCR are also of immense value to WCF+WF developers. I wonder if anyone has implemented CCR patterns in WCF and furthermore provided a DSSP transport protocol binding for WCF? That would be really cool!&lt;/font&gt; &lt;p&gt;&lt;strong&gt;&lt;font face="Arial" size="2"&gt;Resources&lt;/font&gt;&lt;/strong&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;&lt;a href="http://msdn2.microsoft.com/en-us/robotics/default.aspx" target="_blank"&gt;The Microsoft Robotics Studio&lt;/a&gt; includes the Concurrency and Coordination Runtime (CCR), Decentralized Software Services (DSS), Visual Programming Language (VPL), and a virtual worlds (robotics) simulation environment! If you want to dive straight into CCR/DSS check out the &lt;/font&gt;&lt;a href="http://channel9.msdn.com/wiki/default.aspx/Channel9.MSRoboticsStudio"&gt;&lt;font face="Arial" size="2"&gt;Wiki&lt;/font&gt;&lt;/a&gt;&lt;font face="Arial" size="2"&gt;, watch a &lt;/font&gt;&lt;a href="http://channel9.msdn.com/Showpost.aspx?postid=219308"&gt;&lt;font face="Arial" size="2"&gt;video&lt;/font&gt;&lt;/a&gt;&lt;font face="Arial" size="2"&gt; or &lt;/font&gt;&lt;a href="http://channel9.msdn.com/Showpost.aspx?postid=143582"&gt;&lt;font face="Arial" size="2"&gt;two&lt;/font&gt;&lt;/a&gt;&lt;font face="Arial" size="2"&gt; and install &lt;/font&gt;&lt;a href="http://msdn.microsoft.com/robotics/downloads/default.aspx"&gt;&lt;font face="Arial" size="2"&gt;Microsoft Robotics Studio&lt;/font&gt;&lt;/a&gt;&lt;font face="Arial" size="2"&gt;.&lt;/font&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;As part of the &lt;/font&gt;&lt;a href="http://msdn2.microsoft.com/en-us/robotics/bb625969.aspx"&gt;&lt;font face="Arial" size="2"&gt;Microsoft Robotics Studio (1.5) release&lt;/font&gt;&lt;/a&gt;&lt;font face="Arial" size="2"&gt;, Microsoft has placed the &lt;/font&gt;&lt;a href="http://purl.org/msrs/dssp.pdf"&gt;&lt;font face="Arial" size="2"&gt;Decentralized Software Services Protocol (DSSP)&lt;/font&gt;&lt;/a&gt;&lt;font face="Arial" size="2"&gt; under its &lt;/font&gt;&lt;a href="http://www.microsoft.com/interop/osp/default.mspx"&gt;&lt;font face="Arial" size="2"&gt;Open Specification Promise&lt;/font&gt;&lt;/a&gt;&lt;font face="Arial" size="2"&gt;. This means that the Microsoft patents for the services-oriented protocol specification may be used by anyone in the world, at no cost, and for any type of development including free software, open source, academic, or commercial, enabling interoperability among a wide variety of devices and applications. The &lt;/font&gt;&lt;a href="http://download.microsoft.com/download/5/6/B/56B49917-65E8-494A-BB8C-3D49850DAAC1/DSSP.xsd"&gt;&lt;font face="Arial" size="2"&gt;XSD schema for DSSP&lt;/font&gt;&lt;/a&gt;&lt;font face="Arial" size="2"&gt; is also available.&lt;/font&gt;&lt;/p&gt; &lt;table cellspacing="0" cellpadding="2" width="669" border="0"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="101"&gt;&lt;font face="Arial" size="2"&gt;&lt;a href="http://blogs.msdn.com/msroboticsstudio/default.aspx" target="_blank"&gt;MSRS Blog&lt;/a&gt;&lt;/font&gt;&lt;/td&gt; &lt;td valign="top" width="196"&gt;&lt;font face="Arial" size="2"&gt;&lt;a href="http://forums.microsoft.com/MSDN/default.aspx?ForumGroupID=383&amp;amp;SiteID=1" target="_blank"&gt;Main forum page&lt;/a&gt;&lt;/font&gt;&lt;/td&gt; &lt;td valign="top" width="149"&gt;&lt;font face="Arial" size="2"&gt;&lt;a href="http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=1425&amp;amp;SiteID=1" target="_blank"&gt;DSS forum&lt;/a&gt;&lt;/font&gt;&lt;/td&gt; &lt;td valign="top" width="219"&gt;&lt;font face="Arial" size="2"&gt;&lt;a href="http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=1424&amp;amp;SiteID=1" target="_blank"&gt;CCR forum&lt;/a&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="102"&gt;&lt;font face="Arial" size="2"&gt;&lt;a href="http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=1427&amp;amp;SiteID=1" target="_blank"&gt;VPL forum&lt;/a&gt;&lt;/font&gt;&lt;/td&gt; &lt;td valign="top" width="196"&gt;&lt;font face="Arial" size="2"&gt;&lt;a href="http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=1428&amp;amp;SiteID=1" target="_blank"&gt;Hardware configuration and troubleshooting forum&lt;/a&gt;&lt;/font&gt;&lt;/td&gt; &lt;td valign="top" width="149"&gt;&lt;font face="Arial" size="2"&gt;&lt;a href="http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=1426&amp;amp;SiteID=1" target="_blank"&gt;Simulation forum&lt;/a&gt;&lt;/font&gt;&lt;/td&gt; &lt;td valign="top" width="219"&gt;&lt;font face="Arial" size="2"&gt;&lt;a href="http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=1423&amp;amp;SiteID=1" target="_blank"&gt;Community examples forum&lt;/a&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;The creators of CCR/DSS are &lt;a href="http://search.live.com/images/results.aspx?q=George%20Chrysanthakopoulos%20imagesize%3Asmall&amp;amp;FORM=SZIR" target="_blank"&gt;George Chrysanthakopoulos&lt;/a&gt; and &lt;a href="http://search.live.com/images/results.aspx?q=Henrik%20Frystyk%20Nielsen%20imagesize%3Asmall&amp;amp;FORM=SZIR" target="_blank"&gt;Henrik Frystyk Nielsen&lt;/a&gt;. Search on their names and you'll be very &lt;a href="http://www.answers.com/topic/henrik-frystyk-nielsen?cat=technology" target="_blank"&gt;impressed&lt;/a&gt;.&lt;/font&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;&lt;/font&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;font face="Arial" size="2"&gt;CCR/DSS is not just for Robotics - it'll help you spruce-up your enterprise distributed systems architectures too! Like I said earlier, I'm pretty jazzed by this technology and hope to be writing about it again very soon.&lt;/font&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7911590" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/asehmi/archive/tags/Service-Orientation/default.aspx">Service-Orientation</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/Distributed+Computing/default.aspx">Distributed Computing</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/CCR_2F00_DSS/default.aspx">CCR/DSS</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/WCF/default.aspx">WCF</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/Microsoft+Robotics+Studio/default.aspx">Microsoft Robotics Studio</category><category domain="http://blogs.msdn.com/asehmi/archive/tags/MSArchitectPortal/default.aspx">MSArchitectPortal</category></item></channel></rss>