<?xml version="1.0" encoding="UTF-8" ?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB"><title type="html">Charles Young</title><subtitle type="html">Charles is a principal consultant at Solidosft specialising in connected systems, workflow and rules engines.   He has over twenty years experience in IT as a developer, trainer and consultant.   Charles blogs extensively on Microsoft Biztalk and related subjects, and has been appointed as a Microsoft MVP (Most Valuable Professional) for BizTalk.</subtitle><id>http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/atom.aspx</id><link rel="alternate" type="text/html" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/atom.aspx" /><generator uri="http://communityserver.org" version="2.0.60217.2664">Community Server</generator><updated>2009-05-18T14:07:00Z</updated><entry><title>Book plug: 'Intelligent Systems' by Robert Schalkoff</title><link rel="alternate" type="text/html" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2010/02/01/543.aspx" /><id>http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2010/02/01/543.aspx</id><published>2010-02-01T09:49:00Z</published><updated>2010-02-01T09:49:00Z</updated><content type="html">&lt;div&gt;&lt;span&gt;&lt;span&gt;I am deeply engrossed at present in a new book, published at the beginning of this year, called 'Intelligent Systems - Principles, Paradigms and Pragmatics' by Robert Schalkoff, and published by Jones &amp; Bartlett.   Rather strangely, I note the copyright year is 2011, so I guess it fell through some kind of wormhole from the future.   I don't think I have enjoyed reading an IT book as much in the last 20 years. &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;span&gt;The book is a modern introduction to the whole field of 'intelligent systems' (IS) which is broadly what we used to call AI before the term fell out of favour.   It is very much an introduction "suitable for a first course in IS...anywhere from the junior level undergraduate to first year graduate level".   It is 700+ pages of excellence. I'm glad to say that I'm fairly familiar with the ground covered in the first few chapters, despite the absence of a degree in Computer Science.   What I really like about it, though, is that it covers a wide range of subjects, is grounded in practical use of freely available tools (Protege, CLIPS, Soar, etc.,) and is written by someone who clearly understands what it is like to be unfamiliar with the subject and the kind of questions that beginners ask.   It doesn't drown you with algebra, but uses enough to illustrate the points being made.   It concentrates almost more on worked examples of CSPs, rule sets, blackboards, decision trees, fuzzy logic and all kinds of other stuff than it does on maths.   An hey, Microsoft's BRE even gets a mention in dispatches on page 171 :-)   I'm happy!   I have some way to travel yet before I get to the chapters on neural networks, learning systems, genetic algorithms and the like, but I will enjoy the road. &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&lt;span&gt;&lt;span&gt;I strongly recommend this book for anyone who is looking for a comprehensive and highly readable introductory overview of IS.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://blog.solidsoft.com/aggbug.aspx?PostID=543" width="1" height="1"&gt;</content><author><name>CharlesYoung</name><uri>http://blog.solidsoft.com/members/CharlesYoung.aspx</uri></author></entry><entry><title>Microsoft Field Surveys</title><link rel="alternate" type="text/html" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2010/01/30/542.aspx" /><id>http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2010/01/30/542.aspx</id><published>2010-01-30T20:34:00Z</published><updated>2010-01-30T20:34:00Z</updated><content type="html">&lt;p&gt;&lt;span&gt;&lt;span&gt;So there I am doing what a geek does best - sitting in Cafe Nero on Tottenham Court Road in the centre of London on a Saturday afternoon, killing time while waiting to meet up with my daughter, and doing a little coding to pass the time when someone (his name turned out to be Jim) asks me  "so what do you think of the Visual Studio 2010 beta?"&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;strong&gt;Me&gt;&lt;/strong&gt;  It's OK; its stable and functional, and the UI performs quite well, which is good because it uses WPF.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;strong&gt;Jim&gt;&lt;/strong&gt; Yes I know, I'm working on it.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;strong&gt;Me&gt;&lt;/strong&gt; (slightly confused, and thinking he means he is working with WPF) Oh, that's interesting.   So what kind of code do you write?&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;strong&gt;Jim&gt;&lt;/strong&gt; I'm working on Visual Studio.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;strong&gt;Me&gt;&lt;/strong&gt; Yes, I realise, but what are you using WPF for?&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;strong&gt;Jim&gt;&lt;/strong&gt; No, I mean I work for Microsoft.   I'm in the Visual Studio team over in Redmond.   I work on Visual Studio.   Always good to get feedback!&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;Beats an MSDN survey any day of the week!&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;img src="http://blog.solidsoft.com/aggbug.aspx?PostID=542" width="1" height="1"&gt;</content><author><name>CharlesYoung</name><uri>http://blog.solidsoft.com/members/CharlesYoung.aspx</uri></author></entry><entry><title>MS BRE Backward Chaining - Part 3: The ‘Bound Variable' pattern</title><link rel="alternate" type="text/html" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2010/01/18/539.aspx" /><id>http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2010/01/18/539.aspx</id><published>2010-01-18T11:32:00Z</published><updated>2010-01-18T11:32:00Z</updated><content type="html">This is the third and final part of a three-part series, as follows:&lt;br /&gt;&lt;a href="http://geekswithblogs.net/cyoung/archive/2010/01/17/situating_the_business_rules_engine.aspx"&gt;Part 1: Situating the Business Rules Engine&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://geekswithblogs.net/cyoung/archive/2010/01/17/backward_chaining_the_simple_name_pattern.aspx"&gt;Part 2: Backward Chaining: the 'Simple Name' pattern&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://geekswithblogs.net/cyoung/archive/2010/01/17/backward_chaining_the_bound_variable_pattern.aspx"&gt;Part 3: Backward Chaining: the ‘Bound Variable' pattern&lt;/a&gt;&lt;br /&gt;
&lt;hr /&gt;&lt;br /&gt;In Part 2 we looked at how developers can use procedural attachments and 'directive events' to implement a simple form of backward chaining for Microsoft's Business Rule Engine.   In this third, and final, part, we will extend the code to tackle more complex backward-chaining requirements.   The 'simple name' goal pattern is fairly easy to understand, but is limited. It provides a coarse-grained mechanism for switching sets of rules 'on' and 'off' in a backward-chained fashion. When this model fits the problem, it can work well. However, many real-world problems requires a greater degree of expressivity.
Read more at &lt;a href="http://geekswithblogs.net/cyoung/archive/2010/01/17/backward_chaining_the_bound_variable_pattern.aspx"&gt; http://geekswithblogs.net/cyoung/archive/2010/01/17/backward_chaining_the_bound_variable_pattern.aspx&lt;/a&gt;&lt;img src="http://blog.solidsoft.com/aggbug.aspx?PostID=539" width="1" height="1"&gt;</content><author><name>CharlesYoung</name><uri>http://blog.solidsoft.com/members/CharlesYoung.aspx</uri></author></entry><entry><title>MS BRE Backward Chaining - Part 2: The 'Simple Name' pattern</title><link rel="alternate" type="text/html" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2010/01/18/538.aspx" /><id>http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2010/01/18/538.aspx</id><published>2010-01-18T11:31:00Z</published><updated>2010-01-18T11:31:00Z</updated><content type="html"> This is the second of a three-part series, as follows:&lt;br /&gt;&lt;a href="http://geekswithblogs.net/cyoung/archive/2010/01/17/situating_the_business_rules_engine.aspx"&gt;Part 1: Situating the Business Rules Engine&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://geekswithblogs.net/cyoung/archive/2010/01/17/backward_chaining_the_simple_name_pattern.aspx"&gt;Part 2: Backward Chaining: the 'Simple Name' pattern&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://geekswithblogs.net/cyoung/archive/2010/01/17/backward_chaining_the_bound_variable_pattern.aspx"&gt;Part 3: Backward Chaining: the ‘Bound Variable' pattern&lt;/a&gt;&lt;br /&gt;
&lt;hr /&gt;&lt;br /&gt;In part one of this three-part series, I explained some of the historical influences that led Microsoft to design their Business Rules Engine as a 'situated reasoning engine'.   In this second part, I want to look at a pattern that exploits these features.   Microsoft's engine is often described as a 'forward-chaining' rule engine.   However, like several other similar engines, it is entirely capable of undertaking 'backward-chaining' as well.   It has no explicit, built-in support for the semantics of backward-chaining, which is a pity.   However, the 'situated' capabilities of the engine are sufficient to implement the backward-chaining approach.
Read more at &lt;a href="http://geekswithblogs.net/cyoung/archive/2010/01/17/backward_chaining_the_simple_name_pattern.aspx"&gt; http://geekswithblogs.net/cyoung/archive/2010/01/17/backward_chaining_the_simple_name_pattern.aspx&lt;/a&gt;&lt;img src="http://blog.solidsoft.com/aggbug.aspx?PostID=538" width="1" height="1"&gt;</content><author><name>CharlesYoung</name><uri>http://blog.solidsoft.com/members/CharlesYoung.aspx</uri></author></entry><entry><title>MS BRE Backward Chaining - Part 1: Situating the Business Rules Engine</title><link rel="alternate" type="text/html" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2010/01/18/537.aspx" /><id>http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2010/01/18/537.aspx</id><published>2010-01-18T11:29:00Z</published><updated>2010-01-18T11:29:00Z</updated><content type="html">This is the first of a three-part series, as follows:&lt;br /&gt;&lt;a href="http://geekswithblogs.net/cyoung/archive/2010/01/17/situating_the_business_rules_engine.aspx"&gt;Part 1: Situating the Business Rules Engine&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://geekswithblogs.net/cyoung/archive/2010/01/17/backward_chaining_the_simple_name_pattern.aspx"&gt;Part 2: Backward Chaining: the 'Simple Name' pattern&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://geekswithblogs.net/cyoung/archive/2010/01/17/backward_chaining_the_bound_variable_pattern.aspx"&gt;Part 3: Backward Chaining: the ‘Bound Variable' pattern&lt;/a&gt;&lt;br /&gt;
&lt;hr /&gt;&lt;br /&gt;
Karl posted on forward and backward chaining at &lt;a href="http://karlreinsch.com/2010/01/07/on-chaining/"&gt;http://karlreinsch.com/2010/01/07/on-chaining/&lt;/a&gt;.   I emailed him privately and talked a bit about how backward chaining can be implemented on Microsoft's Business Rule Engine (I even sent him a little example).   A couple of days later he published a second post at &lt;a href="http://karlreinsch.com/2010/01/11/have-you-implemented-backward-chaining-on-a-microsoft-rule-engine/"&gt;http://karlreinsch.com/2010/01/11/have-you-implemented-backward-chaining-on-a-microsoft-rule-engine/&lt;/a&gt;.   So, I shall rise to the challenge and explain how backward chaining can be done in the BRE.   However, I'll leave that for parts 2 and 3. In this first part, I want to go over some of the history regarding the relevant features of the BRE and why they are there.
Read more at &lt;a href="http://geekswithblogs.net/cyoung/archive/2010/01/17/situating_the_business_rules_engine.aspx"&gt;http://geekswithblogs.net/cyoung/archive/2010/01/17/situating_the_business_rules_engine.aspx&lt;/a&gt;&lt;img src="http://blog.solidsoft.com/aggbug.aspx?PostID=537" width="1" height="1"&gt;</content><author><name>CharlesYoung</name><uri>http://blog.solidsoft.com/members/CharlesYoung.aspx</uri></author></entry><entry><title>October Rules Fest 2009: Day 5</title><link rel="alternate" type="text/html" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/10/30/534.aspx" /><id>http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/10/30/534.aspx</id><published>2009-10-30T17:12:00Z</published><updated>2009-10-30T17:12:00Z</updated><content type="html">My report on day five (the last day) of the October Rules Fest 2009 is at:

http://geekswithblogs.net/cyoung/archive/2009/10/30/135901.aspx
&lt;img src="http://blog.solidsoft.com/aggbug.aspx?PostID=534" width="1" height="1"&gt;</content><author><name>CharlesYoung</name><uri>http://blog.solidsoft.com/members/CharlesYoung.aspx</uri></author></entry><entry><title>October Rules Fest 2009: Day 4 </title><link rel="alternate" type="text/html" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/10/30/533.aspx" /><id>http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/10/30/533.aspx</id><published>2009-10-30T10:37:00Z</published><updated>2009-10-30T10:37:00Z</updated><content type="html">My report on day four of the October Rules Fest 2009 is at:

http://geekswithblogs.net/cyoung/archive/2009/10/30/135855.aspx
&lt;img src="http://blog.solidsoft.com/aggbug.aspx?PostID=533" width="1" height="1"&gt;</content><author><name>CharlesYoung</name><uri>http://blog.solidsoft.com/members/CharlesYoung.aspx</uri></author></entry><entry><title>October Rules Fest 2009: Day 3</title><link rel="alternate" type="text/html" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/10/29/532.aspx" /><id>http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/10/29/532.aspx</id><published>2009-10-29T18:18:00Z</published><updated>2009-10-29T18:18:00Z</updated><content type="html">My report on day three of the October Rules Fest 2009 is at:

http://geekswithblogs.net/cyoung/archive/2009/10/28/135780.aspx
&lt;img src="http://blog.solidsoft.com/aggbug.aspx?PostID=532" width="1" height="1"&gt;</content><author><name>CharlesYoung</name><uri>http://blog.solidsoft.com/members/CharlesYoung.aspx</uri></author></entry><entry><title>October Rules Fest 2009: Day 2</title><link rel="alternate" type="text/html" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/10/28/531.aspx" /><id>http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/10/28/531.aspx</id><published>2009-10-28T11:17:00Z</published><updated>2009-10-28T11:17:00Z</updated><content type="html">I’m at day two of the October Rules Conference at the Adolphus Hotel in downtown Dallas.   My report on the day's processings is at:  

http://geekswithblogs.net/cyoung/archive/2009/10/27/135756.aspx
&lt;img src="http://blog.solidsoft.com/aggbug.aspx?PostID=531" width="1" height="1"&gt;</content><author><name>CharlesYoung</name><uri>http://blog.solidsoft.com/members/CharlesYoung.aspx</uri></author></entry><entry><title>Complex-Event processing (CEP) Explained for BizTalk Users</title><link rel="alternate" type="text/html" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/05/18/521.aspx" /><id>http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/05/18/521.aspx</id><published>2009-05-18T13:10:00Z</published><updated>2009-05-18T13:10:00Z</updated><content type="html">&lt;P&gt;&lt;FONT size=2 face=Verdana&gt;Last Monday, Microsoft used the TechEd keynote to announce their plans to include a Complex-Event Processing (CEP) engine in SQL Server 2008 R2.&amp;nbsp;&amp;nbsp; This article attempts to explain CEP from the perspective of a long-time user of BizTalk Server and to address the question as to why BizTalk architects and developers might have a reason to take an interest in the forthcoming CEP engine.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Verdana&gt;Read on at &lt;A href="http://geekswithblogs.net/cyoung/archive/2009/05/18/cep_explained_for_biztalk_users.aspx"&gt;http://geekswithblogs.net/cyoung/archive/2009/05/18/cep_explained_for_biztalk_users.aspx&lt;/A&gt;...&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blog.solidsoft.com/aggbug.aspx?PostID=521" width="1" height="1"&gt;</content><author><name>CharlesYoung</name><uri>http://blog.solidsoft.com/members/CharlesYoung.aspx</uri></author></entry><entry><title>Microsoft announces entry into Complex Event Processing (CEP) market </title><link rel="alternate" type="text/html" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/05/18/518.aspx" /><id>http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/05/18/518.aspx</id><published>2009-05-18T13:09:00Z</published><updated>2009-05-18T13:09:00Z</updated><content type="html">&lt;P&gt;&lt;FONT size=2 face=Verdana&gt;&lt;STRONG&gt;NewsFlash&lt;/STRONG&gt;...Microsoft today announced their long-awaited entry into the Complex Event Processing market.&amp;nbsp;&amp;nbsp; The press release is at &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/presspass/press/2009/May09/05-11TechEd09PR.mspx"&gt;&lt;FONT size=2 face=Verdana&gt;http://www.microsoft.com/presspass/press/2009/May09/05-11TechEd09PR.mspx&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=2 face=Verdana&gt;.&amp;nbsp;&amp;nbsp; The news was also announced by Bill Veghte as part of his keynote at TechEd.&amp;nbsp;&amp;nbsp; The Microsoft CEP offering will be delivered as part of SQL Server 2008&amp;nbsp;R2&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Verdana&gt;Unfortunately, this is the only information I can find so far in the public domain, and, being a cautious kind of guy, and NDAd up the hilt, I will hold back from saying more until I can guage just how much detail Microsoft is releasing at the current time.&amp;nbsp;&amp;nbsp;&amp;nbsp;It looks like they&amp;nbsp;have a session at TechEd&amp;nbsp;tomorrow on their forthcoming offering.&amp;nbsp;&amp;nbsp; There was talk&amp;nbsp;a few weeks back of an early public CTP, but there is now some suggestion that this may not be available until later in the year.&amp;nbsp;&amp;nbsp; Watch this space for more info.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Verdana&gt;In the meantime, here are a couple of Microsoft Research links that you might find interesting.&amp;nbsp;&amp;nbsp; I couldn't&amp;nbsp;possibly say how relevant they might be ;-)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;&lt;FONT size=2 face=Verdana&gt;&lt;A href="http://research.microsoft.com/apps/pubs/default.aspx?id=70517"&gt;http://research.microsoft.com/apps/pubs/default.aspx?id=70517&lt;/A&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;FONT size=2 face=Verdana&gt;
&lt;P&gt;&lt;BR&gt;&lt;A href="http://middleware05.objectweb.org/WSProceedings/demos/d1_Barga.pdf"&gt;http://middleware05.objectweb.org/WSProceedings/demos/d1_Barga.pdf&lt;/A&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;img src="http://blog.solidsoft.com/aggbug.aspx?PostID=518" width="1" height="1"&gt;</content><author><name>CharlesYoung</name><uri>http://blog.solidsoft.com/members/CharlesYoung.aspx</uri></author></entry><entry><title>CEP: Microsoft reveals more at TechEd </title><link rel="alternate" type="text/html" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/05/18/519.aspx" /><id>http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/05/18/519.aspx</id><published>2009-05-18T13:09:00Z</published><updated>2009-05-18T13:09:00Z</updated><content type="html">&lt;P&gt;&lt;SPAN&gt;&lt;FONT size=2 face=Verdana&gt;Following on from the news about Microsoft's CEP engine, Richard Seroter attended yesterday's TechEd session on the new engine and has blogged very&amp;nbsp;detailed notes.&amp;nbsp;&amp;nbsp; See &lt;/FONT&gt;&lt;A href="http://seroter.wordpress.com/2009/05/12/teched-2009-day-2-session-notes-cep-first-look/"&gt;&lt;FONT size=2 face=Verdana&gt;http://seroter.wordpress.com/2009/05/12/teched-2009-day-2-session-notes-cep-first-look/&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana&gt;&lt;FONT size=2&gt;.&amp;nbsp; &amp;nbsp; I'm delighted to see that Microsoft is disclosing much&amp;nbsp;the same level of information publically&amp;nbsp;that they made available internally a couple of months ago.&amp;nbsp;&amp;nbsp;Now all we need is CTP 1.&lt;O:P&gt;&lt;/O:P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;FONT face=Verdana&gt;&lt;FONT size=2&gt;Richard notes that the session was sparsely attended.&amp;nbsp;&amp;nbsp; CEP has some way to go before it is widely acknowledged or understood in the mainstream, and the potential impact of engines like this will be poorly understood at present.&amp;nbsp;&amp;nbsp; I intend to put together an article or two in which I'll attempt to explain why I think we should all take note.&lt;O:P&gt;&lt;/O:P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;FONT face=Verdana&gt;&lt;FONT size=2&gt;I responded to a comment from Tim Bass last night.&amp;nbsp;&amp;nbsp; Tim is a vocal critic of the CEP marketplace, and one of his&amp;nbsp;common themes is the belief that most/all CEP vendors currently attach the term 'CEP' incorrectly to what are 'mere' event stream processing engines.&amp;nbsp;&amp;nbsp; I responded by pointing out the CEDR technology, on which I believe Microsoft's&amp;nbsp;engine in based, directly tackles one of the chief characteristics of the event 'cloud' (a core concept in CEP) which is that events may be detected out-of-order in terms of time and causality, and that CEP engines must be able to handle this efficiently.&amp;nbsp;&amp;nbsp; I was interested to see that Richard recorded an emphasis on this capability of Microsoft’s new engine.&lt;O:P&gt;&lt;/O:P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;FONT face=Verdana&gt;&lt;FONT size=2&gt;Also, one other point.&amp;nbsp;&amp;nbsp;I had a Twitter message yesterday from another well-known person on the CEP circuit who said that he hadn't seen any sign of anyone using the new Microsoft engine yet.&amp;nbsp; For the avoidance of confusion, Microsoft only announced the engine yesterday.&amp;nbsp;&amp;nbsp; There is a very early private preview of the code doing the rounds internally within Microsoft.&amp;nbsp;&amp;nbsp; It looks like the first public CTP will be available later this year and that launch is expected next year.&amp;nbsp;&amp;nbsp; So no one is yet using the engine, apart from Microsoft themselves (apparently, if I understood comments made&amp;nbsp;during the keynote correctly,&amp;nbsp;they are currently handling 500 million events a day through the engine in association with their web site).&lt;O:P&gt;&lt;/O:P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blog.solidsoft.com/aggbug.aspx?PostID=519" width="1" height="1"&gt;</content><author><name>CharlesYoung</name><uri>http://blog.solidsoft.com/members/CharlesYoung.aspx</uri></author></entry><entry><title>CEP: Microsoft reveals more at TechEd </title><link rel="alternate" type="text/html" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/05/18/520.aspx" /><id>http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/05/18/520.aspx</id><published>2009-05-18T13:09:00Z</published><updated>2009-05-18T13:09:00Z</updated><content type="html">&lt;P&gt;&lt;SPAN&gt;&lt;FONT size=2 face=Verdana&gt;Following on from the news about Microsoft's CEP engine, Richard Seroter attended yesterday's TechEd session on the new engine and has blogged very&amp;nbsp;detailed notes.&amp;nbsp;&amp;nbsp; See &lt;/FONT&gt;&lt;A href="http://seroter.wordpress.com/2009/05/12/teched-2009-day-2-session-notes-cep-first-look/"&gt;&lt;FONT size=2 face=Verdana&gt;http://seroter.wordpress.com/2009/05/12/teched-2009-day-2-session-notes-cep-first-look/&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana&gt;&lt;FONT size=2&gt;.&amp;nbsp; &amp;nbsp; I'm delighted to see that Microsoft is disclosing much&amp;nbsp;the same level of information publically&amp;nbsp;that they made available internally a couple of months ago.&amp;nbsp;&amp;nbsp;Now all we need is CTP 1.&lt;O:P&gt;&lt;/O:P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;FONT face=Verdana&gt;&lt;FONT size=2&gt;Richard notes that the session was sparsely attended.&amp;nbsp;&amp;nbsp; CEP has some way to go before it is widely acknowledged or understood in the mainstream, and the potential impact of engines like this will be poorly understood at present.&amp;nbsp;&amp;nbsp; I intend to put together an article or two in which I'll attempt to explain why I think we should all take note.&lt;O:P&gt;&lt;/O:P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;FONT face=Verdana&gt;&lt;FONT size=2&gt;I responded to a comment from Tim Bass last night.&amp;nbsp;&amp;nbsp; Tim is a vocal critic of the CEP marketplace, and one of his&amp;nbsp;common themes is the belief that most/all CEP vendors currently attach the term 'CEP' incorrectly to what are 'mere' event stream processing engines.&amp;nbsp;&amp;nbsp; I responded by pointing out the CEDR technology, on which I believe Microsoft's&amp;nbsp;engine in based, directly tackles one of the chief characteristics of the event 'cloud' (a core concept in CEP) which is that events may be detected out-of-order in terms of time and causality, and that CEP engines must be able to handle this efficiently.&amp;nbsp;&amp;nbsp; I was interested to see that Richard recorded an emphasis on this capability of Microsoft’s new engine.&lt;O:P&gt;&lt;/O:P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;FONT face=Verdana&gt;&lt;FONT size=2&gt;Also, one other point.&amp;nbsp;&amp;nbsp;I had a Twitter message yesterday from another well-known person on the CEP circuit who said that he hadn't seen any sign of anyone using the new Microsoft engine yet.&amp;nbsp; For the avoidance of confusion, Microsoft only announced the engine yesterday.&amp;nbsp;&amp;nbsp; There is a very early private preview of the code doing the rounds internally within Microsoft.&amp;nbsp;&amp;nbsp; It looks like the first public CTP will be available later this year and that launch is expected next year.&amp;nbsp;&amp;nbsp; So no one is yet using the engine, apart from Microsoft themselves (apparently, if I understood comments made&amp;nbsp;during the keynote correctly,&amp;nbsp;they are currently handling 500 million events a day through the engine in association with their web site).&lt;O:P&gt;&lt;/O:P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blog.solidsoft.com/aggbug.aspx?PostID=520" width="1" height="1"&gt;</content><author><name>CharlesYoung</name><uri>http://blog.solidsoft.com/members/CharlesYoung.aspx</uri></author></entry><entry><title>BizTalk Server: On app pools and isolated host instances </title><link rel="alternate" type="text/html" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/05/18/517.aspx" /><id>http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/05/18/517.aspx</id><published>2009-05-18T13:08:00Z</published><updated>2009-05-18T13:08:00Z</updated><content type="html">&lt;DIV&gt;&lt;FONT size=2 face=Verdana&gt;I dealt with an interesting, if arcane, issue today at a client's site.&amp;nbsp;The client is in the process of deploying an early version of a BizTalk application to their test environment for the first time.&amp;nbsp;&amp;nbsp; The test environment is hosted by another company, and BizTalk Server 2006 R2 had been installed and configured by that company.&amp;nbsp;They are using the 64 bit version on Windows 2003 R2 with SP2.&amp;nbsp;&amp;nbsp; The BizTalk application publishes a WCF endpoint, hosted in IIS6.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2 face=Verdana&gt;The hosting company has quite correctly created a set of domain accounts and groups and configured BizTalk to use these.&amp;nbsp;&amp;nbsp; Unfortunately, when doing the initial deployment yesterday, we didn't have, and couldn't get, the password for the configured BizTalk Isolated Host user account.&amp;nbsp;&amp;nbsp; We did, however, have the password for another domain account, and we were able to add that account to the BizTalk Isolated Host Users domain group.&amp;nbsp;&amp;nbsp; So, having done that, we configured this second account as the identity of the app pool.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2 face=Verdana&gt;To begin with, nothing worked.&amp;nbsp;&amp;nbsp; Every time we tried to access the WCF endpoint, IIS returned a 404 - Service unavailable message.&amp;nbsp;&amp;nbsp; However, at some point, the whole thing started working OK.&amp;nbsp;&amp;nbsp; I forget, now, the exact sequence of steps, but that is not important.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2 face=Verdana&gt;At some point yesterday, the BizTalk developer created a local account called 'BizTalk Isolated Host Users'.&amp;nbsp;I can't remember, now, why we thought this would be a good idea.&amp;nbsp;&amp;nbsp; Our BizTalk Server is configured to use a domain group of the same name, and is not aware of the local group.&amp;nbsp;&amp;nbsp; The important point, though, is that this group was not deleted.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2 face=Verdana&gt;Roll forward to today.&amp;nbsp;&amp;nbsp; Everything was working nicely until the BizTalk developer decided, very sensibly, to tidy things up by removing the unneeded local group.&amp;nbsp;&amp;nbsp; Shortly after removing this group, we noticed that the dreaded 404 response had returned.&amp;nbsp;The only change we had made was the removal of the local group, so we recreated it.&amp;nbsp;&amp;nbsp; We didn't add any accounts to it.&amp;nbsp;&amp;nbsp; After an IIS restart, the endpoint sprang back into life.&amp;nbsp;&amp;nbsp; We deleted the group, and everything stopped working.&amp;nbsp;&amp;nbsp; We recreated it again, checked that the endpoint was working, renamed the group and tested.&amp;nbsp;&amp;nbsp; Sure enough, we got a 404.&amp;nbsp;We changed the name back, and the endpoint worked.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2 face=Verdana&gt;At this point, I felt very confused at several levels.&amp;nbsp;&amp;nbsp; We checked the configuration of BizTalk carefully, and satisfied ourselves that it had indeed been configured to use only domain accounts and groups.&amp;nbsp;The only thing that was unusual about our environment was that, while the BizTalk isolated host instance we were using was configured to use one domain account for its logon credentials, the IIS app pool was configured to use another, set up with equivalent group membership and permissions.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2 face=Verdana&gt;I have always, as a natural path of least resistance, configured app pools to use the same identity as the corresponding isolated host instance.&amp;nbsp;&amp;nbsp; I realised that I have never consciously asked the question about what happens if you use different accounts.&amp;nbsp;I phoned a colleague who has far more practical experience of deploying BizTalk than I do, and discussed this with him.&amp;nbsp;&amp;nbsp; He confirmed that he also always uses the same account, and like me, he had never stopped to wonder what happens if you use different accounts. &amp;nbsp;&amp;nbsp;So, I turned to the Internet and did some searching.&amp;nbsp;&amp;nbsp; Eventually, I discovered, embedded half-way through a BizTalk help page on MSDN (see &lt;/FONT&gt;&lt;A href="http://65.55.11.235/en-us/library/aa561505.aspx"&gt;&lt;FONT size=2 face=Verdana&gt;http://65.55.11.235/en-us/library/aa561505.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=2 face=Verdana&gt;), an explicit statement that the app pool should always be configured with the same account as the isolated host instance.&amp;nbsp;&amp;nbsp; In the grand tradition of BizTalk documentation there was, of course, absolutely no effort expended on explaining why.&amp;nbsp;&amp;nbsp; However, the help page also stated mysteriously that if you change the password on the account in the app pool configuration, there is no need to make a corresponding change to the credentials configured on BizTalk's isolated host instance.&amp;nbsp;&amp;nbsp; Bizarre.&amp;nbsp;&amp;nbsp; This seems to imply that the credentials you configure in BizTalk are not actually used for any kind of authentication.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2 face=Verdana&gt;We talked to the hosting company, and managed to get the password we needed.&amp;nbsp;&amp;nbsp; We re-configured the IIS app pool to use the same account configured for the BizTalk isolated host instance.&amp;nbsp;&amp;nbsp; Having deleted the local group, we restarted IIS and...success...everything worked OK.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2 face=Verdana&gt;So, the moral of the story is that you really need to ensure that your app pool identity is the same as the account you configure on the BizTalk isolated host instance.&amp;nbsp;&amp;nbsp; Don't worry about keeping the password up to date in BizTalk.&amp;nbsp;&amp;nbsp; I strongly recommend you always use this approach.&amp;nbsp;&amp;nbsp;&amp;nbsp; If you really, really , really have to live with different accounts, create an empty local group on you BizTalk box with an identical name to the domain group you are using as BizTalk isolated host users group, and by some magic, everything will work.&amp;nbsp;&amp;nbsp; Avoid this weird 'work-around' at all costs in production.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2 face=Verdana&gt;Maybe this is some strange side-effect of Windows pass-through authentication (I don't really think that is the case), or maybe it is the result of some undocumented logic deep in the message agent or transport layer.&amp;nbsp;&amp;nbsp; I can't say.&amp;nbsp;&amp;nbsp; I do remember that when BTS 2004 first shipped, there was a suggestion that MS might at some point extend the isolated host feature to support additional hosts, and not just IIS.&amp;nbsp;&amp;nbsp; This has never happened, but it may be the explanation for what you configure an account and password on your isolated host instances even if, in the case of IIS, it is the app pool configuration which is all-important.&lt;/FONT&gt;&lt;/DIV&gt;&lt;img src="http://blog.solidsoft.com/aggbug.aspx?PostID=517" width="1" height="1"&gt;</content><author><name>CharlesYoung</name><uri>http://blog.solidsoft.com/members/CharlesYoung.aspx</uri></author></entry><entry><title>Biztalk Server: Response to Andrew Siemer's Post</title><link rel="alternate" type="text/html" href="http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/05/18/516.aspx" /><id>http://blog.solidsoft.com/blogs/charles_young_mvp_biztalk/archive/2009/05/18/516.aspx</id><published>2009-05-18T13:07:00Z</published><updated>2009-05-18T13:07:00Z</updated><content type="html">&lt;P&gt;&lt;FONT size=2 face=Verdana&gt;Over on the ILOG blog, Chris Berg called out Andrew Siemer’s post at &lt;A href="http://geekswithblogs.net/AndrewSiemer/archive/2009/03/30/ilog-rules-for-.net-3.0-ndash-quick-overview.aspx"&gt;http://geekswithblogs.net/AndrewSiemer/archive/2009/03/30/ilog-rules-for-.net-3.0-ndash-quick-overview.aspx&lt;/A&gt;.&amp;nbsp;&amp;nbsp; I thought I’d post some observations by way of a response.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Verdana&gt;See &lt;A href="http://geekswithblogs.net/cyoung/archive/2009/04/29/131593.aspx"&gt;http://geekswithblogs.net/cyoung/archive/2009/04/29/131593.aspx&lt;/A&gt;...&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blog.solidsoft.com/aggbug.aspx?PostID=516" width="1" height="1"&gt;</content><author><name>CharlesYoung</name><uri>http://blog.solidsoft.com/members/CharlesYoung.aspx</uri></author></entry></feed>