<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" xml:lang="en" xml:base="http://www.lybecker.com/blog/wp-atom.php">
	<title type="text">Anders Lybeckers Weblog!</title>
	<subtitle type="text">My software development adventures…</subtitle>

	<updated>2010-03-01T17:31:53Z</updated>
	<generator uri="http://wordpress.org/" version="abc">WordPress</generator>

	<link rel="alternate" type="text/html" href="http://www.lybecker.com/blog" />
	<id>http://www.lybecker.com/blog/feed/atom/</id>
	

			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/AndersLybecker" /><feedburner:info uri="anderslybecker" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Transferring SQL Server logins]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/OhvcgOBA-mc/" />
		<id>http://www.lybecker.com/blog/?p=518</id>
		<updated>2010-03-01T17:31:53Z</updated>
		<published>2010-03-01T17:31:53Z</published>
		<category scheme="http://www.lybecker.com/blog" term="SQL Server" /><category scheme="http://www.lybecker.com/blog" term="Security" /><category scheme="http://www.lybecker.com/blog" term="SQL Server 2008" />		<summary type="html"><![CDATA[I had to migrate a SQL Server 2008 instance on to new hardware.
I choose to detach the databases and attach the databases on the new SQL Server 2008 instance on the new hardware. This was easy, but the origin SQL Server instance used mixed SQL Server and Windows Authentication Mode. This also meant that I [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2009/03/18/how-to-check-for-and-enable-read-committed-snapshot-isolation/' rel='bookmark' title='Permanent Link: How to check for and enable read committed snapshot isolation'>How to check for and enable read committed snapshot isolation</a></li>
<li><a href='http://www.lybecker.com/blog/2009/08/11/change-data-capture-cdc-in-sql-server-2008/' rel='bookmark' title='Permanent Link: Change Data Capture (CDC) in SQL Server 2008'>Change Data Capture (CDC) in SQL Server 2008</a></li>
<li><a href='http://www.lybecker.com/blog/2009/03/21/scary-sql-server-2005-2008-bug/' rel='bookmark' title='Permanent Link: Scary SQL Server 2005 &#038; 2008 bug'>Scary SQL Server 2005 &#038; 2008 bug</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/">&lt;p&gt;&lt;img class="alignright size-full wp-image-520" title="Files" src="http://www.lybecker.com/blog/wp-content/uploads/Files.png" alt="" width="158" height="91" /&gt;I had to migrate a SQL Server 2008 instance on to new hardware.&lt;/p&gt;
&lt;p&gt;I choose to detach the databases and attach the databases on the new SQL Server 2008 instance on the new hardware. This was easy, but the origin SQL Server instance used mixed SQL Server and Windows Authentication Mode. This also meant that I had to migrate SQL Server logins, as the logins where a mix of SQL Server logins and Active Directory domain accounts/groups.&lt;/p&gt;
&lt;p&gt;Both the SQL Server logins and domain accounts/groups has an unique &lt;a title="SID explained on Wikipedia" href="http://en.wikipedia.org/wiki/Security_Identifier"&gt;SID&lt;/a&gt; (Security Identifier), which ties the logins in the SQL Server with the users in the database.&lt;/p&gt;
&lt;p&gt;While the domain accounts/groups resides in the Active Directory domain controllers, the SQL Server logins only resides in the SQL Server. This means, moving domain accounts/groups is easy, by just creating the same users in the new SQL Server instance, but SQL Server logins is not. I could either choose to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Recreate the SQL Server logins with new users in each of the databases, as new SQL Server logins will get new SIDs and therefore not be tied to the old database users. This also requires that you know all the passwords – alternative reconfigure all the client applications using SQL Server logins &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /&gt; &lt;/li&gt;
&lt;li&gt;Transfer the SQL Server logins with SID and password &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;How to transfer SQL Server logins? See the KB article: &lt;a title="KB article" href="http://support.microsoft.com/default.aspx/kb/918992/"&gt;How to transfer the logins and the passwords between instances of SQL Server 2005 and SQL Server 2008&lt;/a&gt;. Easy &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/03/18/how-to-check-for-and-enable-read-committed-snapshot-isolation/' rel='bookmark' title='Permanent Link: How to check for and enable read committed snapshot isolation'&gt;How to check for and enable read committed snapshot isolation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/08/11/change-data-capture-cdc-in-sql-server-2008/' rel='bookmark' title='Permanent Link: Change Data Capture (CDC) in SQL Server 2008'&gt;Change Data Capture (CDC) in SQL Server 2008&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/03/21/scary-sql-server-2005-2008-bug/' rel='bookmark' title='Permanent Link: Scary SQL Server 2005 &amp;#038; 2008 bug'&gt;Scary SQL Server 2005 &amp;#038; 2008 bug&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/OhvcgOBA-mc" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Cisco VPN (IPSec) support on 64 bit platforms]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/LNAINWHfKCA/" />
		<id>http://www.lybecker.com/blog/?p=507</id>
		<updated>2010-01-16T18:12:04Z</updated>
		<published>2010-01-14T18:58:28Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Useful tools" /><category scheme="http://www.lybecker.com/blog" term="Security" /><category scheme="http://www.lybecker.com/blog" term="VPN" />		<summary type="html"><![CDATA[I like Windows 7 x64, but I hate Cisco’s lack of support for the IPSec protocol on 64-bit platforms. Many of our customers use IPSec and the Cisco VPN Client – therefore I cannot connect to the customer’s network via IPSec VPN tunnels on my primary laptop  
Until today  
A colleague of mine [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-oletx/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with OleTx'>Configuring the DTC for WCF with OleTx</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2010/01/14/cisco-vpn-ipsec-support-on-64-bit-platforms/">&lt;p&gt;&lt;a href="http://www.shrew.net/"&gt;&lt;img class="alignright size-full wp-image-508" title="Shrew Soft Logo" src="http://www.lybecker.com/blog/wp-content/uploads/shrewsoft-logo.png" alt="Shrew Soft Logo" width="100" height="111" /&gt;&lt;/a&gt;I like Windows 7 x64, but I hate Cisco’s lack of support for the IPSec protocol on 64-bit platforms. Many of our customers use IPSec and the Cisco VPN Client – therefore I cannot connect to the customer’s network via IPSec VPN tunnels on my primary laptop &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;Until today &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;A colleague of mine recommended &lt;a title="Shrew Soft's website" href="http://www.shrew.net/"&gt;Shrew Soft VPN Client&lt;/a&gt;. It’s free and works like a charm. It’s a lot faster connecting and negotiating to the remote network than Cisco VPN Client, so fast in fact, that I initially thought that the connection failed. I’ve been using it for a couple of days, connecting to multiple customers, without any issues.&lt;/p&gt;
&lt;p&gt;Why does Cisco implement a VPN client for x64 platforms?&lt;/p&gt;
&lt;p&gt;I guess it is a money making scheme. They want to push their new Cisco VPN boxes and their new Cisco AnyConnect VPN client (expensive!), which makes use of SSL VPN.&lt;/p&gt;
&lt;p&gt;Greg Ferro has another critical article &lt;a title="Article Early Death of Cisco VPN Client Forces VPN License Fees" href="http://etherealmind.com/premature-death-cisco-vpn-client-end-of-life/"&gt;Early Death of Cisco VPN Client Forces VPN License Fees&lt;/a&gt; with more details about Cisco’s SSL VPN.&lt;/p&gt;
&lt;p&gt;I know of a commercial IPSec VPN client from &lt;a title="NCP's CPN client" href="http://www.ncp-e.com/en/solutions/vpn-products/secure-entry-client.html"&gt;NCP&lt;/a&gt; that works fine with Cisco IPSec VPN tunnels, but the steep price tag of $144 USD + taxes is too much.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-oletx/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with OleTx'&gt;Configuring the DTC for WCF with OleTx&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/LNAINWHfKCA" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2010/01/14/cisco-vpn-ipsec-support-on-64-bit-platforms/#comments" thr:count="2" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2010/01/14/cisco-vpn-ipsec-support-on-64-bit-platforms/feed/atom/" thr:count="2" />
		<thr:total>2</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2010/01/14/cisco-vpn-ipsec-support-on-64-bit-platforms/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Lucene.Net and Transactions]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/j1LkKVioGyw/" />
		<id>http://www.lybecker.com/blog/?p=400</id>
		<updated>2009-12-03T20:00:46Z</updated>
		<published>2009-12-03T20:00:46Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="Lucene" /><category scheme="http://www.lybecker.com/blog" term="dotNet" /><category scheme="http://www.lybecker.com/blog" term="Lucene.Net" /><category scheme="http://www.lybecker.com/blog" term="Transactions" />		<summary type="html"><![CDATA[


Lucene.Net is an open source full text search engine library (a port from Java). It is stable and works like a charm &#8211; I’ve been using Lucene.Net for a couple of years now and implement a handful of solutions. Lucene is awesome.
If you want to try working with Lucene.Net, then the DimeCast.Net crew has recently [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-oletx/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with OleTx'>Configuring the DTC for WCF with OleTx</a></li>
<li><a href='http://www.lybecker.com/blog/2007/03/14/great-conference/' rel='bookmark' title='Permanent Link: Great conference'>Great conference</a></li>
<li><a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-ws-atomictransaction/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with WS-AtomicTransaction'>Configuring the DTC for WCF with WS-AtomicTransaction</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/12/03/lucene-net-and-transactions/">&lt;div class="articleInlineBlocks alignright"&gt;&lt;img class="articleInlineImage" src="/blog/wp-content/themes/default/images/inlineblock_top.gif" alt="" height="5" /&gt;&lt;/p&gt;
&lt;p class="articleInlineBlockContent" style="text-align: center;"&gt;
&lt;p class="articleInlineBlockContent"&gt;&lt;a href="http://www.lybecker.com/blog/wp-content/uploads/LuceneLogo.gif"&gt;&lt;img class="aligncenter size-full wp-image-492" title="Lucene Search Engine Logo" src="http://www.lybecker.com/blog/wp-content/uploads/LuceneLogo.gif" alt="Lucene Search Engine Logo" width="160" height="25" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="articleInlineBlockContent"&gt;Lucene.Net is an open source full text search engine library (a port from Java). It is stable and works like a charm &amp;#8211; I’ve been using Lucene.Net for a couple of years now and implement a handful of solutions. Lucene is awesome.&lt;/p&gt;
&lt;p class="articleInlineBlockContent"&gt;If you want to try working with Lucene.Net, then the &lt;a title="Lucene.Net at dimecast.net" href="http://dimecasts.net/Casts/ByTag/Lucene"&gt;DimeCast.Net&lt;/a&gt; crew has recently made two short webcasts introducing Lucene.Net.&lt;/p&gt;
&lt;p style="margin: 0px"&gt;&lt;img class="articleInlineImage" style="margin-top: 10px;" src="/blog/wp-content/themes/default/images/inlineblock_bottom.gif" alt="" height="15" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;.Net 2.0 made it simple to use transactions with the System.Transactions namespace. Two of the great features are automatic elevation to distributed transactions (and utilize the Distributed Transaction Coordinator) and the other is the simplicity of creating your own transactional resource managers.&lt;/p&gt;
&lt;p&gt;The .Net Framework defines a resource manager as a resource that can automatically enlist in a transaction managed by System.Transactions – which means that any object that implements any of the following interfaces can enlist in a transaction:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;IEnlistmentNotification for the &lt;a title="2PC protocol at Wikipedia" href="http://en.wikipedia.org/wiki/Two-phase_commit_protocol"&gt;two-phase-commit protocol&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;IPromotableSinglePhaseNotification for the single-phase-commit protocol (non-distributed transactions)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To implement a resource manager for the Lucene.Net IndexWriter, and therefore make it transactional, all you have to do is the following:&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
public class TransactionalIndexWriter : IndexWriter, IEnlistmentNotification
{
    #region ctor
    public TransactionalIndexWriter(Directory d, Analyzer a, bool create, MaxFieldLength mfl)
        : base(d, a, create, mfl)
    {
        EnlistTransaction();
    }
    /* More constructors */
    #endregion

    public void EnlistTransaction()
    {
        // Enlist in transaction if ambient transaction exists
        Transaction tx = Transaction.Current;
        if (tx != null)
            tx.EnlistVolatile(this, EnlistmentOptions.None);
    }

    #region IEnlistmentNotification Members
    public void Commit(Enlistment enlistment)
    {
        base.Commit();
        enlistment.Done();
    }

    public void InDoubt(Enlistment enlistment)
    {
        // Do nothing.
        enlistment.Done();
    }

    public void Prepare(PreparingEnlistment preparingEnlistment)
    {
        base.PrepareCommit();
        preparingEnlistment.Prepared();
    }

    public void Rollback(Enlistment enlistment)
    {
        base.Rollback();
        enlistment.Done();
    }
    #endregion
}
&lt;/pre&gt;
&lt;p&gt;You can use it like so:&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
IndexWriter indexWriter = null;
TransactionScope tx = null;

try
{
    tx = new TransactionScope();
    indexWriter = new TransactionalIndexWriter(...);

    // Perform transactional work
    indexWriter.AddDocument(new Document());
    indexWriter.AddDocument(new Document());
    indexWriter.AddDocument(new Document());

    // Connect to Database, MSMQ etc. to elevate to a distributed transaction

    // Commit transaction
    tx.Complete();
}
finally
{
    if (tx != null)
        tx.Dispose();

    if (indexWriter != null)
        indexWriter.Close();
}
&lt;/pre&gt;
&lt;p&gt;Fairly simply uh? Just remember to instantiate the TransactionalIndexWriter or call the public method EnlistTransaction within the scope of an ambient transaction.&lt;br /&gt;
You might consider implementing IDisposable for TransactionalIndexWriter so you can take advantage of the using statement.&lt;/p&gt;
&lt;p&gt;I will leave it to the reader to implement a TransactionalIndexReader.&lt;/p&gt;
&lt;div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px;"&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt; &lt;w :WordDocument&gt; &lt;/w&gt;&lt;w :View&gt;Normal&lt;/w&gt; &lt;w :Zoom&gt;0&lt;/w&gt; &lt;w :TrackMoves /&gt; &lt;w :TrackFormatting /&gt; &lt;w :HyphenationZone&gt;21&lt;/w&gt; &lt;w :PunctuationKerning /&gt; &lt;w :ValidateAgainstSchemas /&gt; &lt;w :SaveIfXMLInvalid&gt;false&lt;/w&gt; &lt;w :IgnoreMixedContent&gt;false&lt;/w&gt; &lt;w :AlwaysShowPlaceholderText&gt;false&lt;/w&gt; &lt;w :DoNotPromoteQF /&gt; &lt;w :LidThemeOther&gt;DA&lt;/w&gt; &lt;w :LidThemeAsian&gt;ZH-CN&lt;/w&gt; &lt;w :LidThemeComplexScript&gt;X-NONE&lt;/w&gt; &lt;w :Compatibility&gt; &lt;w :BreakWrappedTables /&gt; &lt;w :SnapToGridInCell /&gt; &lt;w :WrapTextWithPunct /&gt; &lt;w :UseAsianBreakRules /&gt; &lt;w :DontGrowAutofit /&gt; &lt;w :SplitPgBreakAndParaMark /&gt; &lt;w :DontVertAlignCellWithSp /&gt; &lt;w :DontBreakConstrainedForcedTables /&gt; &lt;w :DontVertAlignInTxbx /&gt; &lt;w :Word11KerningPairs /&gt; &lt;w :CachedColBalance /&gt; &lt;w :UseFELayout /&gt; &lt;/w&gt; &lt;m :mathPr&gt; &lt;m :mathFont m:val="Cambria Math" /&gt; &lt;m :brkBin m:val="before" /&gt; &lt;m :brkBinSub m:val="&amp;#45;-" /&gt; &lt;m :smallFrac m:val="off" /&gt; &lt;m :dispDef /&gt; &lt;m :lMargin m:val="0" /&gt; &lt;m :rMargin m:val="0" /&gt; &lt;m :defJc m:val="centerGroup" /&gt; &lt;m :wrapIndent m:val="1440" /&gt; &lt;m :intLim m:val="subSup" /&gt; &lt;m :naryLim m:val="undOvr" /&gt; &lt;/m&gt; &lt;/xml&gt;&lt; ![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt; &lt;w :LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"   DefSemiHidden="true" DefQFormat="false" DefPriority="99"   LatentStyleCount="267"&gt; &lt;w :LsdException Locked="false" Priority="0" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Normal" /&gt; &lt;w :LsdException Locked="false" Priority="9" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="heading 1" /&gt; &lt;w :LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2" /&gt; &lt;w :LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3" /&gt; &lt;w :LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4" /&gt; &lt;w :LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5" /&gt; &lt;w :LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6" /&gt; &lt;w :LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7" /&gt; &lt;w :LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8" /&gt; &lt;w :LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9" /&gt; &lt;w :LsdException Locked="false" Priority="39" Name="toc 1" /&gt; &lt;w :LsdException Locked="false" Priority="39" Name="toc 2" /&gt; &lt;w :LsdException Locked="false" Priority="39" Name="toc 3" /&gt; &lt;w :LsdException Locked="false" Priority="39" Name="toc 4" /&gt; &lt;w :LsdException Locked="false" Priority="39" Name="toc 5" /&gt; &lt;w :LsdException Locked="false" Priority="39" Name="toc 6" /&gt; &lt;w :LsdException Locked="false" Priority="39" Name="toc 7" /&gt; &lt;w :LsdException Locked="false" Priority="39" Name="toc 8" /&gt; &lt;w :LsdException Locked="false" Priority="39" Name="toc 9" /&gt; &lt;w :LsdException Locked="false" Priority="35" QFormat="true" Name="caption" /&gt; &lt;w :LsdException Locked="false" Priority="10" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Title" /&gt; &lt;w :LsdException Locked="false" Priority="1" Name="Default Paragraph Font" /&gt; &lt;w :LsdException Locked="false" Priority="11" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtitle" /&gt; &lt;w :LsdException Locked="false" Priority="22" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Strong" /&gt; &lt;w :LsdException Locked="false" Priority="20" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Emphasis" /&gt; &lt;w :LsdException Locked="false" Priority="59" SemiHidden="false"    UnhideWhenUsed="false" Name="Table Grid" /&gt; &lt;w :LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text" /&gt; &lt;w :LsdException Locked="false" Priority="1" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="No Spacing" /&gt; &lt;w :LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading" /&gt; &lt;w :LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List" /&gt; &lt;w :LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid" /&gt; &lt;w :LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1" /&gt; &lt;w :LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2" /&gt; &lt;w :LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1" /&gt; &lt;w :LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2" /&gt; &lt;w :LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1" /&gt; &lt;w :LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2" /&gt; &lt;w :LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3" /&gt; &lt;w :LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List" /&gt; &lt;w :LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading" /&gt; &lt;w :LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List" /&gt; &lt;w :LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid" /&gt; &lt;w :LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 1" /&gt; &lt;w :LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 1" /&gt; &lt;w :LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 1" /&gt; &lt;w :LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1" /&gt; &lt;w :LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1" /&gt; &lt;w :LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 1" /&gt; &lt;w :LsdException Locked="false" UnhideWhenUsed="false" Name="Revision" /&gt; &lt;w :LsdException Locked="false" Priority="34" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="List Paragraph" /&gt; &lt;w :LsdException Locked="false" Priority="29" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Quote" /&gt; &lt;w :LsdException Locked="false" Priority="30" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Quote" /&gt; &lt;w :LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 1" /&gt; &lt;w :LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1" /&gt; &lt;w :LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1" /&gt; &lt;w :LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1" /&gt; &lt;w :LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 1" /&gt; &lt;w :LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 1" /&gt; &lt;w :LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 1" /&gt; &lt;w :LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 1" /&gt; &lt;w :LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 2" /&gt; &lt;w :LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 2" /&gt; &lt;w :LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 2" /&gt; &lt;w :LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2" /&gt; &lt;w :LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2" /&gt; &lt;w :LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 2" /&gt; &lt;w :LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 2" /&gt; &lt;w :LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2" /&gt; &lt;w :LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2" /&gt; &lt;w :LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2" /&gt; &lt;w :LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 2" /&gt; &lt;w :LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 2" /&gt; &lt;w :LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 2" /&gt; &lt;w :LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 2" /&gt; &lt;w :LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 3" /&gt; &lt;w :LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 3" /&gt; &lt;w :LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 3" /&gt; &lt;w :LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3" /&gt; &lt;w :LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3" /&gt; &lt;w :LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 3" /&gt; &lt;w :LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 3" /&gt; &lt;w :LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3" /&gt; &lt;w :LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3" /&gt; &lt;w :LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3" /&gt; &lt;w :LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 3" /&gt; &lt;w :LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 3" /&gt; &lt;w :LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 3" /&gt; &lt;w :LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 3" /&gt; &lt;w :LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 4" /&gt; &lt;w :LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 4" /&gt; &lt;w :LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 4" /&gt; &lt;w :LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4" /&gt; &lt;w :LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4" /&gt; &lt;w :LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 4" /&gt; &lt;w :LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 4" /&gt; &lt;w :LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4" /&gt; &lt;w :LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4" /&gt; &lt;w :LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4" /&gt; &lt;w :LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 4" /&gt; &lt;w :LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 4" /&gt; &lt;w :LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 4" /&gt; &lt;w :LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 4" /&gt; &lt;w :LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 5" /&gt; &lt;w :LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 5" /&gt; &lt;w :LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 5" /&gt; &lt;w :LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5" /&gt; &lt;w :LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5" /&gt; &lt;w :LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 5" /&gt; &lt;w :LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 5" /&gt; &lt;w :LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5" /&gt; &lt;w :LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5" /&gt; &lt;w :LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5" /&gt; &lt;w :LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 5" /&gt; &lt;w :LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 5" /&gt; &lt;w :LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 5" /&gt; &lt;w :LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 5" /&gt; &lt;w :LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 6" /&gt; &lt;w :LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 6" /&gt; &lt;w :LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 6" /&gt; &lt;w :LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6" /&gt; &lt;w :LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6" /&gt; &lt;w :LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 6" /&gt; &lt;w :LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 6" /&gt; &lt;w :LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6" /&gt; &lt;w :LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6" /&gt; &lt;w :LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6" /&gt; &lt;w :LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 6" /&gt; &lt;w :LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 6" /&gt; &lt;w :LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 6" /&gt; &lt;w :LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 6" /&gt; &lt;w :LsdException Locked="false" Priority="19" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis" /&gt; &lt;w :LsdException Locked="false" Priority="21" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis" /&gt; &lt;w :LsdException Locked="false" Priority="31" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference" /&gt; &lt;w :LsdException Locked="false" Priority="32" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Reference" /&gt; &lt;w :LsdException Locked="false" Priority="33" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Book Title" /&gt; &lt;w :LsdException Locked="false" Priority="37" Name="Bibliography" /&gt; &lt;w :LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading" /&gt; &lt;/w&gt; &lt;/xml&gt;&lt; ![endif]--&gt;&lt;!--  /* Font Definitions */  @font-face 	{font-family:SimSun; 	panose-1:2 1 6 0 3 1 1 1 1 1; 	mso-font-alt:宋体; 	mso-font-charset:134; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:3 680460288 22 0 262145 0;} @font-face 	{font-family:"Cambria Math"; 	panose-1:2 4 5 3 5 4 6 3 2 4; 	mso-font-charset:1; 	mso-generic-font-family:roman; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:0 0 0 0 0 0;} @font-face 	{font-family:Calibri; 	panose-1:2 15 5 2 2 2 4 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:-520092929 1073786111 9 0 415 0;} @font-face 	{font-family:"@SimSun"; 	panose-1:2 1 6 0 3 1 1 1 1 1; 	mso-font-charset:134; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:3 680460288 22 0 262145 0;}  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-unhide:no; 	mso-style-qformat:yes; 	mso-style-parent:""; 	margin-top:0cm; 	margin-right:0cm; 	margin-bottom:10.0pt; 	margin-left:0cm; 	line-height:115%; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:SimSun; 	mso-fareast-theme-font:minor-fareast; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} .MsoChpDefault 	{mso-style-type:export-only; 	mso-default-props:yes; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:SimSun; 	mso-fareast-theme-font:minor-fareast; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} .MsoPapDefault 	{mso-style-type:export-only; 	margin-bottom:10.0pt; 	line-height:115%;} @page Section1 	{size:612.0pt 792.0pt; 	margin:3.0cm 2.0cm 3.0cm 2.0cm; 	mso-header-margin:35.4pt; 	mso-footer-margin:35.4pt; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --&gt;&lt;!--[if gte mso 10]&gt; &lt;mce :style&gt;&lt; !   /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:"Table Normal"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:""; 	mso-padding-alt:0cm 5.4pt 0cm 5.4pt; 	mso-para-margin-top:0cm; 	mso-para-margin-right:0cm; 	mso-para-margin-bottom:10.0pt; 	mso-para-margin-left:0cm; 	line-height:115%; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} --&gt; &lt;!--[endif]--&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Lucene.Net is an open source full text search engine library (a port from Java). It is stable and works like a charm &amp;#8211; I’ve been using Lucene.Net for a couple of years now and implement a handful of solutions. Lucene is awesome.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;If you want to try working with Lucene.Net, then the DimeCast.Net crew has recently made two 10 short webcast introducing Lucene.Net (http://dimecasts.net/Casts/ByTag/Lucene).&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/mce&gt;&lt;/div&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-oletx/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with OleTx'&gt;Configuring the DTC for WCF with OleTx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/03/14/great-conference/' rel='bookmark' title='Permanent Link: Great conference'&gt;Great conference&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-ws-atomictransaction/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with WS-AtomicTransaction'&gt;Configuring the DTC for WCF with WS-AtomicTransaction&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/j1LkKVioGyw" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/12/03/lucene-net-and-transactions/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/12/03/lucene-net-and-transactions/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/12/03/lucene-net-and-transactions/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[TechEd Berlin 2009]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/6rzOQKlcgBE/" />
		<id>http://www.lybecker.com/blog/?p=390</id>
		<updated>2009-11-06T20:21:47Z</updated>
		<published>2009-11-05T18:47:28Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Announcement" /><category scheme="http://www.lybecker.com/blog" term="Conference" /><category scheme="http://www.lybecker.com/blog" term="TechEd" />		<summary type="html"><![CDATA[I’m going to TechEd conference in Berlin next week. Are you going?
I haven’t taken the time to browse through the session catalogs yet, but I will be seeking information about:

Microsoft&#8217;s acquisition of FAST Search and how Microsoft incorporates into their products
Microsoft SQL Server 2008 R2 and especially the spatial support for Reporting Services
The new features [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2009/04/16/world%e2%80%99s-first-electronic-annual-general-meeting/' rel='bookmark' title='Permanent Link: World’s first electronic annual general meeting'>World’s first electronic annual general meeting</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/11/05/teched-berlin-2009/">&lt;p&gt;&lt;a href="http://www.lybecker.com/blog/wp-content/uploads/TechEd_Berlin2009.gif"&gt;&lt;img class="alignright size-full wp-image-391" title="TechEd Berlin 2009" src="http://www.lybecker.com/blog/wp-content/uploads/TechEd_Berlin2009.gif" alt="TechEd Berlin 2009" width="120" height="90" /&gt;&lt;/a&gt;I’m going to TechEd conference in Berlin next week. Are you going?&lt;/p&gt;
&lt;p&gt;I haven’t taken the time to browse through the session catalogs yet, but I will be seeking information about:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Microsoft&amp;#8217;s acquisition of FAST Search and how Microsoft incorporates into their products&lt;/li&gt;
&lt;li&gt;Microsoft SQL Server 2008 R2 and especially the spatial support for Reporting Services&lt;/li&gt;
&lt;li&gt;The new features of Windows Communication Foundation 4.0, the redesigned Windows Workflow Foundation 4.0 and .Net 4.0 in general.&lt;/li&gt;
&lt;li&gt;The Windows Azure Platform&lt;/li&gt;
&lt;li&gt;ASP.Net MVC 2&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you are going, drop me a mail and I’ll buy you a beer. That’s the least I can do for my readers &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/04/16/world%e2%80%99s-first-electronic-annual-general-meeting/' rel='bookmark' title='Permanent Link: World’s first electronic annual general meeting'&gt;World’s first electronic annual general meeting&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/6rzOQKlcgBE" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/11/05/teched-berlin-2009/#comments" thr:count="2" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/11/05/teched-berlin-2009/feed/atom/" thr:count="2" />
		<thr:total>2</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/11/05/teched-berlin-2009/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[ASP.NET MVC Best Practices]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/LVaS1jiR1TU/" />
		<id>http://www.lybecker.com/blog/?p=373</id>
		<updated>2009-10-29T19:06:22Z</updated>
		<published>2009-10-29T18:56:29Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="dotNet" /><category scheme="http://www.lybecker.com/blog" term="MVC" />		<summary type="html"><![CDATA[I love ASP.Net MVC – It has made web development fun. It also introduced new pitfalls…
Microsoft MVP Simone Chiaretta has fathered 12 ASP.NET MVC Best Practices worth reading.
In particular I find the these items interesting:

“DomainModel != ViewModel”  with the ASP.NET MVC View Model Patterns
 “Pay attention to the Verbs” with the PRG Pattern (Post-Redirect-Get)



Related posts:Visiting [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2009/02/11/visiting-microsoft-in-johannesburg-south-africa/' rel='bookmark' title='Permanent Link: Visiting Microsoft in Johannesburg, South Africa'>Visiting Microsoft in Johannesburg, South Africa</a></li>
<li><a href='http://www.lybecker.com/blog/2009/10/14/new-blog-notech/' rel='bookmark' title='Permanent Link: New blog &#8211; NoTech'>New blog &#8211; NoTech</a></li>
<li><a href='http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: Microsoft product launch 2008'>Microsoft product launch 2008</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/10/29/asp-net-mvc-best-practices/">&lt;p&gt;&lt;a href="http://www.lybecker.com/blog/wp-content/uploads/ASPNet_MVC.png"&gt;&lt;img class="size-thumbnail wp-image-374 alignright" title="ASP.Net MVC" src="http://www.lybecker.com/blog/wp-content/uploads/ASPNet_MVC-150x150.png" alt="ASP.Net MVC" width="150" height="150" /&gt;&lt;/a&gt;I love ASP.Net MVC – It has made web development fun. It also introduced new pitfalls…&lt;/p&gt;
&lt;p&gt;Microsoft MVP Simone Chiaretta has fathered &lt;a title="Blog post: 12 ASP.NET MVC Best Practices" href="http://codeclimber.net.nz/archive/2009/10/27/12-asp.net-mvc-best-practices.aspx"&gt;12 ASP.NET MVC Best Practices&lt;/a&gt; worth reading.&lt;/p&gt;
&lt;p&gt;In particular I find the these items interesting:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;“DomainModel != ViewModel”  with the &lt;a title="Blog post: ASP.NET MVC View Model Patterns" href="http://geekswithblogs.net/michelotti/archive/2009/10/25/asp.net-mvc-view-model-patterns.aspx"&gt;ASP.NET MVC View Model Patterns&lt;/a&gt;&lt;/li&gt;
&lt;li&gt; “Pay attention to the Verbs” with the &lt;a title="Blog post: ASP.NET MVC - Using Post, Redirect, Get Pattern" href="http://blog.eworldui.net/post/2008/05/ASPNET-MVC---Using-Post2c-Redirect2c-Get-Pattern.aspx"&gt;PRG Pattern (Post-Redirect-Get)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/02/11/visiting-microsoft-in-johannesburg-south-africa/' rel='bookmark' title='Permanent Link: Visiting Microsoft in Johannesburg, South Africa'&gt;Visiting Microsoft in Johannesburg, South Africa&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/10/14/new-blog-notech/' rel='bookmark' title='Permanent Link: New blog &amp;#8211; NoTech'&gt;New blog &amp;#8211; NoTech&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: Microsoft product launch 2008'&gt;Microsoft product launch 2008&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/LVaS1jiR1TU" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/10/29/asp-net-mvc-best-practices/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/10/29/asp-net-mvc-best-practices/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/10/29/asp-net-mvc-best-practices/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Initial slow WCF request]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/LYkTyrcOEZc/" />
		<id>http://www.lybecker.com/blog/?p=367</id>
		<updated>2009-10-23T21:01:06Z</updated>
		<published>2009-10-23T19:15:35Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="Cloud" /><category scheme="http://www.lybecker.com/blog" term="WCF" />		<summary type="html"><![CDATA[If working with any of the HTTP Bindings you might experience that the first WCF request takes a long time to complete.
This is because the initial HTTP connection tries to get the proxy settings automatically. This is done by requesting the configuration via a HTTP GET http://wpad/wpad.dat. If proxy server automatic configuration is not configured, [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2009/02/11/visiting-microsoft-in-johannesburg-south-africa/' rel='bookmark' title='Permanent Link: Visiting Microsoft in Johannesburg, South Africa'>Visiting Microsoft in Johannesburg, South Africa</a></li>
<li><a href='http://www.lybecker.com/blog/2007/03/14/great-conference/' rel='bookmark' title='Permanent Link: Great conference'>Great conference</a></li>
<li><a href='http://www.lybecker.com/blog/2007/01/18/building-a-windows-communication-foundation-client/' rel='bookmark' title='Permanent Link: Building a Windows Communication Foundation client'>Building a Windows Communication Foundation client</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/10/23/initial-slow-wcf-request/">&lt;p&gt;&lt;a href="http://www.lybecker.com/blog/wp-content/uploads/Snail.png"&gt;&lt;img class="alignright size-full wp-image-370" title="Snail" src="http://www.lybecker.com/blog/wp-content/uploads/Snail.png" alt="Snail" width="200" height="159" /&gt;&lt;/a&gt;If working with any of the HTTP Bindings you might experience that the first WCF request takes a long time to complete.&lt;/p&gt;
&lt;p&gt;This is because the initial HTTP connection tries to get the proxy settings automatically. This is done by requesting the configuration via a HTTP GET http://wpad/wpad.dat. If proxy server automatic configuration is not configured, the request times out and the initial WCF can send the request directly to the destination address. This may add 30 seconds to the initial WCF request!&lt;/p&gt;
&lt;p&gt;You can disable this behavior by specifying UseDefaultWebProxy = false on the binding.&lt;/p&gt;
&lt;p&gt;You can read more about &lt;a href="http://en.wikipedia.org/wiki/Web_Proxy_Autodiscovery_Protocol"&gt;Web Proxy Auto-Discovery Protocol ( WPAD ) at Wikipedia&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This applies to basicHttpBinding, wsHttpBinding, wsDualHttpBinding, webHttpBinding, ws2007FederationHttpBinding, wsFederationHttpBinding, basicHttpContextBinding, wsHttpContextBinding and the new Azure ServiceBus bindings basicHttpRelayBinding, wsHttpRelayBinding, webHttpRelayBinding&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/02/11/visiting-microsoft-in-johannesburg-south-africa/' rel='bookmark' title='Permanent Link: Visiting Microsoft in Johannesburg, South Africa'&gt;Visiting Microsoft in Johannesburg, South Africa&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/03/14/great-conference/' rel='bookmark' title='Permanent Link: Great conference'&gt;Great conference&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/01/18/building-a-windows-communication-foundation-client/' rel='bookmark' title='Permanent Link: Building a Windows Communication Foundation client'&gt;Building a Windows Communication Foundation client&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/LYkTyrcOEZc" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/10/23/initial-slow-wcf-request/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/10/23/initial-slow-wcf-request/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/10/23/initial-slow-wcf-request/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Reuse in SQL Server 2008 Integration Services]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/-VFr1jvfWkg/" />
		<id>http://www.lybecker.com/blog/?p=365</id>
		<updated>2009-10-22T19:27:34Z</updated>
		<published>2009-10-22T19:27:34Z</published>
		<category scheme="http://www.lybecker.com/blog" term="SQL Server" /><category scheme="http://www.lybecker.com/blog" term="SSIS" />		<summary type="html"><![CDATA[Or lack of  
My current project requires SSIS (SQL Server 2008 Integration Services) packages for ETL processing.
SSIS seems very capable, but lacks fundamental things that a developer like me takes for granted. I did not expect SSIS to have the ability of inheritance as it isn’t object-oriented, but I did expect functions or methods [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/' rel='bookmark' title='Permanent Link: Transferring SQL Server logins'>Transferring SQL Server logins</a></li>
<li><a href='http://www.lybecker.com/blog/2009/08/11/change-data-capture-cdc-in-sql-server-2008/' rel='bookmark' title='Permanent Link: Change Data Capture (CDC) in SQL Server 2008'>Change Data Capture (CDC) in SQL Server 2008</a></li>
<li><a href='http://www.lybecker.com/blog/2008/12/01/easy-win-index-candidates-on-sql-server-2005/' rel='bookmark' title='Permanent Link: Easy win &#8211; index candidates on SQL Server 2005'>Easy win &#8211; index candidates on SQL Server 2005</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/10/22/reuse-in-sql-server-2008-integration-services/">&lt;p&gt;Or lack of &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;My current project requires SSIS (SQL Server 2008 Integration Services) packages for &lt;a title="ETL at Wikipedia" href="http://en.wikipedia.org/wiki/Extract,_transform,_load"&gt;ETL&lt;/a&gt; processing.&lt;/p&gt;
&lt;p&gt;SSIS seems very capable, but lacks fundamental things that a developer like me takes for granted. I did not expect SSIS to have the ability of inheritance as it isn’t object-oriented, but I did expect functions or methods like a procedural language or set-based languages like T-SQL. Sadly the answer is no.&lt;/p&gt;
&lt;p&gt;You can make script tasks or script component with custom T-SQL or .Net code, but logic in expressions you have to duplicate.&lt;/p&gt;
&lt;p&gt;I goggled reuse and SSIS and found this statement in an &lt;a title="Articel  	 SSIS - Code Reuse and Complex Control Flows" href="http://www.sqlservercentral.com/articles/SQL+Server+2005+-+SSIS/ssiscodereuseandcomplexcontrolflows/2021/"&gt;article about reuse in SSIS&lt;/a&gt; at SqlServerCentral.com:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;Let&amp;#8217;s not forget, copy&amp;amp;paste &lt;em&gt;is&lt;/em&gt; the first level of code reuse&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;In essence it’s true, but I would hope the entire Information Technology industry has move way beyond this point years ago.&lt;/p&gt;
&lt;p&gt;&lt;a title="Reusability in SSIS at the Microsoft SQL Server forum" href="http://social.msdn.microsoft.com/Forums/en-US/sqlintegrationservices/thread/ffbdcec7-977d-4f5e-ab74-dff6a238bf35"&gt;This post&lt;/a&gt; at the Microsoft SQL Server forum confirms this horrific truth about lack of reuse in SSIS &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /&gt; &lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/' rel='bookmark' title='Permanent Link: Transferring SQL Server logins'&gt;Transferring SQL Server logins&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/08/11/change-data-capture-cdc-in-sql-server-2008/' rel='bookmark' title='Permanent Link: Change Data Capture (CDC) in SQL Server 2008'&gt;Change Data Capture (CDC) in SQL Server 2008&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/12/01/easy-win-index-candidates-on-sql-server-2005/' rel='bookmark' title='Permanent Link: Easy win &amp;#8211; index candidates on SQL Server 2005'&gt;Easy win &amp;#8211; index candidates on SQL Server 2005&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/-VFr1jvfWkg" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/10/22/reuse-in-sql-server-2008-integration-services/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/10/22/reuse-in-sql-server-2008-integration-services/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/10/22/reuse-in-sql-server-2008-integration-services/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Monitors and thread context]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/X7GpEe9IAWo/" />
		<id>http://www.lybecker.com/blog/?p=361</id>
		<updated>2009-10-15T19:27:54Z</updated>
		<published>2009-10-15T19:27:54Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="Code fun" /><category scheme="http://www.lybecker.com/blog" term="dotNet" />		<summary type="html"><![CDATA[Running the below code will fail – why?


var syncRoot = new object();

Monitor.Enter(syncRoot);

ThreadPool.QueueUserWorkItem(x =&#62; Monitor.Exit(syncRoot));

It will throw a SynchronizationLockException with the message &#8220;Object synchronization method was called from an unsynchronized block of code.&#8221;
It is because System.Threading.Monitor requires the Enter and Exit methods must be executed on the same thread for the same synchronization object.
I did not [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/02/21/favor-structured-exception-handling/' rel='bookmark' title='Permanent Link: Favor structured exception handling'>Favor structured exception handling</a></li>
<li><a href='http://www.lybecker.com/blog/2007/04/11/strings-in-net/' rel='bookmark' title='Permanent Link: Strings in .Net'>Strings in .Net</a></li>
<li><a href='http://www.lybecker.com/blog/2007/01/15/a-simple-windows-communication-foundation-web-service/' rel='bookmark' title='Permanent Link: A simple Windows Communication Foundation Web Service'>A simple Windows Communication Foundation Web Service</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/10/15/monitors-and-thread-context/">&lt;p&gt;Running the below code will fail – why?&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;

var syncRoot = new object();

Monitor.Enter(syncRoot);

ThreadPool.QueueUserWorkItem(x =&amp;gt; Monitor.Exit(syncRoot));
&lt;/pre&gt;
&lt;p&gt;It will throw a SynchronizationLockException with the message &amp;#8220;Object synchronization method was called from an unsynchronized block of code.&amp;#8221;&lt;/p&gt;
&lt;p&gt;It is because System.Threading.Monitor requires the Enter and Exit methods must be executed on the same thread for the same synchronization object.&lt;/p&gt;
&lt;p&gt;I did not know that :-/&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/02/21/favor-structured-exception-handling/' rel='bookmark' title='Permanent Link: Favor structured exception handling'&gt;Favor structured exception handling&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/04/11/strings-in-net/' rel='bookmark' title='Permanent Link: Strings in .Net'&gt;Strings in .Net&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/01/15/a-simple-windows-communication-foundation-web-service/' rel='bookmark' title='Permanent Link: A simple Windows Communication Foundation Web Service'&gt;A simple Windows Communication Foundation Web Service&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/X7GpEe9IAWo" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/10/15/monitors-and-thread-context/#comments" thr:count="1" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/10/15/monitors-and-thread-context/feed/atom/" thr:count="1" />
		<thr:total>1</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/10/15/monitors-and-thread-context/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[New blog &#8211; NoTech]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/ZpUJ3lFolvQ/" />
		<id>http://www.lybecker.com/blog/?p=357</id>
		<updated>2009-10-14T06:24:34Z</updated>
		<published>2009-10-14T06:24:34Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Announcement" /><category scheme="http://www.lybecker.com/blog" term="SCRUM" />		<summary type="html"><![CDATA[A talented colleague of mine Thomas Schou-Moldt has started blogging about software development processes and methods. He is passionate about the subject and writes well.
The blog is in Danish and called NoTech.
Blog description:
Here I&#8217;ll share my opinions, joys and frustrations about software development and IT projects &#8211; both the good stories and horrendous experiences.


Related posts:Microsoft [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: Microsoft product launch 2008'>Microsoft product launch 2008</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/10/14/new-blog-notech/">&lt;p&gt;A talented colleague of mine Thomas Schou-Moldt has started blogging about software development processes and methods. He is passionate about the subject and writes well.&lt;/p&gt;
&lt;p&gt;The blog is in Danish and called &lt;a title="Thomas Schou-Moldt's blog - NoTech" href="http://it-notech.blogspot.com/"&gt;NoTech&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Blog description:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;Here I&amp;#8217;ll share my opinions, joys and frustrations about software development and IT projects &amp;#8211; both the good stories and horrendous experiences.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: Microsoft product launch 2008'&gt;Microsoft product launch 2008&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/ZpUJ3lFolvQ" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/10/14/new-blog-notech/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/10/14/new-blog-notech/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/10/14/new-blog-notech/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Amazon Virtual Private Cloud]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/CoCPNTRIcF0/" />
		<id>http://www.lybecker.com/blog/?p=349</id>
		<updated>2009-08-26T20:16:12Z</updated>
		<published>2009-08-26T20:16:12Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Cloud" /><category scheme="http://www.lybecker.com/blog" term="EC2" />		<summary type="html"><![CDATA[
If you are interested in cloud computing, but you never known how to adopt this new paradigm in your shop due to ignorance   I encourage you to look at the Amazon EC2 and related services.
One of the things that have kept me and properly many others from migrating our applications and services to [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-oletx/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with OleTx'>Configuring the DTC for WCF with OleTx</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/08/26/amazon-virtual-private-cloud/">&lt;p&gt;&lt;a href="http://www.lybecker.com/blog/wp-content/uploads/Amazon-AWS-logo.gif"&gt;&lt;img class="alignright size-full wp-image-350" title="Amazon AWS logo" src="http://www.lybecker.com/blog/wp-content/uploads/Amazon-AWS-logo.gif" alt="Amazon AWS logo" width="164" height="60" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you are interested in cloud computing, but you never known how to adopt this new paradigm in your shop due to ignorance &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /&gt;  I encourage you to look at the &lt;a title="Amazon EC2 site" href="http://aws.amazon.com/ec2/"&gt;Amazon EC2&lt;/a&gt; and &lt;a title="Amazon Web Services site" href="http://aws.amazon.com/"&gt;related services&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;One of the things that have kept me and properly many others from migrating our applications and services to the cloud has been due to the nature of most software requiring integration to legacy systems behind a company firewall.&lt;/p&gt;
&lt;p&gt;Amazon’s new service – &lt;a title="Amazon Virtual Private Cloud site" href="http://aws.amazon.com/vpc/"&gt;Amazon Virtual Private Cloud&lt;/a&gt; enables you to extend the company’s network to Amazon’s cloud via a secure VPN connection.&lt;/p&gt;
&lt;p&gt;Read more about this new service from Amazon on Werner Vogels&amp;#8217; article &lt;a title="Article: Seamlessly Extending the Data Center - Introducing Amazon Virtual Private Cloud" href="http://www.allthingsdistributed.com/2009/08/amazon_virtual_private_cloud.html"&gt;Seamlessly Extending the Data Center &amp;#8211; Introducing Amazon Virtual Private Cloud&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-oletx/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with OleTx'&gt;Configuring the DTC for WCF with OleTx&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/CoCPNTRIcF0" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/08/26/amazon-virtual-private-cloud/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/08/26/amazon-virtual-private-cloud/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/08/26/amazon-virtual-private-cloud/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Change Data Capture (CDC) in SQL Server 2008]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/H9hKO8FhWhI/" />
		<id>http://www.lybecker.com/blog/?p=344</id>
		<updated>2009-08-11T13:38:53Z</updated>
		<published>2009-08-11T10:46:42Z</published>
		<category scheme="http://www.lybecker.com/blog" term="SQL Server" /><category scheme="http://www.lybecker.com/blog" term="SQL Server 2008" />		<summary type="html"><![CDATA[I where planning to write a blog post about Change Data Capture (CDC) in SQL Server 2008, but then I stumbled upon Pinal Dave&#8217;s article Introduction to Change Data Capture (CDC) in SQL Server 2008.
It is a thorough overview of Change Data Capture (CDC).
MSDN reference for Change Data Capture (CDC).


Related posts:Transferring SQL Server logins
Scary SQL [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/' rel='bookmark' title='Permanent Link: Transferring SQL Server logins'>Transferring SQL Server logins</a></li>
<li><a href='http://www.lybecker.com/blog/2009/03/21/scary-sql-server-2005-2008-bug/' rel='bookmark' title='Permanent Link: Scary SQL Server 2005 &#038; 2008 bug'>Scary SQL Server 2005 &#038; 2008 bug</a></li>
<li><a href='http://www.lybecker.com/blog/2009/03/18/how-to-check-for-and-enable-read-committed-snapshot-isolation/' rel='bookmark' title='Permanent Link: How to check for and enable read committed snapshot isolation'>How to check for and enable read committed snapshot isolation</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/08/11/change-data-capture-cdc-in-sql-server-2008/">&lt;p&gt;I where planning to write a blog post about Change Data Capture (CDC) in SQL Server 2008, but then I stumbled upon Pinal Dave&amp;#8217;s article&lt;a title="Introduction to Change Data Capture (CDC) in SQL Server 2008" href="http://www.simple-talk.com/sql/learn-sql-server/introduction-to-change-data-capture-%28cdc%29-in-sql-server-2008/"&gt; Introduction to Change Data Capture (CDC) in SQL Server 2008&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;It is a thorough overview of Change Data Capture (CDC).&lt;/p&gt;
&lt;p&gt;&lt;a title="Change Data Capture on MSDN" href="http://msdn.microsoft.com/en-us/library/bb522489.aspx"&gt;MSDN reference for Change Data Capture (CDC)&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/' rel='bookmark' title='Permanent Link: Transferring SQL Server logins'&gt;Transferring SQL Server logins&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/03/21/scary-sql-server-2005-2008-bug/' rel='bookmark' title='Permanent Link: Scary SQL Server 2005 &amp;#038; 2008 bug'&gt;Scary SQL Server 2005 &amp;#038; 2008 bug&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/03/18/how-to-check-for-and-enable-read-committed-snapshot-isolation/' rel='bookmark' title='Permanent Link: How to check for and enable read committed snapshot isolation'&gt;How to check for and enable read committed snapshot isolation&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/H9hKO8FhWhI" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/08/11/change-data-capture-cdc-in-sql-server-2008/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/08/11/change-data-capture-cdc-in-sql-server-2008/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/08/11/change-data-capture-cdc-in-sql-server-2008/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[40+ Essential Front End Web Developer Cheat Sheets]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/c_mWESu3Hto/" />
		<id>http://www.lybecker.com/blog/?p=340</id>
		<updated>2009-06-23T06:32:21Z</updated>
		<published>2009-06-23T06:32:21Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Everyday coding" /><category scheme="http://www.lybecker.com/blog" term="Useful tools" /><category scheme="http://www.lybecker.com/blog" term="shortcut keys" />		<summary type="html"><![CDATA[tripwiremagazine.com has gathered a neat collection of cheat sheets for web developers.
I’m not a front end web developer, so I’m in desperate need of tools and cheat sheets that can help me look good, when venturing into the world of web design  


No related posts.


No related posts.]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/06/23/40-essential-front-end-web-developer-cheat-sheets/">&lt;p&gt;tripwiremagazine.com has gathered &lt;a title="40+ Essential Front End Web Developer Cheat Sheets article" href="http://www.tripwiremagazine.com/tools/cheat-sheets/front-end-web-developers-toolbox.html"&gt;a neat collection of cheat sheets for web developers&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I’m not a front end web developer, so I’m in desperate need of tools and cheat sheets that can help me look good, when venturing into the world of web design &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;


&lt;p&gt;No related posts.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/c_mWESu3Hto" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/06/23/40-essential-front-end-web-developer-cheat-sheets/#comments" thr:count="1" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/06/23/40-essential-front-end-web-developer-cheat-sheets/feed/atom/" thr:count="1" />
		<thr:total>1</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/06/23/40-essential-front-end-web-developer-cheat-sheets/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Visual Studio 2010 Beta 1 available]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/0-LaZeTg42E/" />
		<id>http://www.lybecker.com/blog/?p=336</id>
		<updated>2009-07-13T18:57:25Z</updated>
		<published>2009-05-21T09:44:46Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Announcement" /><category scheme="http://www.lybecker.com/blog" term="Visual Studio" />		<summary type="html"><![CDATA[
I can&#8217;t wait to see what Microsoft can get out of WPF with the new WPF-based IDE.
The Microsoft developer and platform evangelist Dan Fernandez has written an installation cheat sheet guide.
Update 13th July 2009: On the BCL Team Blog Justin Van Patten has written the blog post What&#8217;s New in the BCL in .NET 4 Beta 1.


Related [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2009/02/02/visual-studio-2008-shortcuts-features/' rel='bookmark' title='Permanent Link: Visual Studio 2008 shortcuts features'>Visual Studio 2008 shortcuts features</a></li>
<li><a href='http://www.lybecker.com/blog/2007/02/01/visual-studio-2005-shortcuts-features/' rel='bookmark' title='Permanent Link: Visual Studio 2005 shortcuts features'>Visual Studio 2005 shortcuts features</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/05/21/visual-studio-2010-beta-1-available/">&lt;p&gt;&lt;a href="http://www.lybecker.com/blog/wp-content/uploads/visualstudio2010beta1.png"&gt;&lt;img class="aligncenter size-full wp-image-337" title="Visual Studio 2010 Beta 1 screenshots" src="http://www.lybecker.com/blog/wp-content/uploads/visualstudio2010beta1.png" alt="Visual Studio 2010 Beta 1 screenshots" width="391" height="223" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I can&amp;#8217;t wait to see what Microsoft can get out of WPF with the new WPF-based IDE.&lt;/p&gt;
&lt;p&gt;The Microsoft developer and platform evangelist Dan Fernandez has written an &lt;a href="http://blogs.msdn.com/danielfe/archive/2009/05/20/visual-studio-2010-beta-1-cheat-sheet.aspx"&gt;installation cheat sheet guide&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Update 13th July 2009: On the BCL Team Blog Justin Van Patten has written the blog post &lt;a title="What's New in the BCL in .NET 4 Beta 1" href="http://blogs.msdn.com/bclteam/archive/2009/05/22/what-s-new-in-the-bcl-in-net-4-beta-1-justin-van-patten.aspx"&gt;What&amp;#8217;s New in the BCL in .NET 4 Beta 1&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/02/02/visual-studio-2008-shortcuts-features/' rel='bookmark' title='Permanent Link: Visual Studio 2008 shortcuts features'&gt;Visual Studio 2008 shortcuts features&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/02/01/visual-studio-2005-shortcuts-features/' rel='bookmark' title='Permanent Link: Visual Studio 2005 shortcuts features'&gt;Visual Studio 2005 shortcuts features&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/0-LaZeTg42E" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/05/21/visual-studio-2010-beta-1-available/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/05/21/visual-studio-2010-beta-1-available/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/05/21/visual-studio-2010-beta-1-available/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[How to view default values for a WCF binding]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/ENLZyaAXFdE/" />
		<id>http://www.lybecker.com/blog/?p=324</id>
		<updated>2009-04-23T20:31:27Z</updated>
		<published>2009-04-23T20:23:51Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="Useful tools" /><category scheme="http://www.lybecker.com/blog" term="WCF" /><category scheme="http://www.lybecker.com/blog" term="dotNet" /><category scheme="http://www.lybecker.com/blog" term="XML" />		<summary type="html"><![CDATA[… or create a custom binding from a build-in binding.
… or create an administrative XML-based configuration from an administrative programmatic configuration.
Below codes does all that:

// Specify the source binding
// - Programmatic binding
// - Administrative XML-based binding
// - Convert to custom binding

/* Programmatic binding */
var binding = new BasicHttpBinding();
binding.TransferMode = TransferMode.Streamed;
binding.MaxReceivedMessageSize = 10000;

/* Administrative XML-based binding [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/01/15/a-simple-windows-communication-foundation-web-service/' rel='bookmark' title='Permanent Link: A simple Windows Communication Foundation Web Service'>A simple Windows Communication Foundation Web Service</a></li>
<li><a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-oletx/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with OleTx'>Configuring the DTC for WCF with OleTx</a></li>
<li><a href='http://www.lybecker.com/blog/2007/01/18/building-a-windows-communication-foundation-client/' rel='bookmark' title='Permanent Link: Building a Windows Communication Foundation client'>Building a Windows Communication Foundation client</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/04/23/how-to-view-default-values-for-a-wcf-binding/">&lt;p&gt;… or create a custom binding from a build-in binding.&lt;br /&gt;
… or create an administrative XML-based configuration from an administrative programmatic configuration.&lt;/p&gt;
&lt;p&gt;Below codes does all that:&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
// Specify the source binding
// - Programmatic binding
// - Administrative XML-based binding
// - Convert to custom binding

/* Programmatic binding */
var binding = new BasicHttpBinding();
binding.TransferMode = TransferMode.Streamed;
binding.MaxReceivedMessageSize = 10000;

/* Administrative XML-based binding */
// var binding = new BasicHttpBinding(&amp;quot;basicHttp&amp;quot;);

/* Convert to custom binding */
// var wsBinding = new WSHttpBinding(&amp;quot;wsHttp&amp;quot;);
// var binding = new CustomBinding(wsBinding);

string outputConfigFile = &amp;quot;out.config&amp;quot;;

Configuration machineConfig = ConfigurationManager.OpenMachineConfiguration();

var fileMap = new ExeConfigurationFileMap();
fileMap.ExeConfigFilename = outputConfigFile;
fileMap.MachineConfigFilename = machineConfig.FilePath;

Configuration config = ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None);
config.NamespaceDeclared = true;

var scg = new ServiceContractGenerator(config);

string sectionName, configName;
scg.GenerateBinding(binding, out sectionName, out configName);
config.Save();
&lt;/pre&gt;
&lt;p&gt;The programmatic source binding will create a configuration file with all default values for the BasicHttpBinding except for TransferMode and MaxReceivedMessageSize attributes like so:&lt;/p&gt;
&lt;pre class="brush: xml"&gt;
&amp;lt;basichttpbinding&amp;gt;
    &amp;lt;binding name=&amp;quot;BasicHttpBinding&amp;quot;
             closeTimeout=&amp;quot;00:01:00&amp;quot;
             openTimeout=&amp;quot;00:01:00&amp;quot;
             receiveTimeout=&amp;quot;00:10:00&amp;quot;
             sendTimeout=&amp;quot;00:01:00&amp;quot;
             allowCookies=&amp;quot;false&amp;quot;
             bypassProxyOnLocal=&amp;quot;false&amp;quot;
             hostNameComparisonMode=&amp;quot;StrongWildcard&amp;quot;
             maxBufferSize=&amp;quot;65536&amp;quot;
             maxBufferPoolSize=&amp;quot;524288&amp;quot;
             maxReceivedMessageSize=&amp;quot;10000&amp;quot;
             messageEncoding=&amp;quot;Text&amp;quot;
             textEncoding=&amp;quot;utf-8&amp;quot;
             transferMode=&amp;quot;Streamed&amp;quot;
             useDefaultWebProxy=&amp;quot;true&amp;quot;&amp;gt;
        &amp;lt;readerquotas maxDepth=&amp;quot;32&amp;quot;
                      maxStringContentLength=&amp;quot;8192&amp;quot;
                      maxArrayLength=&amp;quot;16384&amp;quot;
                      maxBytesPerRead=&amp;quot;4096&amp;quot;
                      maxNameTableCharCount=&amp;quot;16384&amp;quot; /&amp;gt;
        &amp;lt;security mode=&amp;quot;None&amp;quot;&amp;gt;
            &amp;lt;transport clientCredentialType=&amp;quot;None&amp;quot;
                       proxyCredentialType=&amp;quot;None&amp;quot;
                       realm=&amp;quot;&amp;quot; /&amp;gt;
            &amp;lt;message clientCredentialType=&amp;quot;UserName&amp;quot;
                     algorithmSuite=&amp;quot;Default&amp;quot; /&amp;gt;
        &amp;lt;/security&amp;gt;
    &amp;lt;/binding&amp;gt;
&amp;lt;/basichttpbinding&amp;gt;
&lt;/pre&gt;
&lt;p&gt;I found this &lt;a title="Generate WCF config binding" href="http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/fcad2118-d7bc-4d23-84b2-1ac168afa1c8"&gt;tip by Brian McNamara on the MSDN WCF forum&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/01/15/a-simple-windows-communication-foundation-web-service/' rel='bookmark' title='Permanent Link: A simple Windows Communication Foundation Web Service'&gt;A simple Windows Communication Foundation Web Service&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-oletx/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with OleTx'&gt;Configuring the DTC for WCF with OleTx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/01/18/building-a-windows-communication-foundation-client/' rel='bookmark' title='Permanent Link: Building a Windows Communication Foundation client'&gt;Building a Windows Communication Foundation client&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/ENLZyaAXFdE" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/04/23/how-to-view-default-values-for-a-wcf-binding/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/04/23/how-to-view-default-values-for-a-wcf-binding/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/04/23/how-to-view-default-values-for-a-wcf-binding/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[World’s first electronic annual general meeting]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/CyTRIdbpZiM/" />
		<id>http://www.lybecker.com/blog/?p=314</id>
		<updated>2009-04-16T12:02:16Z</updated>
		<published>2009-04-16T11:52:19Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Announcement" />		<summary type="html"><![CDATA[Today I just witness the electronic annual general meeting for the investment company SparIndex. This is the first 100% electronic annual general meeting ever.
The stakes was high, especially for the system owner VP Securities as journalists and photographs wandered around the offices ready to report success or failure in the media.
My job as a technical [...]


No related posts.]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/04/16/world%e2%80%99s-first-electronic-annual-general-meeting/">&lt;p&gt;Today I just witness the electronic annual general meeting for the investment company &lt;a title="SparIndex homepage" href="http://www.sparindex.dk/"&gt;SparIndex&lt;/a&gt;. This is the first 100% electronic annual general meeting ever.&lt;/p&gt;
&lt;p&gt;The stakes was high, especially for the system owner &lt;a title="VP Securities homepage" href="http://www.vp.dk/"&gt;VP Securities&lt;/a&gt; as journalists and photographs wandered around the offices ready to report success or failure in the media.&lt;/p&gt;
&lt;p&gt;My job as a technical consultant, together with a handful of other techies, was to monitor the solution during the live annual general meeting. Our job was to prevent any technical glitches or in the event of a crash recover as fast as possible.&lt;/p&gt;
&lt;p&gt;The tension was high right up to the last minute before the premiere, but everything went smooth. &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;div id="attachment_315" class="wp-caption aligncenter" style="width: 560px"&gt;&lt;a href="http://www.lybecker.com/blog/wp-content/uploads/egf_screenshot.png"&gt;&lt;img class="size-large wp-image-315" title="eGF screenshot" src="http://www.lybecker.com/blog/wp-content/uploads/egf_screenshot-550x340.png" alt="Screenshot of the World’s first electronic annual general meeting" width="550" height="340" /&gt;&lt;/a&gt;&lt;p class="wp-caption-text"&gt;Screenshot of the World’s first electronic annual general meeting&lt;/p&gt;&lt;/div&gt;


&lt;p&gt;No related posts.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/CyTRIdbpZiM" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/04/16/world%e2%80%99s-first-electronic-annual-general-meeting/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/04/16/world%e2%80%99s-first-electronic-annual-general-meeting/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/04/16/world%e2%80%99s-first-electronic-annual-general-meeting/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Loooong running sql statement]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/Bp1BLfHmYQM/" />
		<id>http://www.lybecker.com/blog/?p=277</id>
		<updated>2009-04-06T10:39:29Z</updated>
		<published>2009-04-06T10:30:34Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Code fun" /><category scheme="http://www.lybecker.com/blog" term="SQL Server" />		<summary type="html"><![CDATA[
I was using SQL Server Profiler on a SQL Server 2005 Enterprise Edition looking for performance culprits, when I stumbled upon this very long running process.
I think this must be a world record.  
This statement has only used 16 milliseconds of CPU but it has been running for more than 500.000 years!


Related posts:Easy win [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2008/12/01/easy-win-index-candidates-on-sql-server-2005/' rel='bookmark' title='Permanent Link: Easy win &#8211; index candidates on SQL Server 2005'>Easy win &#8211; index candidates on SQL Server 2005</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/04/06/loooong-running-sql-statement/">&lt;p style="text-align: center;"&gt;&lt;a href="http://www.lybecker.com/blog/wp-content/uploads/sqlserverprofilerrenegate.jpg"&gt;&lt;img class="aligncenter size-large wp-image-278" title="Sql Server Profiler renegate statement" src="http://www.lybecker.com/blog/wp-content/uploads/sqlserverprofilerrenegate-1024x298.jpg" alt="Sql Server Profiler renegate statement" width="550" height="160" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I was using SQL Server Profiler on a SQL Server 2005 Enterprise Edition looking for performance culprits, when I stumbled upon this very long running process.&lt;/p&gt;
&lt;p&gt;I think this must be a world record. &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;This statement has only used 16 milliseconds of CPU but it has been running for more than 500.000 years!&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/12/01/easy-win-index-candidates-on-sql-server-2005/' rel='bookmark' title='Permanent Link: Easy win &amp;#8211; index candidates on SQL Server 2005'&gt;Easy win &amp;#8211; index candidates on SQL Server 2005&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/Bp1BLfHmYQM" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/04/06/loooong-running-sql-statement/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/04/06/loooong-running-sql-statement/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/04/06/loooong-running-sql-statement/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[In-flight entertainment running on Windows]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/gqsUHYCiAz4/" />
		<id>http://www.lybecker.com/blog/?p=286</id>
		<updated>2009-03-24T10:33:13Z</updated>
		<published>2009-03-24T10:33:13Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Announcement" />		<summary type="html"><![CDATA[

Recently when I was flying back to Europe from South Africa with Lufthansa on Airbus A340-600 the In-flight entertainment crashed just before takeoff. They had to restart the entire system. I could see the entire reload of the system including the initial download with 115K baud XModem protocol download.
Yikes! I hope that only non-vital systems [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2009/04/06/loooong-running-sql-statement/' rel='bookmark' title='Permanent Link: Loooong running sql statement'>Loooong running sql statement</a></li>
<li><a href='http://www.lybecker.com/blog/2007/01/15/a-simple-windows-communication-foundation-web-service/' rel='bookmark' title='Permanent Link: A simple Windows Communication Foundation Web Service'>A simple Windows Communication Foundation Web Service</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/03/24/in-flight-entertainment-running-on-windows/">&lt;p&gt;&lt;img class="aligncenter size-large wp-image-287" title="In-flight entertainment reboot" src="http://www.lybecker.com/blog/wp-content/uploads/inflight-entertainment-reboot-1024x768.jpg" alt="In-flight entertainment reboot" width="550" height="412" /&gt;&lt;/p&gt;
&lt;p style="text-align: center;"&gt;
&lt;p&gt;Recently when I was flying back to Europe from South Africa with Lufthansa on &lt;a title="Airbus A340-600 homepage" href="http://www.airbus.com/en/aircraftfamilies/a330a340/a340-600/"&gt;Airbus A340-600&lt;/a&gt; the In-flight entertainment crashed just before takeoff. They had to restart the entire system. I could see the entire reload of the system including the initial download with 115K baud &lt;a title="Wikipedia - XModem" href="http://en.wikipedia.org/wiki/XMODEM"&gt;XModem protocol&lt;/a&gt; download.&lt;/p&gt;
&lt;p&gt;Yikes! I hope that only non-vital systems are running Windows for an airliner. &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/04/06/loooong-running-sql-statement/' rel='bookmark' title='Permanent Link: Loooong running sql statement'&gt;Loooong running sql statement&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/01/15/a-simple-windows-communication-foundation-web-service/' rel='bookmark' title='Permanent Link: A simple Windows Communication Foundation Web Service'&gt;A simple Windows Communication Foundation Web Service&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/gqsUHYCiAz4" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/03/24/in-flight-entertainment-running-on-windows/#comments" thr:count="2" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/03/24/in-flight-entertainment-running-on-windows/feed/atom/" thr:count="2" />
		<thr:total>2</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/03/24/in-flight-entertainment-running-on-windows/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Scary SQL Server 2005 &amp; 2008 bug]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/fFO6ksatii0/" />
		<id>http://www.lybecker.com/blog/?p=281</id>
		<updated>2009-03-28T14:27:28Z</updated>
		<published>2009-03-21T07:40:00Z</published>
		<category scheme="http://www.lybecker.com/blog" term="SQL Server" />		<summary type="html"><![CDATA[Watch out when using @@IDENTITY and SCOPE_IDENTITY() in your applications. Below is a quote from a Microsoft SQL Server engineer.
&#8230; whenever a parallel query plan is generated @@IDENTITY and SCOPE_IDENTITY() are not being updated consistently and can&#8217;t be relied upon.
You can find more about the bug and workarounds at the SQL Server bug  report.
UPDATE 28MAR2009: [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2009/08/11/change-data-capture-cdc-in-sql-server-2008/' rel='bookmark' title='Permanent Link: Change Data Capture (CDC) in SQL Server 2008'>Change Data Capture (CDC) in SQL Server 2008</a></li>
<li><a href='http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/' rel='bookmark' title='Permanent Link: Transferring SQL Server logins'>Transferring SQL Server logins</a></li>
<li><a href='http://www.lybecker.com/blog/2008/12/01/easy-win-index-candidates-on-sql-server-2005/' rel='bookmark' title='Permanent Link: Easy win &#8211; index candidates on SQL Server 2005'>Easy win &#8211; index candidates on SQL Server 2005</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/03/21/scary-sql-server-2005-2008-bug/">&lt;p&gt;Watch out when using @@IDENTITY and SCOPE_IDENTITY() in your applications. Below is a quote from a Microsoft SQL Server engineer.&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&amp;#8230; whenever a parallel query plan is generated @@IDENTITY and SCOPE_IDENTITY() are not being updated consistently and can&amp;#8217;t be relied upon.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;You can find more about the bug and workarounds at the &lt;a title="SQL Server @@IDENTITY and SCOPE_IDENTITY() bug report" href="https://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=328811"&gt;SQL Server bug  report&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;UPDATE 28MAR2009: &lt;a title="SQL SERVER - 2008 - SCOPE_IDENTITY Bug with Multi Processor Parallel Plan and Solution" href="http://blog.sqlauthority.com/2009/03/24/sql-server-2008-scope_identity-bug-with-multi-processor-parallel-plan-and-solution/"&gt;Pinal Dave has a more detailed blog post about the bug with workaround&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/08/11/change-data-capture-cdc-in-sql-server-2008/' rel='bookmark' title='Permanent Link: Change Data Capture (CDC) in SQL Server 2008'&gt;Change Data Capture (CDC) in SQL Server 2008&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/' rel='bookmark' title='Permanent Link: Transferring SQL Server logins'&gt;Transferring SQL Server logins&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/12/01/easy-win-index-candidates-on-sql-server-2005/' rel='bookmark' title='Permanent Link: Easy win &amp;#8211; index candidates on SQL Server 2005'&gt;Easy win &amp;#8211; index candidates on SQL Server 2005&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/fFO6ksatii0" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/03/21/scary-sql-server-2005-2008-bug/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/03/21/scary-sql-server-2005-2008-bug/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/03/21/scary-sql-server-2005-2008-bug/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[ASP.Net MVC 1.0 released]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/lup7u8Zbv7I/" />
		<id>http://www.lybecker.com/blog/?p=269</id>
		<updated>2009-03-18T21:02:12Z</updated>
		<published>2009-03-18T15:51:17Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" />		<summary type="html"><![CDATA[I have been playing around with the ASP.NET MVC for a couple of month and cannot wait to start the first commercial project – hopefully next week  
Frameworks like the ASP.NET MVC, MVCContrib and jQuery has sparked a renewed interest in web development, which has been dormant for years.


No related posts.


No related posts.]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/03/18/aspnet-mvc-10-released/">&lt;p&gt;&lt;img class="alignright size-full wp-image-273" title="ASP.Net MVC" src="http://www.lybecker.com/blog/wp-content/uploads/aspnetmvc.jpg" alt="ASP.Net MVC" width="550" height="318" /&gt;I have been playing around with the ASP.NET MVC for a couple of month and cannot wait to start the first commercial project – hopefully next week &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;Frameworks like the &lt;a title="Download ASP.Net MVC 1.0" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=53289097-73ce-43bf-b6a6-35e00103cb4b&amp;amp;displaylang=en"&gt;ASP.NET MVC&lt;/a&gt;, &lt;a title="MVC Contrib homepage" href="http://www.codeplex.com/MVCContrib"&gt;MVCContrib&lt;/a&gt; and &lt;a title="jQuery homepage" href="http://jquery.com/"&gt;jQuery&lt;/a&gt; has sparked a renewed interest in web development, which has been dormant for years.&lt;/p&gt;


&lt;p&gt;No related posts.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/lup7u8Zbv7I" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/03/18/aspnet-mvc-10-released/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/03/18/aspnet-mvc-10-released/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/03/18/aspnet-mvc-10-released/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[How to check for and enable read committed snapshot isolation]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/1sgDjUzjsXg/" />
		<id>http://www.lybecker.com/blog/?p=264</id>
		<updated>2009-03-18T11:51:14Z</updated>
		<published>2009-03-18T11:51:14Z</published>
		<category scheme="http://www.lybecker.com/blog" term="SQL Server" /><category scheme="http://www.lybecker.com/blog" term="Transactions" />		<summary type="html"><![CDATA[Run the below query to see which databases that uses read committed snapshot isolation:

SELECT name, is_read_committed_snapshot_on FROM sys.databases

To enable it on a specific database run the below query:

ALTER DATABASE [&#60;databasename&#62;]
SET READ_COMMITTED_SNAPSHOT ON

As a developer I am in love with read committed snapshot isolation feature for SQL Server 2005+. Transactions can read and write simultaneously the [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/' rel='bookmark' title='Permanent Link: Transferring SQL Server logins'>Transferring SQL Server logins</a></li>
<li><a href='http://www.lybecker.com/blog/2008/08/21/disable-and-enable-all-database-constraints/' rel='bookmark' title='Permanent Link: Disable and enable all database constraints'>Disable and enable all database constraints</a></li>
<li><a href='http://www.lybecker.com/blog/2009/08/11/change-data-capture-cdc-in-sql-server-2008/' rel='bookmark' title='Permanent Link: Change Data Capture (CDC) in SQL Server 2008'>Change Data Capture (CDC) in SQL Server 2008</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/03/18/how-to-check-for-and-enable-read-committed-snapshot-isolation/">&lt;p&gt;Run the below query to see which databases that uses read committed snapshot isolation:&lt;/p&gt;
&lt;pre class="brush: sql"&gt;
SELECT name, is_read_committed_snapshot_on FROM sys.databases
&lt;/pre&gt;
&lt;p&gt;To enable it on a specific database run the below query:&lt;/p&gt;
&lt;pre class="brush: sql"&gt;
ALTER DATABASE [&amp;lt;databasename&amp;gt;]
SET READ_COMMITTED_SNAPSHOT ON
&lt;/pre&gt;
&lt;p&gt;As a developer I am in love with read committed snapshot isolation feature for SQL Server 2005+. Transactions can read and write simultaneously the same piece of data – no read/write contention due to row versioning.&lt;/p&gt;
&lt;p&gt;Normal conflicting scenarios:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Simultaneously write and read of the same data.&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Read committed isolation:  The reader will wait for the writer to release the exclusive lock.&lt;/li&gt;
&lt;li&gt;Read committed snapshot isolation:  The reader will not block, but receive the latest committed data (latest row version).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Simultaneously writes of the same data.&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Read committed isolation: The second writer will wait until the first transaction completes because of an exclusive lock.&lt;/li&gt;
&lt;li&gt;Read committed snapshot isolation: The first transaction committing will “win” and if the second tries to commit, it will abort and error will be raised.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In effect this is optimistic concurrency control without coding anything. Read more about read committed snapshot isolation and isolation levels in the &lt;a title="Isolation Levels in SQL Server 2005 on SQLServerPerformance.com" href="http://www.sql-server-performance.com/articles/dba/isolation_levels_2005_p1.aspx"&gt;Isolation Levels in SQL Server 2005&lt;/a&gt; article.&lt;/databasename&gt;&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/' rel='bookmark' title='Permanent Link: Transferring SQL Server logins'&gt;Transferring SQL Server logins&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/08/21/disable-and-enable-all-database-constraints/' rel='bookmark' title='Permanent Link: Disable and enable all database constraints'&gt;Disable and enable all database constraints&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/08/11/change-data-capture-cdc-in-sql-server-2008/' rel='bookmark' title='Permanent Link: Change Data Capture (CDC) in SQL Server 2008'&gt;Change Data Capture (CDC) in SQL Server 2008&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/1sgDjUzjsXg" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/03/18/how-to-check-for-and-enable-read-committed-snapshot-isolation/#comments" thr:count="1" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/03/18/how-to-check-for-and-enable-read-committed-snapshot-isolation/feed/atom/" thr:count="1" />
		<thr:total>1</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/03/18/how-to-check-for-and-enable-read-committed-snapshot-isolation/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Handcrafting the WCF client]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/Eyi4TR4sbMM/" />
		<id>http://www.lybecker.com/blog/?p=225</id>
		<updated>2009-03-08T15:58:47Z</updated>
		<published>2009-03-05T19:52:22Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="Visual Studio" /><category scheme="http://www.lybecker.com/blog" term="WCF" /><category scheme="http://www.lybecker.com/blog" term="dotNet" />		<summary type="html"><![CDATA[Two years ago I wrote an article Building a Windows Communication Foundation client, describing three ways of creating WCF clients. I did not mention the fourth one, as I did not know at the time. Now I am older and wiser  
The four ways of creating a WCF client are:

Visual Studio’s &#8220;Add Service&#8221; reference
Service [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/01/18/building-a-windows-communication-foundation-client/' rel='bookmark' title='Permanent Link: Building a Windows Communication Foundation client'>Building a Windows Communication Foundation client</a></li>
<li><a href='http://www.lybecker.com/blog/2007/01/15/a-simple-windows-communication-foundation-web-service/' rel='bookmark' title='Permanent Link: A simple Windows Communication Foundation Web Service'>A simple Windows Communication Foundation Web Service</a></li>
<li><a href='http://www.lybecker.com/blog/2007/04/30/wcf-sessions-and-reliable-messaging/' rel='bookmark' title='Permanent Link: WCF Sessions and Reliable Messaging'>WCF Sessions and Reliable Messaging</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/03/05/handcrafting-the-wcf-client/">&lt;p&gt;Two years ago I wrote an article &lt;a href="/blog/2007/01/18/building-a-windows-communication-foundation-client/"&gt;Building a Windows Communication Foundation client&lt;/a&gt;, describing three ways of creating WCF clients. I did not mention the fourth one, as I did not know at the time. Now I am older and wiser &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;The four ways of creating a WCF client are:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Visual Studio’s &amp;#8220;Add Service&amp;#8221; reference&lt;/li&gt;
&lt;li&gt;Service Model Metadata Utility Tool (SvcUtil.exe) command line tool&lt;/li&gt;
&lt;li&gt;Dynamic proxy with ChannelFactory&lt;tchannel&gt;&lt;/tchannel&gt;&lt;/li&gt;
&lt;li&gt;Handcrafting the WCF client&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The last two options are only viable for WCF to WCF implementations where you either have control of both service and client or the service provider supplies a .Net assembly. Because both of them require the service contract aka the .Net interface marked with ServiceContractAttribute and OperationContractAttribute.&lt;/p&gt;
&lt;p&gt;Anybody that has tried the “Add Service” reference in Visual Studio knows it is broken. First of all it generates an enormous amount of files, even for the simplest service contract.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.lybecker.com/blog/wp-content/uploads/addservicereferencegeneratedfiles.png"&gt;&lt;img class="aligncenter size-full wp-image-228" title="Vistual Studio Add Service reference generated files" src="http://www.lybecker.com/blog/wp-content/uploads/addservicereferencegeneratedfiles.png" alt="" width="474" height="139" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Secondly it sometimes corrupts the state of the generated files, so you have to remove the reference and then add it again.. Just try to &lt;a href="http://www.google.com/search?q=%22Add+Service+reference%22+not+working"&gt;google it&lt;/a&gt; and you will find many frustrated developers. Do not use it!&lt;/p&gt;
&lt;p&gt;The SvcUtil.exe is better and has a vast &lt;a href="http://msdn.microsoft.com/en-us/library/aa347733.aspx"&gt;number of options&lt;/a&gt;. This is the preferred option for non .Net services or where the service contract interface is not available.&lt;/p&gt;
&lt;p&gt;The dynamic proxy with ChannelFactory&lt;tchannel&gt; is useful, but be aware that the interface returned does not implement IDisposable, but the implementation does. See below:&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
var factory = new ChannelFactory&amp;lt;ihelloworldservice&amp;gt;(&amp;quot;myEndPoint&amp;quot;);

IHelloWorldService proxy = factory.CreateChannel();

using (proxy as IDisposable)
{
   MessageBox.Show(proxy.HelloWorld());
}
&lt;/pre&gt;
&lt;p&gt;Finally the handcrafted version – the one I want to talk about. Writing the WCF client by hand is fairly easy – it requires the implementation to inherit from ClienBase&lt;tchannel&gt; and implementing the service contract interface. Below is first a simple service contract IHelloWorldService:&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
[ServiceContract(Namespace = &amp;quot;www.lybecker.com/blog/HelloWorldService&amp;quot;)]
public interface IHelloWorldService
{
   [OperationContract]
   string HelloWorld();
}
&lt;/pre&gt;
&lt;p&gt;Next the handcrafted WCF client with constructors and service contract interface implementation:&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
public class HelloWorldClient : ClientBase&amp;lt;ihelloworldservice&amp;gt;, IHelloWorldService
{
   public HelloWorldClient()
   { }

   public HelloWorldClient(string configurationName) : base(configurationName)
   { }

   public HelloWorldClient(Binding binding, EndpointAddress address) : base(binding, address)
   { }

   public string HelloWorld()
   {
      return Channel.HelloWorld();
   }
}
&lt;/pre&gt;
&lt;p&gt;That’s it. &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;Now you have full control of the WCF client implementation.&lt;/p&gt;
&lt;p&gt;Download the sample application &lt;a href="http://www.lybecker.com/blog/wp-content/uploads/helloworldwcfwithhandcraftedclient.zip"&gt;Hello World WCF clients including a handcrafted version&lt;/a&gt;&lt;/ihelloworldservice&gt;&lt;/tchannel&gt;&lt;/ihelloworldservice&gt;&lt;/tchannel&gt;&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/01/18/building-a-windows-communication-foundation-client/' rel='bookmark' title='Permanent Link: Building a Windows Communication Foundation client'&gt;Building a Windows Communication Foundation client&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/01/15/a-simple-windows-communication-foundation-web-service/' rel='bookmark' title='Permanent Link: A simple Windows Communication Foundation Web Service'&gt;A simple Windows Communication Foundation Web Service&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/04/30/wcf-sessions-and-reliable-messaging/' rel='bookmark' title='Permanent Link: WCF Sessions and Reliable Messaging'&gt;WCF Sessions and Reliable Messaging&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/Eyi4TR4sbMM" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/03/05/handcrafting-the-wcf-client/#comments" thr:count="6" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/03/05/handcrafting-the-wcf-client/feed/atom/" thr:count="6" />
		<thr:total>6</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/03/05/handcrafting-the-wcf-client/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Visiting Microsoft in Johannesburg, South Africa]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/oxGddNNLZGM/" />
		<id>http://www.lybecker.com/blog/?p=219</id>
		<updated>2009-02-11T20:54:48Z</updated>
		<published>2009-02-11T20:53:16Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="Announcement" /><category scheme="http://www.lybecker.com/blog" term="dotNet" />		<summary type="html"><![CDATA[I live and work in the suburbs of Copenhagen in Denmark, but I’m currently in South Africa on business. While I’m here I might as well visit Microsoft South Africa – I did that today. I attended a presentation of the .Net services by Juval Löwy.

Microsoft South Africa is situated in a nice and fairly [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2008/03/16/my-presentation-at-the-microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: My presentation at the Microsoft product launch 2008'>My presentation at the Microsoft product launch 2008</a></li>
<li><a href='http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: Microsoft product launch 2008'>Microsoft product launch 2008</a></li>
<li><a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-oletx/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with OleTx'>Configuring the DTC for WCF with OleTx</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/02/11/visiting-microsoft-in-johannesburg-south-africa/">&lt;p&gt;I live and work in the suburbs of Copenhagen in Denmark, but I’m currently in South Africa on business. While I’m here I might as well visit Microsoft South Africa – I did that today. I attended a presentation of the &lt;a href="http://www.microsoft.com/azure/netservices.mspx"&gt;.Net services&lt;/a&gt; by Juval Löwy.&lt;/p&gt;
&lt;p&gt;&lt;img class="alignnone size-full wp-image-221" title="Microsoft South Africa Building" src="http://www.lybecker.com/blog/wp-content/uploads/microsoftsouthafricabuilding.jpg" alt="" width="500" height="375" /&gt;&lt;/p&gt;
&lt;p&gt;Microsoft South Africa is situated in a nice and fairly new building, as you can see on the picture above.&lt;/p&gt;
&lt;p&gt;I was amazed about the level of security – first I had to cleared by the security guards before entering the parking lot. This is not uncommon in South Africa, but very uncommon in Denmark.&lt;/p&gt;
&lt;p&gt;&lt;img class="alignnone size-full wp-image-222" title="Microsoft South Africa Security Barriers in Reception" src="http://www.lybecker.com/blog/wp-content/uploads/microsoftsouthafricareception.jpg" alt="" width="500" height="336" /&gt;&lt;/p&gt;
&lt;p&gt;Inside in the reception the security check barriers prevent unauthorized people to enter.&lt;/p&gt;
&lt;p&gt;When I finally was granted access to the presentation, Microsoft served sodas, pizza and beer!&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/03/16/my-presentation-at-the-microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: My presentation at the Microsoft product launch 2008'&gt;My presentation at the Microsoft product launch 2008&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: Microsoft product launch 2008'&gt;Microsoft product launch 2008&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-oletx/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with OleTx'&gt;Configuring the DTC for WCF with OleTx&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/oxGddNNLZGM" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/02/11/visiting-microsoft-in-johannesburg-south-africa/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/02/11/visiting-microsoft-in-johannesburg-south-africa/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/02/11/visiting-microsoft-in-johannesburg-south-africa/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Visual Studio 2008 shortcuts features]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/BrBg6_2GoGU/" />
		<id>http://www.lybecker.com/blog/?p=212</id>
		<updated>2009-02-02T16:18:08Z</updated>
		<published>2009-02-02T16:14:41Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Useful tools" /><category scheme="http://www.lybecker.com/blog" term="Visual Studio" /><category scheme="http://www.lybecker.com/blog" term="shortcut keys" />		<summary type="html"><![CDATA[Two years ago I wrote an article about the shortcut features in Visual Studio 2005. So I thought, why not write one for Visual Studio 2008.
I am a big fan of shortcuts &#8211; it increases productivity and ergonomically better than using the mouse all the time.
There is a large arsenal of shortcuts not only for [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/02/01/visual-studio-2005-shortcuts-features/' rel='bookmark' title='Permanent Link: Visual Studio 2005 shortcuts features'>Visual Studio 2005 shortcuts features</a></li>
<li><a href='http://www.lybecker.com/blog/2009/05/21/visual-studio-2010-beta-1-available/' rel='bookmark' title='Permanent Link: Visual Studio 2010 Beta 1 available'>Visual Studio 2010 Beta 1 available</a></li>
<li><a href='http://www.lybecker.com/blog/2008/01/17/net-framework-library-source-code-now-available/' rel='bookmark' title='Permanent Link: .NET Framework Library Source Code now available'>.NET Framework Library Source Code now available</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/02/02/visual-studio-2008-shortcuts-features/">&lt;p&gt;Two years ago I wrote an article about the &lt;a href="http://www.lybecker.com/blog/2007/02/01/visual-studio-2005-shortcuts-features/"&gt;shortcut features in Visual Studio 2005&lt;/a&gt;. So I thought, why not write one for Visual Studio 2008.&lt;/p&gt;
&lt;p&gt;I am a big fan of shortcuts &amp;#8211; it increases productivity and ergonomically better than using the mouse all the time.&lt;/p&gt;
&lt;p&gt;There is a large arsenal of shortcuts not only for Visual Studio, but also for the add-ins like ReSharper. Most developer forgets the basic ones in Windows besides the cut and paste shortcuts. But they do provide a huge productivity boost. Take a look at this list – how many of these shortcuts do you know and use?&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://support.microsoft.com/kb/126449"&gt;Keyboard shortcuts for Windows&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=E5F902A8-5BB5-4CC6-907E-472809749973&amp;amp;displaylang=en"&gt;C# Visual Studio 2008 Default Keyboard Layout&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=255B8CF1-F6BD-4B55-BB42-DD1A69315833&amp;amp;displaylang=en"&gt;Visual Base 2008 Default Keyboard Layout&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jetbrains.com/resharper/docs/ReSharper40DefaultKeymap.pdf"&gt;ReSharper 4.x Default Keyboard Layout&lt;br /&gt;
&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/02/01/visual-studio-2005-shortcuts-features/' rel='bookmark' title='Permanent Link: Visual Studio 2005 shortcuts features'&gt;Visual Studio 2005 shortcuts features&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/05/21/visual-studio-2010-beta-1-available/' rel='bookmark' title='Permanent Link: Visual Studio 2010 Beta 1 available'&gt;Visual Studio 2010 Beta 1 available&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/01/17/net-framework-library-source-code-now-available/' rel='bookmark' title='Permanent Link: .NET Framework Library Source Code now available'&gt;.NET Framework Library Source Code now available&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/BrBg6_2GoGU" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/02/02/visual-studio-2008-shortcuts-features/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/02/02/visual-studio-2008-shortcuts-features/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/02/02/visual-studio-2008-shortcuts-features/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[SQL Server 2008 System Views poster]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/iprihlldjOo/" />
		<id>http://www.lybecker.com/blog/?p=210</id>
		<updated>2009-02-02T16:17:40Z</updated>
		<published>2009-02-01T19:10:38Z</published>
		<category scheme="http://www.lybecker.com/blog" term="SQL Server" /><category scheme="http://www.lybecker.com/blog" term="Useful tools" />		<summary type="html"><![CDATA[Microsoft has released a poster for download, where you can see all the system views for SQL Server 2008 and the relationships between them.
Microsoft also released the system views poster for SQL Server 2005 a couple of years ago.
You need a huge printer/plotter to print these&#8230;


Related posts:Reuse in SQL Server 2008 Integration Services
Scary SQL Server [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2009/10/22/reuse-in-sql-server-2008-integration-services/' rel='bookmark' title='Permanent Link: Reuse in SQL Server 2008 Integration Services'>Reuse in SQL Server 2008 Integration Services</a></li>
<li><a href='http://www.lybecker.com/blog/2009/03/21/scary-sql-server-2005-2008-bug/' rel='bookmark' title='Permanent Link: Scary SQL Server 2005 &#038; 2008 bug'>Scary SQL Server 2005 &#038; 2008 bug</a></li>
<li><a href='http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/' rel='bookmark' title='Permanent Link: Transferring SQL Server logins'>Transferring SQL Server logins</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2009/02/01/sql-server-2008-system-views-poster/">&lt;p&gt;Microsoft has released a poster for download, where you can see all the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=531c53e7-8a2a-4375-8f2f-5d799aa67b5c&amp;amp;displaylang=en"&gt;system views for SQL Server 2008&lt;/a&gt; and the relationships between them.&lt;/p&gt;
&lt;p&gt;Microsoft also released the &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=2EC9E842-40BE-4321-9B56-92FD3860FB32&amp;amp;displaylang=en"&gt;system views poster for SQL Server 2005&lt;/a&gt; a couple of years ago.&lt;/p&gt;
&lt;p&gt;You need a huge printer/plotter to print these&amp;#8230;&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/10/22/reuse-in-sql-server-2008-integration-services/' rel='bookmark' title='Permanent Link: Reuse in SQL Server 2008 Integration Services'&gt;Reuse in SQL Server 2008 Integration Services&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/03/21/scary-sql-server-2005-2008-bug/' rel='bookmark' title='Permanent Link: Scary SQL Server 2005 &amp;#038; 2008 bug'&gt;Scary SQL Server 2005 &amp;#038; 2008 bug&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/' rel='bookmark' title='Permanent Link: Transferring SQL Server logins'&gt;Transferring SQL Server logins&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/iprihlldjOo" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2009/02/01/sql-server-2008-system-views-poster/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2009/02/01/sql-server-2008-system-views-poster/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2009/02/01/sql-server-2008-system-views-poster/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Easy win &#8211; index candidates on SQL Server 2005]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/0t16EhmTfAk/" />
		<id>http://www.lybecker.com/blog/?p=180</id>
		<updated>2008-12-01T07:44:43Z</updated>
		<published>2008-12-01T07:43:10Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Everyday coding" /><category scheme="http://www.lybecker.com/blog" term="SQL Server" /><category scheme="http://www.lybecker.com/blog" term="Useful tools" />		<summary type="html"><![CDATA[Below is my real life story telling how easy it can be to find index candidates if you use your tools.
This weekend we deployed a new version of a medium/large solution to the production environment for one of our customers. Normally this is not a big issue, as we are always prepared to roll back [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2008/11/15/sql-server-2008-microsoft-isv-partner-events-presentations/' rel='bookmark' title='Permanent Link: SQL Server 2008 Microsoft ISV Partner events presentations'>SQL Server 2008 Microsoft ISV Partner events presentations</a></li>
<li><a href='http://www.lybecker.com/blog/2009/02/01/sql-server-2008-system-views-poster/' rel='bookmark' title='Permanent Link: SQL Server 2008 System Views poster'>SQL Server 2008 System Views poster</a></li>
<li><a href='http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/' rel='bookmark' title='Permanent Link: Transferring SQL Server logins'>Transferring SQL Server logins</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2008/12/01/easy-win-index-candidates-on-sql-server-2005/">&lt;p&gt;Below is my real life story telling how easy it can be to find index candidates if you use your tools.&lt;/p&gt;
&lt;p&gt;This weekend we deployed a new version of a medium/large solution to the production environment for one of our customers. Normally this is not a big issue, as we are always prepared to roll back to the previous version &amp;#8211; the one currently in production. The deployment and configuration processes are well-prepared and highly automated to minimize faults and late-night-bug-hunting-frenzy.&lt;/p&gt;
&lt;p&gt;After the deployment is complete we smoke test the setup to make sure that it is configured correctly and all is sound.&lt;/p&gt;
&lt;p&gt;This weekend after the successful deployment the smoke test failed miserably. We received TimeOutExceptions all over. It was coming from the user repository service.&lt;/p&gt;
&lt;p&gt;We decided to investigate a little before the decision of aborting the deployment of the new version and therefore rolling back to the previous version.&lt;/p&gt;
&lt;p&gt;The steps to resolve the issue is what I want to share with you.&lt;/p&gt;
&lt;p&gt;A quick look in the source repository showed that almost no changes to the user repository service – none that could cause TimeOutExceptions.&lt;/p&gt;
&lt;p&gt;With the SQL Server Profiler it was easy to spot the cause of the exception.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.lybecker.com/blog/wp-content/uploads/sqlserverprofilertrace.png"&gt;&lt;img class="alignnone size-full wp-image-182" title="SQL Server Profiler trace - Easy to spot culprit" src="http://www.lybecker.com/blog/wp-content/uploads/sqlserverprofilertrace.png" alt="" width="500" height="293" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This simple select statement was isolated and copied into the Management Studio to view the Actual Execution Plan. The execution plan did show much, but by execution the below statement which instructs the SQL Server not to execute the Transact-SQL  statements. Instead, SQL Server returns detailed information about how the statements are going to be executed in the form of a well-defined XML document.&lt;/p&gt;
&lt;pre class="brush: sql"&gt;
SET SHOWPLAN_XML ON
&lt;/pre&gt;
&lt;p&gt;The SQL Server will include loads in information and one of these are suggested indexes which you will not see with the graphical execution plan in Management Studio. Look for the MissingIndex elements:&lt;/p&gt;
&lt;pre class="brush: xml"&gt;
&amp;lt;missingindexes&amp;gt;
  &amp;lt;missingindexgroup Impact=&amp;quot;96.6222&amp;quot;&amp;gt;
    &amp;lt;missingindex Database=&amp;quot;[DOIPEI]&amp;quot; Schema=&amp;quot;[dbo]&amp;quot; Table=&amp;quot;[OrganisationalUnit_Stack]&amp;quot;&amp;gt;
      &amp;lt;columngroup Usage=&amp;quot;EQUALITY&amp;quot;&amp;gt;
        &amp;lt;column Name=&amp;quot;[org_pkid]&amp;quot; ColumnId=&amp;quot;2&amp;quot; /&amp;gt;
      &amp;lt;/columngroup&amp;gt;
    &amp;lt;/missingindex&amp;gt;
  &amp;lt;/missingindexgroup&amp;gt;
&amp;lt;/missingindexes&amp;gt;
&lt;/pre&gt;
&lt;p&gt;By creating this single index on [DOIPEI].[dbo]. [OrganisationalUnit_Stack]. [org_pkid] the TimeOutExceptions disappeared, as the query no longer took minutes but milliseconds.&lt;/p&gt;
&lt;p&gt;We were able to continue and successfully deploy the new version of the solution with only minimal disruption and a delay of only half an hour. Why the index where missing is still a mystery.&lt;/p&gt;
&lt;p&gt;It makes all the difference in the world if you know the capabilities of your tools at hand.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/11/15/sql-server-2008-microsoft-isv-partner-events-presentations/' rel='bookmark' title='Permanent Link: SQL Server 2008 Microsoft ISV Partner events presentations'&gt;SQL Server 2008 Microsoft ISV Partner events presentations&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/02/01/sql-server-2008-system-views-poster/' rel='bookmark' title='Permanent Link: SQL Server 2008 System Views poster'&gt;SQL Server 2008 System Views poster&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/' rel='bookmark' title='Permanent Link: Transferring SQL Server logins'&gt;Transferring SQL Server logins&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/0t16EhmTfAk" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2008/12/01/easy-win-index-candidates-on-sql-server-2005/#comments" thr:count="2" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2008/12/01/easy-win-index-candidates-on-sql-server-2005/feed/atom/" thr:count="2" />
		<thr:total>2</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2008/12/01/easy-win-index-candidates-on-sql-server-2005/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[.Net 3.5 installation WTF]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/OgsZlIV5jS0/" />
		<id>http://www.lybecker.com/blog/?p=173</id>
		<updated>2008-11-27T19:24:11Z</updated>
		<published>2008-11-27T19:21:36Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="dotNet" />		<summary type="html"><![CDATA[Installing .Net 3.5 SP1 can be difficult, especially when below screen appears  

A colleague of mine stumbled upon this today. You cannot install SP1 because the SP1 install setup process is running  
I just had to share it with you.


Related posts:Computer game ilities
Loooong running sql statement



Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/02/05/computer-game-ilities/' rel='bookmark' title='Permanent Link: Computer game ilities'>Computer game ilities</a></li>
<li><a href='http://www.lybecker.com/blog/2009/04/06/loooong-running-sql-statement/' rel='bookmark' title='Permanent Link: Loooong running sql statement'>Loooong running sql statement</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2008/11/27/net-35-installation-wtf/">&lt;p&gt;Installing .Net 3.5 SP1 can be difficult, especially when below screen appears &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.lybecker.com/blog/wp-content/uploads/installationdotnet3_5sp1.png"&gt;&lt;img class="aligncenter size-full wp-image-174" title="Install .Net 3.5 SP1 issue" src="http://www.lybecker.com/blog/wp-content/uploads/installationdotnet3_5sp1.png" alt="" width="500" height="472" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;A colleague of mine stumbled upon this today. You cannot install SP1 because the SP1 install setup process is running &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;I just had to share it with you.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/02/05/computer-game-ilities/' rel='bookmark' title='Permanent Link: Computer game ilities'&gt;Computer game ilities&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/04/06/loooong-running-sql-statement/' rel='bookmark' title='Permanent Link: Loooong running sql statement'&gt;Loooong running sql statement&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/OgsZlIV5jS0" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2008/11/27/net-35-installation-wtf/#comments" thr:count="1" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2008/11/27/net-35-installation-wtf/feed/atom/" thr:count="1" />
		<thr:total>1</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2008/11/27/net-35-installation-wtf/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Serialization in .Net 3.5 SP1]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/I9J1GPQTYMM/" />
		<id>http://www.lybecker.com/blog/?p=165</id>
		<updated>2008-11-23T07:17:55Z</updated>
		<published>2008-11-22T17:22:45Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="WCF" /><category scheme="http://www.lybecker.com/blog" term="dotNet" />		<summary type="html"><![CDATA[In .Net 3.5 SP1 it is now possible to serialize any object that has a default constructor without decorating it with [DataContract] or [Serializable].
Developers have these choices now when serializing objects:

Implicit serialization – requires public default constructor and only serialize public read/write fields
Use the [Serializable] attribute
Use [DataContract] and [DataMember] attributes
Implement the ISerializable interface

I must say, [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2008/10/12/net-debugger-visualizers/' rel='bookmark' title='Permanent Link: .Net debugger visualizers'>.Net debugger visualizers</a></li>
<li><a href='http://www.lybecker.com/blog/2009/03/05/handcrafting-the-wcf-client/' rel='bookmark' title='Permanent Link: Handcrafting the WCF client'>Handcrafting the WCF client</a></li>
<li><a href='http://www.lybecker.com/blog/2007/01/23/how-does-reliable-messaging-work/' rel='bookmark' title='Permanent Link: How does Reliable Messaging work?'>How does Reliable Messaging work?</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2008/11/22/serialization-in-net-35-sp1/">&lt;p&gt;In .Net 3.5 SP1 it is now possible to serialize any object that has a default constructor without decorating it with [DataContract] or [Serializable].&lt;/p&gt;
&lt;p&gt;Developers have these choices now when serializing objects:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Implicit serialization – requires public default constructor and only serialize public read/write fields&lt;/li&gt;
&lt;li&gt;Use the [Serializable] attribute&lt;/li&gt;
&lt;li&gt;Use [DataContract] and [DataMember] attributes&lt;/li&gt;
&lt;li&gt;Implement the ISerializable interface&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I must say, that I’m not keen on this new feature. I prefer explicit serialization to implicit serialization. I predict that implicit serialization of entire object graphs will cause performance problems for many .Net developers in the years to come. This could also be a good thing as I am a consultant  &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;Aaron Skonnard has a more detailed blog post about the &lt;a href="http://www.pluralsight.com/community/blogs/aaron/archive/2008/05/13/50934.aspx"&gt;new serialization features in .Net 3.5 SP1&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/10/12/net-debugger-visualizers/' rel='bookmark' title='Permanent Link: .Net debugger visualizers'&gt;.Net debugger visualizers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/03/05/handcrafting-the-wcf-client/' rel='bookmark' title='Permanent Link: Handcrafting the WCF client'&gt;Handcrafting the WCF client&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/01/23/how-does-reliable-messaging-work/' rel='bookmark' title='Permanent Link: How does Reliable Messaging work?'&gt;How does Reliable Messaging work?&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/I9J1GPQTYMM" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2008/11/22/serialization-in-net-35-sp1/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2008/11/22/serialization-in-net-35-sp1/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2008/11/22/serialization-in-net-35-sp1/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[SQL Server 2008 Microsoft ISV Partner events presentations]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/1UFTtiyqemw/" />
		<id>http://www.lybecker.com/blog/?p=163</id>
		<updated>2008-11-15T07:23:32Z</updated>
		<published>2008-11-15T07:23:32Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Conference" /><category scheme="http://www.lybecker.com/blog" term="SQL Server" />		<summary type="html"><![CDATA[This week I hosted two sessions at two different events for Microsoft Denmark. One at Radisson SAS Scandinavia Hotel in Århus and one in Microsoft Denmark’s headquarter in Hellerup.
It was fun at the feedback was very positive. The best part was during the breaks with great edifying technical discussions. All the slides are available at [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2008/03/16/my-presentation-at-the-microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: My presentation at the Microsoft product launch 2008'>My presentation at the Microsoft product launch 2008</a></li>
<li><a href='http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: Microsoft product launch 2008'>Microsoft product launch 2008</a></li>
<li><a href='http://www.lybecker.com/blog/2007/03/14/great-conference/' rel='bookmark' title='Permanent Link: Great conference'>Great conference</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2008/11/15/sql-server-2008-microsoft-isv-partner-events-presentations/">&lt;p&gt;This week I hosted two sessions at two different events for Microsoft Denmark. One at Radisson SAS Scandinavia Hotel in Århus and one in Microsoft Denmark’s headquarter in Hellerup.&lt;/p&gt;
&lt;p&gt;It was fun at the feedback was very positive. The best part was during the breaks with great edifying technical discussions. All the slides are available at &lt;a href="http://www.miracleas.dk/index.asp?page=168&amp;amp;page2=549"&gt;Miracle&amp;#8217;s homepage.&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/03/16/my-presentation-at-the-microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: My presentation at the Microsoft product launch 2008'&gt;My presentation at the Microsoft product launch 2008&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: Microsoft product launch 2008'&gt;Microsoft product launch 2008&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/03/14/great-conference/' rel='bookmark' title='Permanent Link: Great conference'&gt;Great conference&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/1UFTtiyqemw" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2008/11/15/sql-server-2008-microsoft-isv-partner-events-presentations/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2008/11/15/sql-server-2008-microsoft-isv-partner-events-presentations/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2008/11/15/sql-server-2008-microsoft-isv-partner-events-presentations/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[.Net debugger visualizers]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/r2lWy35ppw4/" />
		<id>http://www.lybecker.com/blog/?p=138</id>
		<updated>2008-10-12T15:35:28Z</updated>
		<published>2008-10-12T15:35:28Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="Everyday coding" /><category scheme="http://www.lybecker.com/blog" term="WCF" /><category scheme="http://www.lybecker.com/blog" term="dotNet" /><category scheme="http://www.lybecker.com/blog" term="Visual Studio" />		<summary type="html"><![CDATA[The .Net framework 2.0 gave some great tools for debugging &#8211; they are a great help when writing code.
Some of these features are the DebuggerDisplay and DebuggerStepThrough attributes. I seldom use any of them, as I prefer to just overriding the ToString method instead of using the DebuggerDisplay attribute. This makes it easy to instrument [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-oletx/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with OleTx'>Configuring the DTC for WCF with OleTx</a></li>
<li><a href='http://www.lybecker.com/blog/2009/04/23/how-to-view-default-values-for-a-wcf-binding/' rel='bookmark' title='Permanent Link: How to view default values for a WCF binding'>How to view default values for a WCF binding</a></li>
<li><a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-ws-atomictransaction/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with WS-AtomicTransaction'>Configuring the DTC for WCF with WS-AtomicTransaction</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2008/10/12/net-debugger-visualizers/">&lt;p&gt;The .Net framework 2.0 gave some great tools for debugging &amp;#8211; they are a great help when writing code.&lt;/p&gt;
&lt;p&gt;Some of these &lt;a href="http://msdn.microsoft.com/en-us/library/ms228992.aspx"&gt;features&lt;/a&gt; are the &lt;a href="http://msdn.microsoft.com/en-us/library/x810d419.aspx"&gt;&lt;code&gt;DebuggerDisplay&lt;/code&gt;&lt;/a&gt; and &lt;a href="http://msdn.microsoft.com/en-us/library/system.diagnostics.debuggerstepthroughattribute.aspx"&gt;&lt;code&gt;DebuggerStepThrough&lt;/code&gt;&lt;/a&gt; attributes. I seldom use any of them, as I prefer to just overriding the &lt;code&gt;ToString&lt;/code&gt; method instead of using the &lt;code&gt;DebuggerDisplay&lt;/code&gt; attribute. This makes it easy to instrument the code too, as I can reuse the &lt;code&gt;ToString&lt;/code&gt; method implementation for tracing.&lt;/p&gt;
&lt;p&gt;Another feature is the ability to develop custom debugger visualizers. They enable smart developers to &lt;a href="http://msdn.microsoft.com/en-us/library/ms228992.aspx"&gt;build their own&lt;/a&gt;. I find some really useful, especially the &lt;a href="http://www.codeplex.com/WCFVisualizer"&gt;WCF visualizer&lt;/a&gt;. But there a many &amp;#8211; check out &lt;a href="http://weblogs.asp.net/vardi/archive/2008/05/31/net-debugger-visualizers-list.aspx"&gt;this list of custom .Net debugger visualizers&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;These small enhancements make it so easy to get an overview of the current state, instead of inspecting properties.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-oletx/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with OleTx'&gt;Configuring the DTC for WCF with OleTx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/04/23/how-to-view-default-values-for-a-wcf-binding/' rel='bookmark' title='Permanent Link: How to view default values for a WCF binding'&gt;How to view default values for a WCF binding&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-ws-atomictransaction/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with WS-AtomicTransaction'&gt;Configuring the DTC for WCF with WS-AtomicTransaction&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/r2lWy35ppw4" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2008/10/12/net-debugger-visualizers/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2008/10/12/net-debugger-visualizers/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2008/10/12/net-debugger-visualizers/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Disable and enable all database constraints]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/7fKwGnF7GgU/" />
		<id>http://www.lybecker.com/blog/?p=64</id>
		<updated>2009-01-03T17:41:01Z</updated>
		<published>2008-08-21T19:38:36Z</published>
		<category scheme="http://www.lybecker.com/blog" term="SQL Server" />		<summary type="html"><![CDATA[We (my colleagues at Miracle and I) are currently in the process of upgrading a customer’s solutions. One of task is migrating 100 gigs of data into an existing database schema. This can easily become a tedious task and can take considerable calendar time. Therefore we decided to disable all constraints on the database, move [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2009/03/18/how-to-check-for-and-enable-read-committed-snapshot-isolation/' rel='bookmark' title='Permanent Link: How to check for and enable read committed snapshot isolation'>How to check for and enable read committed snapshot isolation</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2008/08/21/disable-and-enable-all-database-constraints/">&lt;p&gt;We (my colleagues at Miracle and I) are currently in the process of upgrading a customer’s solutions. One of task is migrating 100 gigs of data into an existing database schema. This can easily become a tedious task and can take considerable calendar time. Therefore we decided to disable all constraints on the database, move the data and then enable them again, as we know the data integrity is sound.&lt;br /&gt;
We could have written a script that gets all the constraints in the database and generates a SQL script, but there is an easier way…&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
-- Disable all Constraints&lt;br /&gt;
exec sp_MSforeachtable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;--Enable all Constraints&lt;br /&gt;
exec sp_MSforeachtable 'ALTER TABLE ? CHECK CONSTRAINT ALL'&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;That&amp;#8217;s easy&amp;#8230; &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_razz.gif' alt=':-P' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;I found this on the Internet somewhere &amp;#8211; the sp_MSforeachtable procedure is nowhere to be found in books online.&lt;br /&gt;
You can check if foreign keys and check constrains are disabled via the sys.foreign_keys  and sys.check_constraints views.&lt;/p&gt;
&lt;p&gt;Another obvious triviality in our situation is disabling and enabling triggers – that is easy too:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;-- Disable all Triggers&lt;br /&gt;
exec sp_MSforeachtable 'ALTER TABLE ? DISABLE TRIGGER ALL'&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;-- Enable all Triggers&lt;br /&gt;
exec sp_MSforeachtable 'ALTER TABLE ? ENABLE TRIGGER ALL'&lt;/code&gt;&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/03/18/how-to-check-for-and-enable-read-committed-snapshot-isolation/' rel='bookmark' title='Permanent Link: How to check for and enable read committed snapshot isolation'&gt;How to check for and enable read committed snapshot isolation&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/7fKwGnF7GgU" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2008/08/21/disable-and-enable-all-database-constraints/#comments" thr:count="4" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2008/08/21/disable-and-enable-all-database-constraints/feed/atom/" thr:count="4" />
		<thr:total>4</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2008/08/21/disable-and-enable-all-database-constraints/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[WCF certified]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/D-cUdL4zx3E/" />
		<id>http://www.lybecker.com/blog/2008/04/20/wcf-certified/</id>
		<updated>2008-10-17T19:17:46Z</updated>
		<published>2008-04-20T06:43:19Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="Announcement" /><category scheme="http://www.lybecker.com/blog" term="WCF" /><category scheme="http://www.lybecker.com/blog" term="Certification" />		<summary type="html"><![CDATA[I just got word from Microsoft, that I passed the Microsoft Certified Technology Specialist: .NET Framework 3.5, Windows Communication Foundation Applications certification (70-503).
It was not easy, as the preparation guide was incomplete and I didn’t have time to properly prepare for the test. I took the beta exam in January, but had totally forgotten about [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/05/23/scrum-certified-master/' rel='bookmark' title='Permanent Link: SCRUM Certified Master'>SCRUM Certified Master</a></li>
<li><a href='http://www.lybecker.com/blog/2007/03/14/great-conference/' rel='bookmark' title='Permanent Link: Great conference'>Great conference</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2008/04/20/wcf-certified/">&lt;p&gt;I just got word from Microsoft, that I passed the Microsoft Certified Technology Specialist: .NET Framework 3.5, Windows Communication Foundation Applications certification (70-503).&lt;/p&gt;
&lt;p&gt;It was not easy, as the preparation guide was incomplete and I didn’t have time to properly prepare for the test. I took the beta exam in January, but had totally forgotten about it.&lt;/p&gt;
&lt;p&gt;I am proud to be one of the first to pass this exam &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/05/23/scrum-certified-master/' rel='bookmark' title='Permanent Link: SCRUM Certified Master'&gt;SCRUM Certified Master&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/03/14/great-conference/' rel='bookmark' title='Permanent Link: Great conference'&gt;Great conference&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/D-cUdL4zx3E" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2008/04/20/wcf-certified/#comments" thr:count="2" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2008/04/20/wcf-certified/feed/atom/" thr:count="2" />
		<thr:total>2</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2008/04/20/wcf-certified/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[32-bit WCF memory allocation trouble]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/-e1-Sz2hEOg/" />
		<id>http://www.lybecker.com/blog/2008/03/18/32-bit-wcf-trouble/</id>
		<updated>2008-10-05T10:30:21Z</updated>
		<published>2008-03-18T21:15:38Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="WCF" />		<summary type="html"><![CDATA[With a 32 bit platform a process can only address 2 GB of memory by default on windows. For most applications this is not an issue. But today I really messed up – OOM (OutOfMemoryException) exceptions all over  
I added loads of test data to our 32 bit development servers and tried to run [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/' rel='bookmark' title='Permanent Link: Transferring SQL Server logins'>Transferring SQL Server logins</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2008/03/18/32-bit-wcf-trouble/">&lt;p&gt;With a 32 bit platform a process can only address 2 GB of memory by default on windows. For most applications this is not an issue. But today I really messed up – OOM (OutOfMemoryException) exceptions all over &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;I added loads of test data to our 32 bit development servers and tried to run a development utility. It failed and failed and failed with OOM exceptions. The cause was actually quite simple as the application tried to allocate more than 500 MB of consecutive memory.&lt;/p&gt;
&lt;p&gt;The utility is a console app and the search index is a WCF server and they communicate via TCP buffered binary format (netTCPBinding).&lt;/p&gt;
&lt;p&gt;The console utility retrieved all the unique identifiers in the search index (based on Lucene.Net) to compare these with the records in the SQL Server, to see if everything is in sync. The number of unique identifiers where now in the millions, but that was not the root cause. The process consumed twice the memory, because I use buffered transfer mode instead of streamed.&lt;/p&gt;
&lt;p&gt;Buffered transfer mode serializes everything before sending the message from the server to the client. So in effect our WCF server not only had the huge array of unique identifiers but also a serialized version. It never got the stage where it could send the message.&lt;/p&gt;
&lt;p&gt;Moral of the story – use streamed transfer mode with large messages.&lt;/p&gt;
&lt;p&gt;As this is a development utility, I sidestepped &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;I enabled the &lt;a title="3GB setup on Windows" href="http://technet.microsoft.com/en-us/library/bb124810.aspx"&gt;3GB switch&lt;/a&gt; allowing processes to allocate up to 3 GB of memory, and tried again. Same result: OOM.&lt;/p&gt;
&lt;p&gt;I figured that the .Net might have a limitation and perhaps a switch to enable larger memory allocation. Apparently there is a small program called &lt;a title="Microsoft COFF Binary File Editor on MSDN" href="http://msdn2.microsoft.com/en-us/library/xd3shwhf%28VS.80%29.aspx"&gt;Microsoft COFF Binary File Editor&lt;/a&gt; (EDITBIN.EXE) that modifies Common Object File Format (&lt;a title="COFF explained on Wikipedia" href="http://en.wikipedia.org/wiki/COFF"&gt;COFF&lt;/a&gt;) binary files. This binary file editor can enable applications to address more than 2 GB of memory with the &lt;a title="EDITBIN LARGEADDRESSAWARE option on MSDN" href="http://msdn2.microsoft.com/en-us/library/203797te(VS.80).aspx"&gt;LARGEADDRESSAWARE&lt;/a&gt; option.&lt;/p&gt;
&lt;p&gt;The steps to enable LARGEADDRESSAWARE for an application:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Start Visual Studio Command Prompt or run VSVARS32.BAT (in the visual studio subdirectory: Common7\Tools) which in effect does the same things.&lt;/li&gt;
&lt;li&gt;Run editbin /LARGEADDRESSAWARE &amp;lt;yourApp&amp;gt;.exe&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Tomorrow I will change the implementation to use streamed transfer mode. Promise &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;&lt;img src="http://www.lybecker.com/blog/wp-content/simpsonsalwaysusestreamedtransfermode.gif" alt="simpsonsalwaysusestreamedtransfermode.gif" /&gt;&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2010/03/01/transferring-sql-server-logins/' rel='bookmark' title='Permanent Link: Transferring SQL Server logins'&gt;Transferring SQL Server logins&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/-e1-Sz2hEOg" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2008/03/18/32-bit-wcf-trouble/#comments" thr:count="3" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2008/03/18/32-bit-wcf-trouble/feed/atom/" thr:count="3" />
		<thr:total>3</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2008/03/18/32-bit-wcf-trouble/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Do you know how many types there are in the .Net Framework?]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/jN9ama3RtKo/" />
		<id>http://www.lybecker.com/blog/2008/03/18/do-you-know-how-many-types-there-are-in-the-net-framework/</id>
		<updated>2008-10-05T10:29:42Z</updated>
		<published>2008-03-18T07:40:02Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" />		<summary type="html"><![CDATA[
The answer is not 42   , but 11.417. I will never be able to grasp the vast capabilities of the .Net Framework.
With more than 100.000 member it’s no wonder that I am addicted IntelliSense.
You can get more details on Brad Abrams blog entry.


Related posts:.NET Framework Library Source Code now available
Microsoft releasing the .Net [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2008/01/17/net-framework-library-source-code-now-available/' rel='bookmark' title='Permanent Link: .NET Framework Library Source Code now available'>.NET Framework Library Source Code now available</a></li>
<li><a href='http://www.lybecker.com/blog/2007/10/04/microsoft-releasing-the-net-framework-source-code/' rel='bookmark' title='Permanent Link: Microsoft releasing the .Net framework source code'>Microsoft releasing the .Net framework source code</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2008/03/18/do-you-know-how-many-types-there-are-in-the-net-framework/">&lt;p style="text-align: center"&gt;&lt;img src="http://www.lybecker.com/blog/wp-content/typesindotnetframework.png" alt="Number of types in the .Net Framework" /&gt;&lt;/p&gt;
&lt;p&gt;The answer is not 42 &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt;  , but 11.417. I will never be able to grasp the vast capabilities of the .Net Framework.&lt;/p&gt;
&lt;p&gt;With more than 100.000 member it’s no wonder that I am addicted &lt;a title="Wikipedia on IntelliSense" href="http://en.wikipedia.org/wiki/IntelliSense"&gt;IntelliSense&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;You can get more details on &lt;a title="Brad Abrams - Number of Types in the .NET Framework" href="http://blogs.msdn.com/brada/archive/2008/03/17/number-of-types-in-the-net-framework.aspx"&gt;Brad Abrams blog entry&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/01/17/net-framework-library-source-code-now-available/' rel='bookmark' title='Permanent Link: .NET Framework Library Source Code now available'&gt;.NET Framework Library Source Code now available&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/10/04/microsoft-releasing-the-net-framework-source-code/' rel='bookmark' title='Permanent Link: Microsoft releasing the .Net framework source code'&gt;Microsoft releasing the .Net framework source code&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/jN9ama3RtKo" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2008/03/18/do-you-know-how-many-types-there-are-in-the-net-framework/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2008/03/18/do-you-know-how-many-types-there-are-in-the-net-framework/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2008/03/18/do-you-know-how-many-types-there-are-in-the-net-framework/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[My presentation at the Microsoft product launch 2008]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/d1On07aDzjk/" />
		<id>http://www.lybecker.com/blog/2008/03/16/my-presentation-at-the-microsoft-product-launch-2008/</id>
		<updated>2008-10-05T10:29:23Z</updated>
		<published>2008-03-16T08:33:23Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="SQL Server" />		<summary type="html"><![CDATA[
All the presentations from the product launch are recorded as webcasts. They are available here (it’s in Danish). Later this year the webcast will be moved to TechNet.
I spoke about long overdue features in SQL Server for developers.

See the webcast
Download the presentation and demo 

Some of the webcasts has poor sound quality (not mine  [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: Microsoft product launch 2008'>Microsoft product launch 2008</a></li>
<li><a href='http://www.lybecker.com/blog/2008/11/15/sql-server-2008-microsoft-isv-partner-events-presentations/' rel='bookmark' title='Permanent Link: SQL Server 2008 Microsoft ISV Partner events presentations'>SQL Server 2008 Microsoft ISV Partner events presentations</a></li>
<li><a href='http://www.lybecker.com/blog/2009/02/11/visiting-microsoft-in-johannesburg-south-africa/' rel='bookmark' title='Permanent Link: Visiting Microsoft in Johannesburg, South Africa'>Visiting Microsoft in Johannesburg, South Africa</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2008/03/16/my-presentation-at-the-microsoft-product-launch-2008/">&lt;p&gt;&lt;a title="SQL Server 2008 - Long overdue features for developers webcast" href="http://www.microsoft.com/danmark/technet/detskerher/default_webcast.aspx?id=115"&gt;&lt;img src="http://www.lybecker.com/blog/wp-content/sqlserver2008presentation.jpg" alt="SQL Server 2008 - long overdue features for developers presentation" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;All the presentations from the product launch are recorded as webcasts. They are available &lt;a title="Microsoft LAUNCH det sker {her}" href="http://www.microsoft.com/danmark/technet/detskerher/default.aspx"&gt;here&lt;/a&gt; (it’s in Danish). Later this year the webcast will be moved to TechNet.&lt;/p&gt;
&lt;p&gt;I spoke about &lt;em&gt;long overdue features in SQL Server for developers&lt;/em&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;See the &lt;a title="SQL Server 2008 - Long overdue features for developers webcast" href="http://www.microsoft.com/danmark/technet/detskerher/default_webcast.aspx?id=115"&gt;webcast&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a title="Download the presentation and demo" href="http://www.lybecker.com/blog/wp-content/sql-server-2008-long-overdue-features-for-developers.zip"&gt;Download the presentation and demo&lt;/a&gt; &lt;a title="My presentation slides and demo solution" href="http://www.lybecker.com/blog/wp-content/sql-server-2008-long-overdue-features-for-developers.zip"&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Some of the webcasts has poor sound quality (not mine &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /&gt;  ), which is a shame.&lt;/p&gt;
&lt;p&gt;The webcasts where recorded at Microsoft. They used &lt;a title="Camtasio Studio site" href="http://www.techsmith.com/camtasia.asp"&gt;Camtasia Studio&lt;/a&gt; which I highly recommend as it is easy, intuitive and have some great features.&lt;/p&gt;
&lt;p&gt;I guess the poor sound quality is due to lack of proper microphones and the recording was done in a regular meeting room. They used the build-in microphone on my laptop. Microsoft Denmark should have better sound equipment and a recording studio if they are serious about webcasts.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: Microsoft product launch 2008'&gt;Microsoft product launch 2008&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/11/15/sql-server-2008-microsoft-isv-partner-events-presentations/' rel='bookmark' title='Permanent Link: SQL Server 2008 Microsoft ISV Partner events presentations'&gt;SQL Server 2008 Microsoft ISV Partner events presentations&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/02/11/visiting-microsoft-in-johannesburg-south-africa/' rel='bookmark' title='Permanent Link: Visiting Microsoft in Johannesburg, South Africa'&gt;Visiting Microsoft in Johannesburg, South Africa&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/d1On07aDzjk" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2008/03/16/my-presentation-at-the-microsoft-product-launch-2008/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2008/03/16/my-presentation-at-the-microsoft-product-launch-2008/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2008/03/16/my-presentation-at-the-microsoft-product-launch-2008/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Microsoft product launch 2008]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/d0gWItu_jTc/" />
		<id>http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/</id>
		<updated>2008-10-05T10:28:55Z</updated>
		<published>2008-02-16T15:42:45Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="SQL Server" /><category scheme="http://www.lybecker.com/blog" term="WCF" /><category scheme="http://www.lybecker.com/blog" term="ws-*" />		<summary type="html"><![CDATA[
I am speaking at the launch of Windows Server 2008, Visual Studio 2008 and SQL Server 2008 in Denmark February 28th. It will be an online launch – meaning that you can watch in comfort of your personal development sphere  
As it is a Danish event and we Danes speak Danish – the event [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2008/03/16/my-presentation-at-the-microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: My presentation at the Microsoft product launch 2008'>My presentation at the Microsoft product launch 2008</a></li>
<li><a href='http://www.lybecker.com/blog/2007/02/21/sql-server-open-world/' rel='bookmark' title='Permanent Link: SQL Server Open World'>SQL Server Open World</a></li>
<li><a href='http://www.lybecker.com/blog/2008/03/18/32-bit-wcf-trouble/' rel='bookmark' title='Permanent Link: 32-bit WCF memory allocation trouble'>32-bit WCF memory allocation trouble</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/">&lt;p style="text-align: center"&gt;&lt;img src="http://www.lybecker.com/blog/wp-content/mslaunch2008.jpg" alt="Microsoft product launch 2008" /&gt;&lt;/p&gt;
&lt;p&gt;I am speaking at the launch of Windows Server 2008, Visual Studio 2008 and SQL Server 2008 in Denmark February 28th. It will be an online launch – meaning that you can watch in comfort of your personal development sphere &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;As it is a Danish event and we Danes speak Danish – the event will be in Danish &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;You can sign-up &lt;a title="Microsoft Denmark launch event sign-up" href="http://www.microsoft.com/danmark/technet/detskerher/default.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/03/16/my-presentation-at-the-microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: My presentation at the Microsoft product launch 2008'&gt;My presentation at the Microsoft product launch 2008&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/02/21/sql-server-open-world/' rel='bookmark' title='Permanent Link: SQL Server Open World'&gt;SQL Server Open World&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/03/18/32-bit-wcf-trouble/' rel='bookmark' title='Permanent Link: 32-bit WCF memory allocation trouble'&gt;32-bit WCF memory allocation trouble&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/d0gWItu_jTc" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[.NET Framework Library Source Code now available]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/N-_11agQBpM/" />
		<id>http://www.lybecker.com/blog/2008/01/17/net-framework-library-source-code-now-available/</id>
		<updated>2008-10-05T10:28:27Z</updated>
		<published>2008-01-17T07:52:13Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" />		<summary type="html"><![CDATA[As I blogged about a couple of months ago, Microsoft will release the .Net Framework source code – but only for sneak peaking.
This is now a reality. Only a limited subset of the libraries, but more is to come in the future.
This is the list of what is currently available:

.NET Base Class Libraries (including System, [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/10/04/microsoft-releasing-the-net-framework-source-code/' rel='bookmark' title='Permanent Link: Microsoft releasing the .Net framework source code'>Microsoft releasing the .Net framework source code</a></li>
<li><a href='http://www.lybecker.com/blog/2009/02/11/visiting-microsoft-in-johannesburg-south-africa/' rel='bookmark' title='Permanent Link: Visiting Microsoft in Johannesburg, South Africa'>Visiting Microsoft in Johannesburg, South Africa</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2008/01/17/net-framework-library-source-code-now-available/">&lt;p&gt;As I &lt;a title="Anders Lybecker's blog" href="http://www.lybecker.com/blog/2007/10/04/microsoft-releasing-the-net-framework-source-code/"&gt;blogged&lt;/a&gt; about a couple of months ago, Microsoft will release the .Net Framework source code – but only for sneak peaking.&lt;/p&gt;
&lt;p&gt;This is now a reality. Only a limited subset of the libraries, but more is to come in the future.&lt;/p&gt;
&lt;p&gt;This is the list of what is currently available:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;.NET Base Class Libraries (including System, System.CodeDom, System.Collections, System.ComponentModel, System.Diagnostics, System.Drawing, System.Globalization, System.IO, System.Net, System.Reflection, System.Runtime, System.Security, System.Text, System.Threading, etc).&lt;/li&gt;
&lt;li&gt;ASP.NET (System.Web, System.Web.Extensions)&lt;/li&gt;
&lt;li&gt;Windows Forms (System.Windows.Forms)&lt;/li&gt;
&lt;li&gt;Windows Presentation Foundation (System.Windows)&lt;/li&gt;
&lt;li&gt;ADO.NET and XML (System.Data and System.Xml)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To enable this feature, you need to setup Visual Studio 2008 – &lt;a title="Configuring Visual Studio to Debug .NET Framework Source Code" href="http://blogs.msdn.com/sburke/archive/2008/01/16/configuring-visual-studio-to-debug-net-framework-source-code.aspx"&gt;here&lt;/a&gt; is a guide.&lt;/p&gt;
&lt;p&gt;You can read more on &lt;a title=" .NET Framework Library Source Code now available" href="http://weblogs.asp.net/scottgu/archive/2008/01/16/net-framework-library-source-code-now-available.aspx"&gt;Scott Guthrie’s blog&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/10/04/microsoft-releasing-the-net-framework-source-code/' rel='bookmark' title='Permanent Link: Microsoft releasing the .Net framework source code'&gt;Microsoft releasing the .Net framework source code&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/02/11/visiting-microsoft-in-johannesburg-south-africa/' rel='bookmark' title='Permanent Link: Visiting Microsoft in Johannesburg, South Africa'&gt;Visiting Microsoft in Johannesburg, South Africa&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/N-_11agQBpM" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2008/01/17/net-framework-library-source-code-now-available/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2008/01/17/net-framework-library-source-code-now-available/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2008/01/17/net-framework-library-source-code-now-available/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Victoria is One Year Old]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/M8TsIng6ZMk/" />
		<id>http://www.lybecker.com/blog/2007/12/30/victoria-is-one-year-old/</id>
		<updated>2008-10-17T19:16:29Z</updated>
		<published>2007-12-30T19:24:42Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Announcement" /><category scheme="http://www.lybecker.com/blog" term="Victoria" />		<summary type="html"><![CDATA[
At her birthday celebration family and friends came by with greetings and gifts.

Incidentally Victoria took her first steps alone with a baby carrier at the morning of her birthday. She was proud &#8211; as was her father who quickly grabbed the camera and took this shot  


Related posts:New blog &#8211; NoTech
Microsoft product launch 2008



Related posts:<ol><li><a href='http://www.lybecker.com/blog/2009/10/14/new-blog-notech/' rel='bookmark' title='Permanent Link: New blog &#8211; NoTech'>New blog &#8211; NoTech</a></li>
<li><a href='http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: Microsoft product launch 2008'>Microsoft product launch 2008</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2007/12/30/victoria-is-one-year-old/">&lt;p style="text-align: center"&gt;&lt;img src="http://www.lybecker.com/blog/wp-content/victoriaopeninggifts.jpg" alt="Victoria opening gifts" /&gt;&lt;/p&gt;
&lt;p&gt;At her birthday celebration family and friends came by with greetings and gifts.&lt;/p&gt;
&lt;p style="text-align: center"&gt;&lt;img src="http://www.lybecker.com/blog/wp-content/victoriawithbabycarrier.jpg" alt="Victoria’s first steps with a baby carrier" /&gt;&lt;/p&gt;
&lt;p&gt;Incidentally Victoria took her first steps alone with a baby carrier at the morning of her birthday. She was proud &amp;#8211; as was her father who quickly grabbed the camera and took this shot &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/10/14/new-blog-notech/' rel='bookmark' title='Permanent Link: New blog &amp;#8211; NoTech'&gt;New blog &amp;#8211; NoTech&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: Microsoft product launch 2008'&gt;Microsoft product launch 2008&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/M8TsIng6ZMk" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2007/12/30/victoria-is-one-year-old/#comments" thr:count="2" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2007/12/30/victoria-is-one-year-old/feed/atom/" thr:count="2" />
		<thr:total>2</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2007/12/30/victoria-is-one-year-old/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Free SQL Server tools]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/C4ZiDAmX0kU/" />
		<id>http://www.lybecker.com/blog/2007/11/23/free-sql-server-tools/</id>
		<updated>2008-10-05T10:27:26Z</updated>
		<published>2007-11-23T09:13:44Z</published>
		<category scheme="http://www.lybecker.com/blog" term="SQL Server" /><category scheme="http://www.lybecker.com/blog" term="Useful tools" />		<summary type="html"><![CDATA[I just found this list of free SQL Server tools that I want to share with you.
I use some of these already, but will check out the others too.


Related posts:Easy win &#8211; index candidates on SQL Server 2005
SQL Server 2008 System Views poster



Related posts:<ol><li><a href='http://www.lybecker.com/blog/2008/12/01/easy-win-index-candidates-on-sql-server-2005/' rel='bookmark' title='Permanent Link: Easy win &#8211; index candidates on SQL Server 2005'>Easy win &#8211; index candidates on SQL Server 2005</a></li>
<li><a href='http://www.lybecker.com/blog/2009/02/01/sql-server-2008-system-views-poster/' rel='bookmark' title='Permanent Link: SQL Server 2008 System Views poster'>SQL Server 2008 System Views poster</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2007/11/23/free-sql-server-tools/">&lt;p&gt;I just found &lt;a title="Free SQL Server tools that might make your life a little easier" href="http://weblogs.sqlteam.com/mladenp/archive/2007/11/20/Free-SQL-Server-tools-that-might-make-your-life-a.aspx"&gt;this list&lt;/a&gt; of free SQL Server tools that I want to share with you.&lt;/p&gt;
&lt;p&gt;I use some of these already, but will check out the others too.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/12/01/easy-win-index-candidates-on-sql-server-2005/' rel='bookmark' title='Permanent Link: Easy win &amp;#8211; index candidates on SQL Server 2005'&gt;Easy win &amp;#8211; index candidates on SQL Server 2005&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/02/01/sql-server-2008-system-views-poster/' rel='bookmark' title='Permanent Link: SQL Server 2008 System Views poster'&gt;SQL Server 2008 System Views poster&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/C4ZiDAmX0kU" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2007/11/23/free-sql-server-tools/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2007/11/23/free-sql-server-tools/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2007/11/23/free-sql-server-tools/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Microsoft releasing the .Net framework source code]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/DuXruIZk80s/" />
		<id>http://www.lybecker.com/blog/2007/10/04/microsoft-releasing-the-net-framework-source-code/</id>
		<updated>2009-01-03T17:41:46Z</updated>
		<published>2007-10-04T16:29:18Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="dotNet" />		<summary type="html"><![CDATA[But only for sneak peaking.
Read more on Scott Guthrie&#8217;s blog.


Related posts:.NET Framework Library Source Code now available



Related posts:<ol><li><a href='http://www.lybecker.com/blog/2008/01/17/net-framework-library-source-code-now-available/' rel='bookmark' title='Permanent Link: .NET Framework Library Source Code now available'>.NET Framework Library Source Code now available</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2007/10/04/microsoft-releasing-the-net-framework-source-code/">&lt;p class="MsoNormal"&gt;But only for sneak peaking.&lt;/p&gt;
&lt;p class="MsoNormal"&gt;Read more on &lt;a title="Schott Guthrie's blog" href="http://weblogs.asp.net/scottgu/archive/2007/10/03/releasing-the-source-code-for-the-net-framework-libraries.aspx"&gt;Scott Guthrie&amp;#8217;s blog&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/01/17/net-framework-library-source-code-now-available/' rel='bookmark' title='Permanent Link: .NET Framework Library Source Code now available'&gt;.NET Framework Library Source Code now available&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/DuXruIZk80s" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2007/10/04/microsoft-releasing-the-net-framework-source-code/#comments" thr:count="1" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2007/10/04/microsoft-releasing-the-net-framework-source-code/feed/atom/" thr:count="1" />
		<thr:total>1</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2007/10/04/microsoft-releasing-the-net-framework-source-code/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[JAOO 2007 &#8211; Wednesday]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/zIHZZvGQsrQ/" />
		<id>http://www.lybecker.com/blog/2007/09/26/jaoo-2007-wednesday/</id>
		<updated>2009-01-03T17:43:04Z</updated>
		<published>2007-09-26T21:59:05Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Conference" />		<summary type="html"><![CDATA[The third and last day at the JAOO conference was the best in regards of the sessions I attended. My day session schedule looked like this:

 &#8220;MonoRail: Building Maintainable and Testable Web Applications&#8221; by Oren Eini and Hamilton Verissimo
 &#8220;Fault Tolerance&#8221; by Robert S. Hanmer
 &#8220;Performance Art&#8221; by Kevlin Henney
 &#8220;Applying Craftsmanship&#8221; by Pete McBreen
 [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/09/26/jaoo-session-applying-craftsmanship-abstract/' rel='bookmark' title='Permanent Link: JAOO session &#8220;Applying Craftsmanship&#8221; abstract'>JAOO session &#8220;Applying Craftsmanship&#8221; abstract</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2007/09/26/jaoo-2007-wednesday/">&lt;p&gt;The third and last day at the JAOO conference was the best in regards of the sessions I attended. My day session schedule looked like this:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &amp;#8220;MonoRail: Building Maintainable and Testable Web Applications&amp;#8221; by Oren Eini and Hamilton Verissimo&lt;/li&gt;
&lt;li&gt; &amp;#8220;Fault Tolerance&amp;#8221; by Robert S. Hanmer&lt;/li&gt;
&lt;li&gt; &amp;#8220;Performance Art&amp;#8221; by &lt;a title="Kevlin Henney at Wikipedia" href="http://en.wikipedia.org/wiki/Kevlin_Henney"&gt;Kevlin Henney&lt;/a&gt;&lt;/li&gt;
&lt;li&gt; &amp;#8220;Applying Craftsmanship&amp;#8221; by &lt;a title="PEte McBreen's site" href="http://www.mcbreen.ab.ca/"&gt;Pete McBreen&lt;/a&gt;&lt;/li&gt;
&lt;li&gt; Panel discussion: &amp;#8220;Enterprise Application Frameworks&amp;#8221; with &lt;a title=" Graeme Rocher's Blog" href="http://graemerocher.blogspot.com/"&gt;Graeme Rocher&lt;/a&gt;, &lt;a title="Eberhard Wolff's blog" href="http://jandiandme.blogspot.com/"&gt;Eberhard Wolff&lt;/a&gt;, &lt;a title="Erik Doernenburg's blog" href="http://erik.doernenburg.com/"&gt;Erik Dörnenburg&lt;/a&gt;, Oren Eini, Justin Gehtland, and &lt;a title="Alef Arendsen's blog" href="http://blog.arendsen.net/"&gt;Alef Arendsen&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I have written an abstract of the session &amp;#8220;Applying Craftsmanship&amp;#8221; by Pete McBreen in a separate blog post, because it deserved it. It made me think (which is a good thing &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt;  ). Read it &lt;a title="Session Abstract" href="http://www.lybecker.com/blog/2007/09/26/jaoo-session-applying-craftsmanship-abstract/"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;JAOO 2007 conference summary&lt;/strong&gt;&lt;br /&gt;
I enjoyed the JAOO conference, but was a bit disappointed with the technical level. Again, maybe my expectations were too high? But then again, I will consider coming back next year. That has absolutely nothing to do with the fact that I won an Apple iPod at an IBM contest. &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;Below is a picture of the price I won in the IBM contest.&lt;/p&gt;
&lt;p style="text-align: center"&gt;&lt;img src="http://www.lybecker.com/blog/wp-content/ibmcontestwinnings.JPG" alt="My winnings" /&gt;&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/09/26/jaoo-session-applying-craftsmanship-abstract/' rel='bookmark' title='Permanent Link: JAOO session &amp;#8220;Applying Craftsmanship&amp;#8221; abstract'&gt;JAOO session &amp;#8220;Applying Craftsmanship&amp;#8221; abstract&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/zIHZZvGQsrQ" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2007/09/26/jaoo-2007-wednesday/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2007/09/26/jaoo-2007-wednesday/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2007/09/26/jaoo-2007-wednesday/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[JAOO session &#8220;Applying Craftsmanship&#8221; abstract]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/K8cz3Xgg-2I/" />
		<id>http://www.lybecker.com/blog/2007/09/26/jaoo-session-applying-craftsmanship-abstract/</id>
		<updated>2009-01-03T17:43:12Z</updated>
		<published>2007-09-26T21:55:06Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Conference" />		<summary type="html"><![CDATA[The session &#8220;Applying Craftsmanship&#8221; at the JAOO conference by Pete McBreen was by no means technical but made me think. The stuff he talked about is, in my opinion, common sense. Below is an abstract of what I got out of the session. I wanted to share it with you and wrote it down so [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/05/23/scrum-certified-master/' rel='bookmark' title='Permanent Link: SCRUM Certified Master'>SCRUM Certified Master</a></li>
<li><a href='http://www.lybecker.com/blog/2008/03/16/my-presentation-at-the-microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: My presentation at the Microsoft product launch 2008'>My presentation at the Microsoft product launch 2008</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2007/09/26/jaoo-session-applying-craftsmanship-abstract/">&lt;p&gt;The session &amp;#8220;Applying Craftsmanship&amp;#8221; at the &lt;a title="JAOO conference 2007" href="http://www.jaoo.dk"&gt;JAOO&lt;/a&gt; conference by Pete McBreen was by no means technical but made me think. The stuff he talked about is, in my opinion, common sense. Below is an abstract of what I got out of the session. I wanted to share it with you and wrote it down so that I don’t forget about it in 6 months time.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Currently the norm for gaining the title as senior developer is only 5 years of experience. Does that make sense? Can you really gain enough knowledge in such a short time? What is the next step in the career path for technical for a developer? Architect or project manager? Not all developers make good architects, as the skill required differs. Almost no developers make good project managers. What is often seen is the organization ends up with a lousy project manager and loosing their prime developer.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Why have two teams – one to develop the solution and another to maintain it. It does not make any sense, as the initial developers are the best source of knowledge of implementation details. Give the initial developer’s incentives to build the best possible solution by having them maintain the code base afterwards.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Developers fresh out of college or university should learn from the more experienced developers (senior developers?). The best way to learn is by looking at others code or paring up with a more experienced developer. Pete McBreen favored having the newbies help maintain existing code. That makes sense in my ears, as they then get exposed to others (hopefully) high quality code, while paring up with the experienced developers.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Another issue he addressed was the current trend of discarding existing code and redeveloping the same functionality over and over again. He made a point out of continuously improving the software quality, so the need to discard the existing code would be pointless. The goal is not solely to continuously refactor, but to improve the user experience – functionality wise.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;This ties very well to the last point of shifting the developers’ focus to the system functionality that improves the users’ experience. The users are paying for our salaries so of cause we should focus on their needs. This requires that developers talk to users and understand their needs, because developers are not domain experts and do not have any clue of the users needs.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Pete McBreen has written a book about the subject called &amp;#8220;&lt;a title="Software Craftsmanship: The New Imperative book on Amazon.com" href="http://www.amazon.com/exec/obidos/ASIN/0201733862/mcbreenconsul-20/nosim"&gt;Software Craftsmanship: The New Imperative&lt;/a&gt;&amp;#8220;. I haven’t read it, so I can’t tell you if it is any good. Maybe I should read it…&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/05/23/scrum-certified-master/' rel='bookmark' title='Permanent Link: SCRUM Certified Master'&gt;SCRUM Certified Master&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/03/16/my-presentation-at-the-microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: My presentation at the Microsoft product launch 2008'&gt;My presentation at the Microsoft product launch 2008&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/K8cz3Xgg-2I" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2007/09/26/jaoo-session-applying-craftsmanship-abstract/#comments" thr:count="1" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2007/09/26/jaoo-session-applying-craftsmanship-abstract/feed/atom/" thr:count="1" />
		<thr:total>1</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2007/09/26/jaoo-session-applying-craftsmanship-abstract/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[JAOO 2007 &#8211; Tuesday]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/3BSwGV8YTAg/" />
		<id>http://www.lybecker.com/blog/2007/09/25/jaoo-2007-tuesday/</id>
		<updated>2009-01-03T17:43:18Z</updated>
		<published>2007-09-25T22:09:59Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="Conference" />		<summary type="html"><![CDATA[The day at JAOO was better than yesterday, but still not great. Maybe my expectations are too high?
Today’s JAOO conference of the honorable mentionable:

&#8220;Painless Persistence with Castle ActiveRecord&#8221; by Oren Eini and Hamilton Verissimo &#8211; which was a tutorial of Castle ActiveRecord. The session was fairly good – I learned some new stuff but knew [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/09/24/jaoo-2007-monday/' rel='bookmark' title='Permanent Link: JAOO 2007 &#8211; Monday'>JAOO 2007 &#8211; Monday</a></li>
<li><a href='http://www.lybecker.com/blog/2007/03/14/great-conference/' rel='bookmark' title='Permanent Link: Great conference'>Great conference</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2007/09/25/jaoo-2007-tuesday/">&lt;p&gt;The day at JAOO was better than yesterday, but still not great. Maybe my expectations are too high?&lt;br /&gt;
Today’s JAOO conference of the honorable mentionable:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&amp;#8220;Painless Persistence with Castle ActiveRecord&amp;#8221; by &lt;a title="Ayende @ Rahien" href="http://www.ayende.com/"&gt;Oren Eini&lt;/a&gt; and &lt;a title="Hamilton Verissimo's blog" href="http://hammett.castleproject.org/"&gt;Hamilton Verissimo&lt;/a&gt; &amp;#8211; which was a tutorial of &lt;a title="Castle ActiveRecord homepage" href="http://www.castleproject.org/activerecord/"&gt;Castle ActiveRecord&lt;/a&gt;. The session was fairly good – I learned some new stuff but knew most of it in advance. I like the idear of minimizing the complexity of data access logic, but I do not fancy the solution where the domain model objects are bound by attributes. I prefer the XML based solution found in for example &lt;a title="nHibernate homepage" href="http://www.nhibernate.org/"&gt;nHibernate&lt;/a&gt;. It is a lot more tedious work, but the solution benefits of separation of concerns.&lt;/li&gt;
&lt;li&gt;&amp;#8220;C# 3.0 under the hood&amp;#8221; by Mads Torgersen – this session was a good recap of something I read a while ago. I can’t recall the source, sorry. The session wasn’t as much under the hood as the title states, but still Mads delivered a compelling walkthrough of the construct of &lt;a title="The LINQ Project homepage" href="http://msdn2.microsoft.com/netframework/aa904594.aspx"&gt;LINQ&lt;/a&gt; (Language Integrated Queries).&lt;/li&gt;
&lt;li&gt;&amp;#8220;Using LINQ to SQL to Access Relational Data&amp;#8221; by &lt;a title=" Luca Bolognese's blog" href="http://blogs.msdn.com/lucabol/"&gt;Luca Bolognese&lt;/a&gt; – I was delighted to see that Microsoft has taken concepts from nHibernate and adopted them as their own. There are many similarities between nHibernate and &lt;a title="LINQ for for Relational Data in SQL Server" href="http://msdn2.microsoft.com/en-us/library/bb425822.aspx"&gt;LINQ to SQL&lt;/a&gt;, but I need to dig further into the subject to see if I should make the switch from nHibernate to full blown LINQ, with all it entitles. Alternatively I could just use the LINQ for nHibernate when it is released in version 1 in 3-6 months.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;My last day at JAOO is tomorrow. Let us see what tomorrow brings. &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/09/24/jaoo-2007-monday/' rel='bookmark' title='Permanent Link: JAOO 2007 &amp;#8211; Monday'&gt;JAOO 2007 &amp;#8211; Monday&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/03/14/great-conference/' rel='bookmark' title='Permanent Link: Great conference'&gt;Great conference&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/3BSwGV8YTAg" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2007/09/25/jaoo-2007-tuesday/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2007/09/25/jaoo-2007-tuesday/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2007/09/25/jaoo-2007-tuesday/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[JAOO 2007 &#8211; Monday]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/Biq14YOFTpY/" />
		<id>http://www.lybecker.com/blog/2007/09/24/jaoo-2007-monday/</id>
		<updated>2009-01-03T17:43:25Z</updated>
		<published>2007-09-24T22:40:47Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="Conference" />		<summary type="html"><![CDATA[
The keynote by Robert C. Martin &#8220;Craftsmanship and Ethics&#8221; was all about agile processes and development. You couldn’t really ague the test are not good and the developers should have the best tools available. It was one of those talks where everybody nods and goes their separate ways and continues doing what they have always [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/03/14/great-conference/' rel='bookmark' title='Permanent Link: Great conference'>Great conference</a></li>
<li><a href='http://www.lybecker.com/blog/2007/02/21/sql-server-open-world/' rel='bookmark' title='Permanent Link: SQL Server Open World'>SQL Server Open World</a></li>
<li><a href='http://www.lybecker.com/blog/2007/04/30/wcf-sessions-and-reliable-messaging/' rel='bookmark' title='Permanent Link: WCF Sessions and Reliable Messaging'>WCF Sessions and Reliable Messaging</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2007/09/24/jaoo-2007-monday/">&lt;p style="text-align: center"&gt;&lt;img src="http://www.lybecker.com/blog/wp-content/jaoo2007entrance.jpg" alt="JAOO 2007 entrance" /&gt;&lt;/p&gt;
&lt;p&gt;The keynote by &lt;a title="Robert C. Martin on Wikipedia" href="http://en.wikipedia.org/wiki/Robert_Cecil_Martin"&gt;Robert C. Martin&lt;/a&gt; &amp;#8220;Craftsmanship and Ethics&amp;#8221; was all about agile processes and development. You couldn’t really ague the test are not good and the developers should have the best tools available. It was one of those talks where everybody nods and goes their separate ways and continues doing what they have always done. Good talk though.&lt;/p&gt;
&lt;p&gt;Afterwards I went to a session by &lt;a title="Pramod Sadalage's blog" href="http://www.sadalage.com/"&gt;Pramod Sadalage&lt;/a&gt; where he talked about evolutionary database design with database refactoring. Pramod Sadalage is a co-author of the Martin Fowler series &lt;a title="Refactoring Databases book on Amazon.com" href="http://www.amazon.com/gp/product/0321293533?ie=UTF8&amp;amp;tag=agiledba-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=0321293533"&gt;Database Refactoring&lt;/a&gt; book which I have on my to-read-list-but-have-not-have-found-the-time.&lt;br /&gt;
He tragically failed to deliver a point about database refactoring until then end of the session where most had lost interest. He kept on talking about &lt;a title="The original thoughts on continues integration by Martin Fowler" href="http://martinfowler.com/articles/continuousIntegration.html"&gt;continues integration&lt;/a&gt; and &lt;a title="Apache ANT" href="http://ant.apache.org/"&gt;ANT&lt;/a&gt; script – this is all fine, but I expected some thoughts and ideas of how to do database refactoring without loosing business value and precious development time. Give me some pointers, tools or patterns!&lt;br /&gt;
I certainly need to reevaluate if the database refactoring book should stay on my list.&lt;/p&gt;
&lt;p&gt;After lunch I went to a session about the functional programming language &lt;a title="Erlang on Wikipedia" href="http://en.wikipedia.org/wiki/Erlang_(programming_language)"&gt;Erlang&lt;/a&gt; by the inventor &lt;a title="Joe Armstrings blog" href="http://armstrongonsoftware.blogspot.com/"&gt;Joe Armstrong&lt;/a&gt;. He is a great speaker and was able to keep most attendee’s at the tip of their toes, due to implicit knowledge of current hardware architectures in the talk. He confidently delivered his views of how concurrent development should be done – not the Java, C++ or C# way, but as a simple construct of the programming language. Concurrency in Erlang is based on &lt;a title="Message parsing explained on Wikipedia" href="http://en.wikipedia.org/wiki/Message_passing"&gt;message parsing&lt;/a&gt; instead of share memory.&lt;/p&gt;
&lt;p&gt;The rest of the day failed miserably for me. None of the talk I went to was enlightening, made me think or inspired new ideas. I went to &amp;#8220;Testing Database Access Code Programmatically&amp;#8221; by &lt;a title="Roy Osherove's blog" href="http://www.iserializable.com"&gt;Roy Osherove&lt;/a&gt;, &amp;#8220;Information cards and .Net &amp;#8211; Cardspace&amp;#8221; by &lt;a title="René Løhde's blog" href="http://blogs.msdn.com/renel/"&gt;René Løhde&lt;/a&gt; and &amp;#8220;An Introduction to Spring.Net&amp;#8221; by Mark Pollack.&lt;br /&gt;
Most (in truth all) of my colleagues was better at choosing sessions and they especially talk positively about the session &amp;#8220;Beautiful Debugging&amp;#8221; by &lt;a title="About Andreas Zeller" href="http://www.st.cs.uni-sb.de/zeller/"&gt;Andreas Zeller&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The rest of the day I served &lt;a title="Miracle - my employer" href="http://www.miracleas.dk/"&gt;Miracle&lt;/a&gt; beer from our very own &lt;a title="Miracle Breweries" href="http://www.miraclebreweries.dk/"&gt;Miracle Brewery&lt;/a&gt; at the JAOO conference party. Apparently developers like Miracle beer, because all 400 liters were consumed.&lt;/p&gt;
&lt;p&gt;I am looking forward to tomorrow and hope that I am better at choosing the right/high-class sessions.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/03/14/great-conference/' rel='bookmark' title='Permanent Link: Great conference'&gt;Great conference&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/02/21/sql-server-open-world/' rel='bookmark' title='Permanent Link: SQL Server Open World'&gt;SQL Server Open World&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/04/30/wcf-sessions-and-reliable-messaging/' rel='bookmark' title='Permanent Link: WCF Sessions and Reliable Messaging'&gt;WCF Sessions and Reliable Messaging&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/Biq14YOFTpY" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2007/09/24/jaoo-2007-monday/#comments" thr:count="2" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2007/09/24/jaoo-2007-monday/feed/atom/" thr:count="2" />
		<thr:total>2</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2007/09/24/jaoo-2007-monday/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Geek Train to JAOO]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/wrLfuI06y7I/" />
		<id>http://www.lybecker.com/blog/2007/09/23/geek-train-to-jaoo/</id>
		<updated>2009-01-03T17:43:32Z</updated>
		<published>2007-09-23T20:27:45Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Conference" />		<summary type="html"><![CDATA[I am on my way to the JAOO conference in Aarhus, Denmark with a colleague. We booked a late train and ended up on a geek train!
Addicted as we are, we logged on the Internet via our mobil phones and noticed that we were not the only ones with Bluetooth enabled laptops/mobil phones!
This was what [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: Microsoft product launch 2008'>Microsoft product launch 2008</a></li>
<li><a href='http://www.lybecker.com/blog/2007/03/14/great-conference/' rel='bookmark' title='Permanent Link: Great conference'>Great conference</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2007/09/23/geek-train-to-jaoo/">&lt;p&gt;I am on my way to the &lt;a title="JAOO conference 2007" href="http://www.jaoo.dk"&gt;JAOO conference&lt;/a&gt; in &lt;a title="Aarhus city information" href="http://www.aarhus.dk"&gt;Aarhus&lt;/a&gt;, Denmark with a colleague. We booked a late train and ended up on a geek train!&lt;br /&gt;
Addicted as we are, we logged on the Internet via our mobil phones and noticed that we were not the only ones with Bluetooth enabled laptops/mobil phones!&lt;br /&gt;
This was what we say.&lt;/p&gt;
&lt;p&gt;&lt;a title="Bluetooth" href="http://www.lybecker.com/blog/wp-content/geektrain.jpg"&gt;&lt;img src="http://www.lybecker.com/blog/wp-content/geektrain.jpg" alt="Bluetooth" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;That is pretty amazing as Bluetooth is a personal network and the range is about 10 meters.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/02/16/microsoft-product-launch-2008/' rel='bookmark' title='Permanent Link: Microsoft product launch 2008'&gt;Microsoft product launch 2008&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/03/14/great-conference/' rel='bookmark' title='Permanent Link: Great conference'&gt;Great conference&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/wrLfuI06y7I" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2007/09/23/geek-train-to-jaoo/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2007/09/23/geek-train-to-jaoo/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2007/09/23/geek-train-to-jaoo/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Constrained-based assert model]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/jCkkdg3aZwQ/" />
		<id>http://www.lybecker.com/blog/2007/06/12/constrained-based-assert-model/</id>
		<updated>2009-03-08T14:06:12Z</updated>
		<published>2007-06-12T06:45:46Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="Testing Code" /><category scheme="http://www.lybecker.com/blog" term="Useful tools" /><category scheme="http://www.lybecker.com/blog" term="dotNet" />		<summary type="html"><![CDATA[The latest version of NUnit Framework (version 2.4 and forward) comes with a new constrained-based assert model, which allows you to write complex assertions relatively easy with a new syntax. The old classical syntax for assertions with static methods still works and according to the NUnit blog there are no plans to deprecate the classical [...]


No related posts.]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2007/06/12/constrained-based-assert-model/">&lt;p&gt;The latest version of &lt;a href="http://nunit.org/"&gt;NUnit Framework&lt;/a&gt; (version 2.4 and forward) comes with a new constrained-based assert model, which allows you to write complex assertions relatively easy with a new syntax. The old classical syntax for assertions with static methods still works and according to the &lt;a href="http://nunit.com/blogs/"&gt;NUnit blog&lt;/a&gt; there are no plans to deprecate the classical assertion syntax.&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
Assert.AreEqual(5, 5.0);

Assert.AreSame(person, person);

Assert.Greater(7, 5);

Assert.IsInstanceOfType(typeof(ArrayList), new ArrayList());

Assert.IsAssignableFrom(typeof(ICollection), new List());

StringAssert.StartsWith(&amp;quot;Anders&amp;quot;, &amp;quot;And&amp;quot;);

CollectionAssert.AreEquivalent(col1, col2);

FileAssert.AreEqual(stream1, stream2);
&lt;/pre&gt;
&lt;p&gt;The new constrained-based assert model uses a single method on the Assert class for all assertions:&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
Assert.That(&amp;quot;Anders&amp;quot;, new EqualConstraint(&amp;quot;Anders&amp;quot;));
&lt;/pre&gt;
&lt;p&gt;The second parameter is the type of assertions – here an equal constraint that works on all types of data &amp;#8211; primitives, collections, streams etc.&lt;/p&gt;
&lt;p&gt;NUnit comes with a number of &lt;a href="http://nunit.com/index.php?p=constraintModel&amp;amp;r=2.4.1"&gt;constraints covering most scenarios&lt;/a&gt;, but also allows you to extend the model by developing &lt;a href="http://nunit.com/index.php?p=customConstraints&amp;amp;r=2.4.1"&gt;custom constraint&lt;/a&gt; by realizing the IConstraint interface.&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
public interface IConstraint
{
    bool Matches(object actual);
    void WriteMessageTo(MessageWriter writer);
    void WriteDescriptionTo(MessageWriter writer);
    void WriteActualValueTo(MessageWriter writer);
}
&lt;/pre&gt;
&lt;p&gt;If the syntax of constrained-based assert model seams a bit to complex and not very reader friendly, the NUnit team has implemented a range of syntax helper classes like so:&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
Assert.That(&amp;quot;Anders&amp;quot;, Is.EqualTo(&amp;quot;Anders&amp;quot;));
Assert.That(&amp;quot;Anders&amp;quot;, Is.Not.EqualTo(&amp;quot;Anja&amp;quot;));
Assert.That(&amp;quot;Hello World!&amp;quot;, Text.StartsWith(&amp;quot;HELLO&amp;quot;).IgnoreCase);
Assert.That(&amp;quot;make me happy&amp;quot;, Text.Contains(&amp;quot;make&amp;quot;));

Assert.That(person, Is.SameAs(person));
Assert.That(null, Is.Null);
Assert.That(new object(), Is.Not.Null);
Assert.That(&amp;quot;&amp;quot;, Is.Empty);

Assert.That(new ArrayList(), Is.Empty);
Assert.That(myCol, Is.Unique);

Assert.That(7, Is.GreaterThan(5));
Assert.That(2.0d + 2.0d, Is.EqualTo(4.0d).Within(.000005d));

Assert.That(myPerson, Is.InstanceOfType(typeof(Person)));
Assert.That(new EqualConstraint(), Is.AssignableFrom(typeof(IConstraint)));

Assert.That(new int[] { 4, 5, 6 }, Is.All.GreaterThan(0));
Assert.That(new string[] { &amp;quot;abc&amp;quot;, &amp;quot;bac&amp;quot;, &amp;quot;cab&amp;quot; }, Has.All.Length(3));
Assert.That(new int[] { 4, 5 }, Is.SubsetOf(new int[] { 4, 5, 6 }));
&lt;/pre&gt;
&lt;p&gt;The change of syntax separates NUnit from other unit test frameworks and therefore separates from the common approach of creating unit tests.&lt;/p&gt;
&lt;p&gt;I like the new syntax &amp;#8211; It is intuitive and easy to comprehend. All change is not, but it is simple rules of evolution. The notion of constraints is also found in &lt;a href="http://nmock.org/"&gt;NMock&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;No related posts.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/jCkkdg3aZwQ" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2007/06/12/constrained-based-assert-model/#comments" thr:count="1" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2007/06/12/constrained-based-assert-model/feed/atom/" thr:count="1" />
		<thr:total>1</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2007/06/12/constrained-based-assert-model/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[SCRUM Certified Master]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/11x3Z1NIaUg/" />
		<id>http://www.lybecker.com/blog/2007/05/23/scrum-certified-master/</id>
		<updated>2009-01-03T17:43:53Z</updated>
		<published>2007-05-23T11:32:29Z</published>
		<category scheme="http://www.lybecker.com/blog" term="Announcement" /><category scheme="http://www.lybecker.com/blog" term="Certification" /><category scheme="http://www.lybecker.com/blog" term="SCRUM" />		<summary type="html"><![CDATA[Yesterday I returned from Milan, Italy, after completing a great Scrum Master Certification course taught by the experienced Scrum trainer Joseph Pelrine.
Scrum is an agile project management method for managing projects with continuously changing requirements
and/or complex social and technical domains.
Joseph brought his friend Tim Mackinnon, whom is also a Scrum master and the originator of [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2008/04/20/wcf-certified/' rel='bookmark' title='Permanent Link: WCF certified'>WCF certified</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2007/05/23/scrum-certified-master/">&lt;p&gt;Yesterday I returned from Milan, Italy, after completing a great Scrum Master Certification course taught by the experienced Scrum trainer &lt;a href="http://www.metaprog.com/blogs/"&gt;Joseph Pelrine&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://en.wikipedia.org/wiki/Scrum_%28management%29"&gt;Scrum&lt;/a&gt; is an agile project management method for managing projects with continuously changing requirements&lt;br /&gt;
and/or complex social and technical domains.&lt;/p&gt;
&lt;p&gt;Joseph brought his friend Tim Mackinnon, whom is also a Scrum master and the originator of &lt;a href="http://en.wikipedia.org/wiki/Mock_object"&gt;mock objects&lt;/a&gt;. I really enjoyed the course and learned a lot. We had some enlightening discussions during the course and social engagements in the evenings.&lt;/p&gt;
&lt;p&gt;I highly recommend this course and the teachings of Joseph Pelrine to all whom looking to improve their ability to delivery quality solutions.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/04/20/wcf-certified/' rel='bookmark' title='Permanent Link: WCF certified'&gt;WCF certified&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/11x3Z1NIaUg" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2007/05/23/scrum-certified-master/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2007/05/23/scrum-certified-master/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2007/05/23/scrum-certified-master/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[WCF Sessions and Reliable Messaging]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/zNKhG3yjbDY/" />
		<id>http://www.lybecker.com/blog/?p=85</id>
		<updated>2008-10-05T16:29:06Z</updated>
		<published>2007-04-30T11:05:43Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="Ilities" /><category scheme="http://www.lybecker.com/blog" term="WCF" /><category scheme="http://www.lybecker.com/blog" term="ws-*" />		<summary type="html"><![CDATA[There are a couple of ways to establish a session between client and service. The session is established by identifying clients via a unique identifier. The unique identifier is either conveyed by

the client credentials when WS-Security is utilized to established secure session
the TCP/IP socket connection when using an underlying connection-oriented protocol such as TCP
the WS-ReliableMessaging [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/01/23/how-does-reliable-messaging-work/' rel='bookmark' title='Permanent Link: How does Reliable Messaging work?'>How does Reliable Messaging work?</a></li>
<li><a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-oletx/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with OleTx'>Configuring the DTC for WCF with OleTx</a></li>
<li><a href='http://www.lybecker.com/blog/2009/10/23/initial-slow-wcf-request/' rel='bookmark' title='Permanent Link: Initial slow WCF request'>Initial slow WCF request</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2007/04/30/wcf-sessions-and-reliable-messaging/">&lt;p&gt;There are a couple of ways to establish a session between client and service. The session is established by identifying clients via a unique identifier. The unique identifier is either conveyed by&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;the client credentials when WS-Security is utilized to established secure session&lt;/li&gt;
&lt;li&gt;the TCP/IP socket connection when using an underlying connection-oriented protocol such as TCP&lt;/li&gt;
&lt;li&gt;the WS-ReliableMessaging protocol token when requiring message ordering and message delivery assurance for transport protocols.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Read more about how WS-Reliable Messaging protocol in my article “&lt;a href="http://www.lybecker.com/blog/2007/01/23/how-does-reliable-messaging-work/"&gt;How does Reliable Messaging work?&lt;/a&gt;”&lt;/p&gt;
&lt;p&gt;Enabling sessions are all done in the configuration file. Some bindings are sessionful by default like the tcpBinding and wsHttpBinding.&lt;/p&gt;
&lt;p&gt;I continue with Hello World WCF code sample from my earlier articles: “&lt;a href="http://www.lybecker.com/blog/2007/01/18/building-a-windows-communication-foundation-client/"&gt;Building a Windows Communication Foundation client&lt;/a&gt;” and “&lt;a href="http://www.lybecker.com/blog/2007/01/15/a-simple-windows-communication-foundation-web-service/"&gt;A simple Windows Communication Foundation Web Service&lt;/a&gt;”. You can download the source code from here: &lt;a href='http://www.lybecker.com/blog/wp-content/uploads/helloworldwcfwithclients.zip'&gt;Hello World WCF with clients&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Just by changing the binding in the code sample configuration to wsHttpBinding in the service and the clients, you get secure sessions; wsHttpBinding is by default secured with message security. The secure session context is established with the &lt;a href="http://www-128.ibm.com/developerworks/library/specification/ws-secon/"&gt;WS-SecureConversation&lt;/a&gt; protocol.&lt;/p&gt;
&lt;p&gt;In the service type implementation it is possible to retrieve the session identifier via the OperationContext.Current.SessionId.&lt;/p&gt;
&lt;p&gt;If you want un-secure reliable ordered messages with sessions, then change the behavior of the wsHttpBinding by configuring the binding like below. The configuration shown is for the service, but the changes (in bold) are exactly the same as required in the clients’ configuration files.&lt;/p&gt;
&lt;pre class="brush: xml"&gt;
&amp;lt; ?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot; ?&amp;gt;
&amp;lt;configuration&amp;gt;
  &amp;lt;system .serviceModel&amp;gt;
    &amp;lt;behaviors&amp;gt;
      &amp;lt;servicebehaviors&amp;gt;
        &amp;lt;behavior name=&amp;quot;myBehavior&amp;quot;&amp;gt;
          &amp;lt;servicemetadata httpGetEnabled=&amp;quot;true&amp;quot;
                           httpGetUrl=&amp;quot;http://localhost:8080/HelloWorldService&amp;quot; /&amp;gt;
        &amp;lt;/behavior&amp;gt;
      &amp;lt;/servicebehaviors&amp;gt;
    &amp;lt;/behaviors&amp;gt;
    &amp;lt;bindings&amp;gt;
      &amp;lt;wshttpbinding&amp;gt;
        &amp;lt;binding name=&amp;quot;reliableBinding&amp;quot;&amp;gt;
          &amp;lt;reliablesession enabled=&amp;quot;true&amp;quot; ordered=&amp;quot;true&amp;quot;/&amp;gt;
          &amp;lt;security mode=&amp;quot;None&amp;quot; /&amp;gt;
        &amp;lt;/binding&amp;gt;
      &amp;lt;/wshttpbinding&amp;gt;
    &amp;lt;/bindings&amp;gt;
    &amp;lt;services&amp;gt;
      &amp;lt;service name=&amp;quot;HelloWorldService&amp;quot;
               behaviorConfiguration=&amp;quot;myBehavior&amp;quot;&amp;gt;
        &amp;lt;endpoint address=&amp;quot;http://localhost:8080/HelloWorldService&amp;quot;
                  binding=&amp;quot;wsHttpBinding&amp;quot;
                  bindingConfiguration=&amp;quot;reliableBinding&amp;quot;
                  contract=&amp;quot;IHelloWorldService&amp;quot; /&amp;gt;
      &amp;lt;/service&amp;gt;
    &amp;lt;/services&amp;gt;
  &amp;lt;/system&amp;gt;
&amp;lt;/configuration&amp;gt;
&lt;/pre&gt;
&lt;p&gt;Now the session identifiers are conveyed by the WS-Reliable Messaging protocol (linie 13-18). It is possible to use secure and reliable messages, but security is disabled to prove the point of WS-Reliable Messaging can be used to establish sessions.&lt;/p&gt;
&lt;p&gt;If the implementation of your service requires sessions, decorate the service contract with the SessionMode.Required – this will demand that every endpoint bindings exposing the service support sessions. The possible values of the SessionMode enum are Required, Allowed and NotAllowed where Allowed is default.&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
[ServiceContract(SessionMode=SessionMode.Required)]
public interface IHelloWorldService
{
    [OperationContract]
    string HelloWorld();
}
&lt;/pre&gt;
&lt;p&gt;If guaranteed ordering of messages is assumed by the implementation and therefore required for dependable behavior of the service, then decorate the service contract with the DeliveryRequirements attribute with the parameter RequireOrderedDelivery set to true.&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
[ServiceContract(SessionMode=SessionMode.Required)]
[DeliveryRequirements(RequireOrderedDelivery=true)]
public interface IHelloWorldService
{
    [OperationContract]
    string HelloWorld();
}
&lt;/pre&gt;
&lt;p&gt;If the configuration of an endpoint does not fulfill the requirements, the host throws an exception detailing the missing requirements.&lt;/p&gt;
&lt;p style="text-align: left;"&gt;&lt;em&gt;When to use the sessions&lt;/em&gt;&lt;br /&gt;
Sessions in WCF does not deliver the same functionality as in ASP.Net or ASMX based Web Services. For instance the &lt;a href="http://msdn2.microsoft.com/en-us/library/system.web.sessionstate.httpsessionstate.aspx"&gt;HttpSessionState&lt;/a&gt; store is not available, not even if the WCF service is hosted in the IIS. WCF sessions are similar to Remoting sessions and are only for service instancing.&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
[ServiceBehavior(InstanceContextMode = InstanceContextMode.PerSession)]
public class HelloWorldService : IHelloWorldService
{
    public string HelloWorld()
    {
        Console.WriteLine(&amp;quot;Invoked by client with session ID {0}&amp;quot;,
            OperationContext.Current.SessionId);

        return &amp;quot;Hello World&amp;quot;;
    }
}
&lt;/pre&gt;
&lt;p&gt;To control the instancing of the service type objects, decorate the service type with the ServiceBehavior attribute and specify the InstanceContextMode enum as in the above code.&lt;/p&gt;
&lt;p&gt;The InstanceContextMode values are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;PerCall &amp;#8211; A new InstanceContext object is created prior to and recycled subsequent to each call. If the channel does not create a session this value behaves as if it were PerCall.&lt;/li&gt;
&lt;li&gt;PerSession &amp;#8211; A new InstanceContext object is created for each session.&lt;/li&gt;
&lt;li&gt;Single &amp;#8211; Only one instance of the service type object is used for all incoming calls and is not recycled subsequent to the calls. If a service type object does not exist, one is created.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Download the sample code with reliable messaging here (&lt;a href='http://www.lybecker.com/blog/wp-content/uploads/helloworldwcfreliablemessaging.zip'&gt;Hello World WCF Reliable Messaging&lt;/a&gt;) and read more about WCF sessions &lt;a href="http://msdn2.microsoft.com/en-us/library/ms733040.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/01/23/how-does-reliable-messaging-work/' rel='bookmark' title='Permanent Link: How does Reliable Messaging work?'&gt;How does Reliable Messaging work?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/03/12/configuring-the-dtc-for-wcf-with-oletx/' rel='bookmark' title='Permanent Link: Configuring the DTC for WCF with OleTx'&gt;Configuring the DTC for WCF with OleTx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2009/10/23/initial-slow-wcf-request/' rel='bookmark' title='Permanent Link: Initial slow WCF request'&gt;Initial slow WCF request&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/zNKhG3yjbDY" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2007/04/30/wcf-sessions-and-reliable-messaging/#comments" thr:count="2" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2007/04/30/wcf-sessions-and-reliable-messaging/feed/atom/" thr:count="2" />
		<thr:total>2</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2007/04/30/wcf-sessions-and-reliable-messaging/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Reading performance counters]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/PfQ1_qlBA78/" />
		<id>http://www.lybecker.com/blog/2007/04/20/reading-performance-counters/</id>
		<updated>2009-01-03T17:44:02Z</updated>
		<published>2007-04-20T08:53:59Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" />		<summary type="html"><![CDATA[It is apparently possible to read performance counters without administrator privileges.
This is useful information &#8211; read more here  


No related posts.


No related posts.]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2007/04/20/reading-performance-counters/">&lt;p&gt;It is apparently possible to read performance counters without administrator privileges.&lt;/p&gt;
&lt;p&gt;This is useful information &amp;#8211; read more &lt;a href="http://blogs.msdn.com/bclteam/archive/2006/09/08/746900.aspx"&gt;here&lt;/a&gt; &lt;img src='http://www.lybecker.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;


&lt;p&gt;No related posts.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/PfQ1_qlBA78" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2007/04/20/reading-performance-counters/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2007/04/20/reading-performance-counters/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2007/04/20/reading-performance-counters/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Strings in .Net]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/on8A35xKlSo/" />
		<id>http://www.lybecker.com/blog/2007/04/11/strings-in-net/</id>
		<updated>2009-03-08T14:18:54Z</updated>
		<published>2007-04-11T15:47:50Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="dotNet" />		<summary type="html"><![CDATA[Strings in .Net are immutable reference types, but can be confusing because they sometimes have similar characteristics as value types.
Below is a code sample that shows the value type characteristics of string.

string s1 = &#34;Anders&#34;;
string s2 = &#34;Anders&#34;;

Console.WriteLine(&#34;s1 and s2 are equal : {0}&#34;, s1 == s2);

Output:
s1 and s2 are equal : True
For regular reference [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2007/06/12/constrained-based-assert-model/' rel='bookmark' title='Permanent Link: Constrained-based assert model'>Constrained-based assert model</a></li>
<li><a href='http://www.lybecker.com/blog/2007/01/12/when-is-dividebyzeroexception-thrown/' rel='bookmark' title='Permanent Link: When is DivideByZeroException thrown?'>When is DivideByZeroException thrown?</a></li>
<li><a href='http://www.lybecker.com/blog/2007/01/15/a-simple-windows-communication-foundation-web-service/' rel='bookmark' title='Permanent Link: A simple Windows Communication Foundation Web Service'>A simple Windows Communication Foundation Web Service</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2007/04/11/strings-in-net/">&lt;p&gt;Strings in .Net are &lt;a href="http://en.wikipedia.org/wiki/Immutable_object"&gt;immutable&lt;/a&gt; reference types, but can be confusing because they sometimes have similar characteristics as value types.&lt;/p&gt;
&lt;p&gt;Below is a code sample that shows the value type characteristics of string.&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
string s1 = &amp;quot;Anders&amp;quot;;
string s2 = &amp;quot;Anders&amp;quot;;

Console.WriteLine(&amp;quot;s1 and s2 are equal : {0}&amp;quot;, s1 == s2);
&lt;/pre&gt;
&lt;p&gt;Output:&lt;br /&gt;
s1 and s2 are equal : True&lt;/p&gt;
&lt;p&gt;For regular reference types this would have been an object reference compare, but the == operator is overloaded to execute the same logic as the String.Equals method.&lt;/p&gt;
&lt;p&gt;Continuing the example by implicit cast each string to an object:&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
object o1 = s1;
object o2 = s2;

Console.WriteLine(&amp;quot;o1 and o2 are equal : {0}&amp;quot;, o1 == o2);
&lt;/pre&gt;
&lt;p&gt;Output:&lt;br /&gt;
o1 and o2 are equal : True&lt;/p&gt;
&lt;p&gt;These two strings are equal due to the CLR optimization called interning. Interning works by having an internal pool of unique literal strings. If the same literal string is assigned to multiple variables the runtime retrieves the reference to the literal string in the internal pool and assigns it to each variable.&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
Console.WriteLine(&amp;quot;s1 and s2 are same : {0}&amp;quot;, object.ReferenceEquals(s1, s2));
Console.WriteLine(&amp;quot;o1 and o2 are same : {0}&amp;quot;, object.ReferenceEquals(o1, o2));
&lt;/pre&gt;
&lt;p&gt;Output:&lt;br /&gt;
s1 and s2 are same : True&lt;br /&gt;
o1 and o2 are same : True&lt;/p&gt;
&lt;p&gt;The &lt;a href="http://msdn2.microsoft.com/en-us/library/system.object.referenceequals.aspx"&gt;Object.ReferenceEquals&lt;/a&gt; determines whether the specified object instances are the same instance.&lt;/p&gt;
&lt;p&gt;When comparing the strings or objects all of them are the same instance! This is again due to interning. All of the variables reference to the same object.&lt;/p&gt;
&lt;p&gt;Let us rewrite the code and try something a little bit different:&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;
string s1 = &amp;quot;Anders&amp;quot;;
string s2 = new StringBuilder(&amp;quot;Anders&amp;quot;).ToString();

object o1 = s1;
object o2 = s2;

Console.WriteLine(&amp;quot;s1 and s2 are equal : {0}&amp;quot;, s1 == s2);
Console.WriteLine(&amp;quot;o1 and o2 are equal : {0}&amp;quot;, o1 == o2);
Console.WriteLine(&amp;quot;s1 and s2 are same : {0}&amp;quot;, object.ReferenceEquals(s1, s2));
Console.WriteLine(&amp;quot;o1 and o2 are same : {0}&amp;quot;, object.ReferenceEquals(o1, o2));
&lt;/pre&gt;
&lt;p&gt;Output:&lt;br /&gt;
s1 and s2 are equal : True&lt;br /&gt;
o1 and o2 are equal : False&lt;br /&gt;
s1 and s2 are same : False&lt;br /&gt;
o1 and o2 are same : False&lt;/p&gt;
&lt;p&gt;The above code is almost identical to the previous code except that s2 is initialized with a StringBuilder. Will this return the same result? No, because interning only occur when an assembly gets loaded or the &lt;a href="http://msdn2.microsoft.com/en-us/library/system.string.intern.aspx"&gt;String.Intern&lt;/a&gt; method is called.&lt;/p&gt;
&lt;p&gt;The first string compare is true because of the operator overloading discussed earlier, but all the other compares are false. Even the o1 and o2 compare, because the runtime is unaware of the object types at the time of the comparison and can therefore not use the overload operator.&lt;/p&gt;
&lt;p&gt;If you want to know more about &lt;a href="http://www.yoda.arachsys.com/csharp/strings.html"&gt;strings&lt;/a&gt;, &lt;a href="https://blogs.msdn.com/cbrumme/archive/2003/04/22/51371.aspx"&gt;interning&lt;/a&gt; or &lt;a href="http://msdn2.microsoft.com/en-us/library/ms973919.aspx"&gt;internationalization issues with strings&lt;/a&gt; – read on.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/06/12/constrained-based-assert-model/' rel='bookmark' title='Permanent Link: Constrained-based assert model'&gt;Constrained-based assert model&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/01/12/when-is-dividebyzeroexception-thrown/' rel='bookmark' title='Permanent Link: When is DivideByZeroException thrown?'&gt;When is DivideByZeroException thrown?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/01/15/a-simple-windows-communication-foundation-web-service/' rel='bookmark' title='Permanent Link: A simple Windows Communication Foundation Web Service'&gt;A simple Windows Communication Foundation Web Service&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/on8A35xKlSo" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2007/04/11/strings-in-net/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2007/04/11/strings-in-net/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2007/04/11/strings-in-net/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Anders Lybecker</name>
						<uri>http://www.lybecker.com/blog/</uri>
					</author>
		<title type="html"><![CDATA[Garbage Collection Flavors]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/AndersLybecker/~3/TF0ASBZ_2WQ/" />
		<id>http://www.lybecker.com/blog/2007/04/03/garbage-collection-flavors/</id>
		<updated>2009-04-12T07:21:05Z</updated>
		<published>2007-04-03T05:54:43Z</published>
		<category scheme="http://www.lybecker.com/blog" term=".Net" /><category scheme="http://www.lybecker.com/blog" term="Everyday coding" /><category scheme="http://www.lybecker.com/blog" term="dotNet" />		<summary type="html"><![CDATA[Why should you care about Garbage Collection? Well, it may very well improve performance for your applications.
The .Net framework garbage collector can operate in different modes depending on platform and requirements. There are three modes available for .Net framework version 2.0 and 3.0. Each of these modes is tailored for specific situations.
Concurrent Workstation Garbage Collection
This [...]


Related posts:<ol><li><a href='http://www.lybecker.com/blog/2008/03/18/32-bit-wcf-trouble/' rel='bookmark' title='Permanent Link: 32-bit WCF memory allocation trouble'>32-bit WCF memory allocation trouble</a></li>
<li><a href='http://www.lybecker.com/blog/2007/02/21/sql-server-open-world/' rel='bookmark' title='Permanent Link: SQL Server Open World'>SQL Server Open World</a></li>
</ol>]]></summary>
		<content type="html" xml:base="http://www.lybecker.com/blog/2007/04/03/garbage-collection-flavors/">&lt;p&gt;Why should you care about Garbage Collection? Well, it may very well improve performance for your applications.&lt;/p&gt;
&lt;p&gt;The .Net framework garbage collector can operate in different modes depending on platform and requirements. There are three modes available for .Net framework version 2.0 and 3.0. Each of these modes is tailored for specific situations.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Concurrent Workstation Garbage Collection&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This mode is optimized for interactivity by frequent short garbage collects. Each collect is split up into smaller pieces and are interleaved with the managed applications threads. This improves responsiveness at the cost of CPU cycles. This is ideal for interactive desktop applications where freezing application is an annoyance for the users and ideal CPU time is abundant when waiting for user input. Concurrent workstation mode improves the usability with &lt;a href="http://en.wikipedia.org/wiki/Perceived_performance"&gt;perceived performance&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Note that interactive GC only applies for Gen2 (full heap) collects because Gen0 and Gen1 collects are in nature very fast.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Non-concurrent Workstation Garbage Collection&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Non-concurrent workstation mode works by suspending managed application threads when a GC is initiated. It provides better throughput but might appear as application hiccups where everything freezes for the users.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Server Garbage Collection&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In server mode a managed heap and a dedicated garbage collector thread is created for each CPU. This means the each CPU allocates memory in its own heap therefore results in lock-free allocation. When a collect is initiated all the managed application threads are suspended and all the GC threads collect in parallel.&lt;br /&gt;
Another thing to note is that the size of the managed heap segments is larger in server mode than workstation mode. A segment is the unit of which the memory is allocated on the managed heap.&lt;/p&gt;
&lt;p&gt;It is possible to choose the type of GC for a managed application in the configuration file. Under the &amp;lt;Runtime&amp;gt; element add one of the below three settings and depending on the number of CPU, the garbage collector will run in the configured mode.&lt;img class="aligncenter size-full wp-image-302" title="Garbage Collection type settings" src="http://www.lybecker.com/blog/wp-content/uploads/gctypes.png" alt="Garbage Collection type settings" width="503" height="154" /&gt;&lt;/p&gt;
&lt;p&gt;Running a standalone managed application the GC mode is by default concurrent workstation. Managed application hosts like ASP.Net and SQLCLR run with Server GC by default.&lt;/p&gt;
&lt;p&gt;If you want to know more about how the GC works, read the blog entries &amp;#8220;Using GC Efficiently&amp;#8221;&lt;br /&gt;
by &lt;a href="http://blogs.msdn.com/maoni/"&gt;Maoni&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2008/03/18/32-bit-wcf-trouble/' rel='bookmark' title='Permanent Link: 32-bit WCF memory allocation trouble'&gt;32-bit WCF memory allocation trouble&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href='http://www.lybecker.com/blog/2007/02/21/sql-server-open-world/' rel='bookmark' title='Permanent Link: SQL Server Open World'&gt;SQL Server Open World&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/AndersLybecker/~4/TF0ASBZ_2WQ" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.lybecker.com/blog/2007/04/03/garbage-collection-flavors/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.lybecker.com/blog/2007/04/03/garbage-collection-flavors/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.lybecker.com/blog/2007/04/03/garbage-collection-flavors/</feedburner:origLink></entry>
	</feed><!-- Dynamic page generated in 11.570 seconds. --><!-- Cached page generated by WP-Super-Cache on 2010-03-10 19:45:29 -->
