<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>The random utterances of David Arno</title>
	<atom:link href="http://www.davidarno.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.davidarno.org</link>
	<description></description>
	<lastBuildDate>Wed, 22 May 2013 13:20:28 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Some thoughts on expanding SuccincT to provide richer interface contracts and auto-generated data classes</title>
		<link>http://www.davidarno.org/2013/05/22/some-thoughts-on-expanding-succinct-to-provide-richer-interface-contracts-and-auto-generated-data-classes/</link>
		<comments>http://www.davidarno.org/2013/05/22/some-thoughts-on-expanding-succinct-to-provide-richer-interface-contracts-and-auto-generated-data-classes/#comments</comments>
		<pubDate>Wed, 22 May 2013 13:20:28 +0000</pubDate>
		<dc:creator>David Arno</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[SuccincT]]></category>

		<guid isPermaLink="false">http://www.davidarno.org/?p=2467</guid>
		<description><![CDATA[Recently I created a very simple framework, SuccincT. At it&#8217;s core is the ISuccess&#60;T&#62; interface. As I explained in a previous post though, by itself that interface isn&#8217;t much use. C# lacks the ability to define constraints on an implementation of ISuccess&#60;T&#62;, save through comments. The idea behind it was that an implementation should throw [...]]]></description>
		<wfw:commentRss>http://www.davidarno.org/2013/05/22/some-thoughts-on-expanding-succinct-to-provide-richer-interface-contracts-and-auto-generated-data-classes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C# equality in depth. Part 1: Basic == equality</title>
		<link>http://www.davidarno.org/2013/05/17/c-equality-in-depth.-part-1-basic-equality/</link>
		<comments>http://www.davidarno.org/2013/05/17/c-equality-in-depth.-part-1-basic-equality/#comments</comments>
		<pubDate>Fri, 17 May 2013 13:14:08 +0000</pubDate>
		<dc:creator>David Arno</dc:creator>
				<category><![CDATA[C#]]></category>

		<guid isPermaLink="false">http://www.davidarno.org/?p=2444</guid>
		<description><![CDATA[Equality in C# is an odd beast. At first glance, it seems very simple. Value types are compared by by value, objects are compared by reference and the comparison method can be overridden by a class if it wants to. For example, the String class compares the string contents, rather than comparing by reference. There [...]]]></description>
		<wfw:commentRss>http://www.davidarno.org/2013/05/17/c-equality-in-depth.-part-1-basic-equality/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C# equality in depth. Part 2: .Equals() and == are not equal</title>
		<link>http://www.davidarno.org/2013/05/17/c-equality-in-depth.-part-2-.equals-and-are-not-equal/</link>
		<comments>http://www.davidarno.org/2013/05/17/c-equality-in-depth.-part-2-.equals-and-are-not-equal/#comments</comments>
		<pubDate>Fri, 17 May 2013 13:13:58 +0000</pubDate>
		<dc:creator>David Arno</dc:creator>
				<category><![CDATA[C#]]></category>

		<guid isPermaLink="false">http://www.davidarno.org/?p=2447</guid>
		<description><![CDATA[The two ways of checking for equality in C# &#8211; using == and .Equals() &#8211; can be modified for individual types. It is important to remember though that override and overload are two very different things in C#: .Equals() can be both overridden and overloaded, whereas == can only be overloaded. This set of tests [...]]]></description>
		<wfw:commentRss>http://www.davidarno.org/2013/05/17/c-equality-in-depth.-part-2-.equals-and-are-not-equal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C# equality in depth. Part 3: IEquatable</title>
		<link>http://www.davidarno.org/2013/05/17/c-equality-in-depth.-part-3-iequatable/</link>
		<comments>http://www.davidarno.org/2013/05/17/c-equality-in-depth.-part-3-iequatable/#comments</comments>
		<pubDate>Fri, 17 May 2013 13:13:21 +0000</pubDate>
		<dc:creator>David Arno</dc:creator>
				<category><![CDATA[C#]]></category>

		<guid isPermaLink="false">http://www.davidarno.org/?p=2452</guid>
		<description><![CDATA[With .NET 2.0, Microsoft introduced the IEquatable interface. It introduced a typesafe Equals() method that could be used to speed up comparisons in the new generic collections. It speeded up those comparisons by avoiding the need for casting and boxing, which the Object.Equals() suffered from. The IEquatable interface is a dangerous beast though as it [...]]]></description>
		<wfw:commentRss>http://www.davidarno.org/2013/05/17/c-equality-in-depth.-part-3-iequatable/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SuccincT &#8211; A .NET framework to solve unexceptional exceptions &amp; out parameter annoyances</title>
		<link>http://www.davidarno.org/2013/05/10/succinct-a-.net-framework-to-handle-unexceptional-exceptions-out-parameter-annoyances/</link>
		<comments>http://www.davidarno.org/2013/05/10/succinct-a-.net-framework-to-handle-unexceptional-exceptions-out-parameter-annoyances/#comments</comments>
		<pubDate>Fri, 10 May 2013 14:09:07 +0000</pubDate>
		<dc:creator>David Arno</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Frameworks]]></category>

		<guid isPermaLink="false">http://www.davidarno.org/?p=2432</guid>
		<description><![CDATA[The .NET framework is getting on a bit. Many users of the .NET framework are either resistant to API changes, or are stuck with binary-only 3rd party tools that would break with API changes. As a consequence of these two things, the .NET framework has aspects to it that go against modern thinking, but we [...]]]></description>
		<wfw:commentRss>http://www.davidarno.org/2013/05/10/succinct-a-.net-framework-to-handle-unexceptional-exceptions-out-parameter-annoyances/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Is Test Driven Development the only future for software development?</title>
		<link>http://www.davidarno.org/2013/04/15/is-test-driven-development-the-only-future-for-software-development/</link>
		<comments>http://www.davidarno.org/2013/04/15/is-test-driven-development-the-only-future-for-software-development/#comments</comments>
		<pubDate>Mon, 15 Apr 2013 12:25:43 +0000</pubDate>
		<dc:creator>David Arno</dc:creator>
				<category><![CDATA[Random stuff]]></category>

		<guid isPermaLink="false">http://www.davidarno.org/?p=2413</guid>
		<description><![CDATA[This blog post was inspired by a brief twitter conversation between myself and Mark Seeman on how, in the future, developers will likely just write tests and how the computer will generate the code to make those tests pass. In the beginning, there was the computer, and it was huge; but simplistic in its abilities. [...]]]></description>
		<wfw:commentRss>http://www.davidarno.org/2013/04/15/is-test-driven-development-the-only-future-for-software-development/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>QCon London 2013 &#8211; Day 2</title>
		<link>http://www.davidarno.org/2013/03/13/qcon-london-2013-day-2/</link>
		<comments>http://www.davidarno.org/2013/03/13/qcon-london-2013-day-2/#comments</comments>
		<pubDate>Wed, 13 Mar 2013 13:34:15 +0000</pubDate>
		<dc:creator>David Arno</dc:creator>
				<category><![CDATA[Conferences]]></category>

		<guid isPermaLink="false">http://www.davidarno.org/?p=2374</guid>
		<description><![CDATA[QCon is a large conference, with around six parallel tracks, offering talks on a range of subjects. Normally when visiting QCon, I skip between these tracks as the day progresses. That was certainly my plan for day 2 this year, but as the day progressed, I realised one track offered me a great opportunity to [...]]]></description>
		<wfw:commentRss>http://www.davidarno.org/2013/03/13/qcon-london-2013-day-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>QCon London 2013 &#8211; Day 1</title>
		<link>http://www.davidarno.org/2013/03/06/qcon-london-2013-day-1/</link>
		<comments>http://www.davidarno.org/2013/03/06/qcon-london-2013-day-1/#comments</comments>
		<pubDate>Wed, 06 Mar 2013 07:53:49 +0000</pubDate>
		<dc:creator>David Arno</dc:creator>
				<category><![CDATA[Conferences]]></category>

		<guid isPermaLink="false">http://www.davidarno.org/?p=2349</guid>
		<description><![CDATA[Last year, I missed QCon due to work commitments, but this year I&#8217;m back there again for three exhausting, but fun, days of high quality software education. But being there is only part of the story. The other side to the experience is the bizarre world of the London commuter. I&#8217;m a lucky soul, though [...]]]></description>
		<wfw:commentRss>http://www.davidarno.org/2013/03/06/qcon-london-2013-day-1/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How Lapsang avoids two common forms of explicit casting</title>
		<link>http://www.davidarno.org/2013/02/25/how-lapsang-avoids-two-common-forms-of-explicit-casting/</link>
		<comments>http://www.davidarno.org/2013/02/25/how-lapsang-avoids-two-common-forms-of-explicit-casting/#comments</comments>
		<pubDate>Mon, 25 Feb 2013 12:39:40 +0000</pubDate>
		<dc:creator>David Arno</dc:creator>
				<category><![CDATA[Lapsang]]></category>

		<guid isPermaLink="false">http://www.davidarno.org/?p=2329</guid>
		<description><![CDATA[I have recently been working on how Lapsang might support both static and dynamic composition. In the process of thinking about these topics though, I&#8217;ve come to realise what mammoth topics they are. For example, in OO languages, we take for granted that there is a base class &#8211; often Object &#8211; that can define [...]]]></description>
		<wfw:commentRss>http://www.davidarno.org/2013/02/25/how-lapsang-avoids-two-common-forms-of-explicit-casting/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Why we absolutely should never build software like we build houses</title>
		<link>http://www.davidarno.org/2013/01/28/why-we-absolutely-should-never-build-software-like-we-build-houses/</link>
		<comments>http://www.davidarno.org/2013/01/28/why-we-absolutely-should-never-build-software-like-we-build-houses/#comments</comments>
		<pubDate>Mon, 28 Jan 2013 12:31:08 +0000</pubDate>
		<dc:creator>David Arno</dc:creator>
				<category><![CDATA[Software craftmanship]]></category>
		<category><![CDATA[Software Engineering]]></category>

		<guid isPermaLink="false">http://www.davidarno.org/?p=2302</guid>
		<description><![CDATA[A few days ago, I read something truly depressing. It was a piece written by Leslie Lamport, &#8220;a computer scientist &#8230; member of the National Academy of Engineering and the National Academy of Sciences. [with a] Ph.D. and M.A. in mathematics from Brandeis University and B.S. from MIT [and he] works at Microsoft Research.&#8221; Yet [...]]]></description>
		<wfw:commentRss>http://www.davidarno.org/2013/01/28/why-we-absolutely-should-never-build-software-like-we-build-houses/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>
