<?xml version="1.0" encoding="UTF-8"?><!-- generator="WordPress/2.9.2" -->
<rss version="0.92">
<channel>
	<title>Wrong.net</title>
	<link>http://www.wrong.net</link>
	<description>Game development done right</description>
	<lastBuildDate>Sun, 14 Feb 2010 14:26:45 +0000</lastBuildDate>
	<docs>http://backend.userland.com/rss092</docs>
	<language>en</language>
	
	<item>
		<title>All programs should be compilers</title>
		<description><![CDATA[Been reading Steve Yegge&#8217;s stuff.  He&#8217;s smart.  You want him working for you.
This post reminded me of Rob&#8217;s Grand Theory of Good Object Oriented Programming (I&#8217;m the Rob in question, BTW).
If you&#8217;re asking what the hell compilers have to do with object oriented programming, read on.
Fundamentally, what a compiler does is transform data.  Each phase [...]]]></description>
		<link>http://www.wrong.net/2010/02/14/all-programs-should-be-compilers/</link>
			</item>
	<item>
		<title>Why Use Cases Rock</title>
		<description><![CDATA[Typical agile-style use cases rock.  Really.
There&#8217;s a pretty common pattern for them, so common that it&#8217;s a part of the whole Behavior-Driven Development idea.  It&#8217;s just:  &#8220;As &#60;role&#62;, I want &#60;feature&#62; so that &#60;benefit&#62;.&#8221;
A lot of people seem to think that this is overly simplistic.  I respectfully disagree.  What this simple format does is tell [...]]]></description>
		<link>http://www.wrong.net/2010/02/08/why-use-cases-rock/</link>
			</item>
	<item>
		<title>Ranking vs. Prioritizing</title>
		<description><![CDATA[Just finished writing up a list of some &#8217;stuff&#8217; for work (what it was is totally unimportant).  Part of this list included prioritization of the items, and for a first pass I went for three priorities, P1, P2, P3.
After writing the list, I noticed that, as typical for prioritization systems, I ended up with a [...]]]></description>
		<link>http://www.wrong.net/2009/07/16/ranking-vs-prioritizing/</link>
			</item>
	<item>
		<title>Robustness</title>
		<description><![CDATA[ 
Robustness is one of those things that we can chase forever.  Many developers think that “robustness” means never crashing.  A more experienced developer will realize that there are many, many things worse than crashing.  Continuing to run while in an invalid state is a much worse option, as it opens up the possibility of corrupted [...]]]></description>
		<link>http://www.wrong.net/2009/06/19/robustness/</link>
			</item>
	<item>
		<title>How difficult is it to change your code?</title>
		<description><![CDATA[Change happens.&#160; We’re not perfect.&#160; We don’t know everything.&#160; We invariably learn something about the project we’re doing while we’re doing it.
So, code that can easily be changed is better than code that can’t be changed.&#160; But how do we know how easy it is to change code?

Difficulty of changing code is best measured at [...]]]></description>
		<link>http://www.wrong.net/2009/06/12/how-difficult-is-it-to-change-your-code/</link>
			</item>
	<item>
		<title>Checked Exceptions</title>
		<description><![CDATA[Interview with Anders Hejlsberg
This seems to be somewhat of a controversial subject.
On the one hand, we have Java, which forces exceptions to be caught and potentially rethrown.&#160; This is, certainly, something of a pain.
On the other hand, C# doesn’t require anything, and any method can potentially throw any kind of exception.
I can see the points [...]]]></description>
		<link>http://www.wrong.net/2009/06/09/checked-exceptions/</link>
			</item>
	<item>
		<title>&#8220;Big Design&#8221; Up Front vs. Big &#8220;Design Up Front&#8221;</title>
		<description><![CDATA[Design is always a touchy subject.  There are those who believe everything should be designed out beforehand, and those who believe you should design as you go.
I&#8217;m pretty firmly in the latter camp, as I&#8217;ve never seen the former plan actually work.  But, there&#8217;s a few caveats to that.
I don&#8217;t believe in the idea of [...]]]></description>
		<link>http://www.wrong.net/2009/05/14/big-design-up-front-vs-big-design-up-front/</link>
			</item>
	<item>
		<title>Letting go</title>
		<description><![CDATA[One of the hardest things in development is learning to let go.  It&#8217;s something most developers fall victim to &#8211; you get some idea for a system that will simply fix ALL of the problems, walk the car, and wash the dog!
And then you find some use case that your system doesn&#8217;t quite cover.  So [...]]]></description>
		<link>http://www.wrong.net/2009/04/06/letting-go/</link>
			</item>
	<item>
		<title>Can you know this?</title>
		<description><![CDATA[One of the questions I like to ask when designing software is simple &#8211; &#8220;can I know this?&#8221;
For instance, when dealing with data across a network, you might decide that you need to know that your local copy of the data is up-to-date before you reduce a particular value by 5.  So the question, in [...]]]></description>
		<link>http://www.wrong.net/2009/01/29/can-you-know-this/</link>
			</item>
	<item>
		<title>Occam&#8217;s Razor</title>
		<description><![CDATA[While most people quote Occam&#8217;s Razor as &#8220;the simplest thing is most likely correct,&#8221; the actual quote is &#8220;do not multiply entities needlessly.&#8221;
I&#8217;m not sure that this is good programming advice.  I do, however, think it&#8217;s an accurate description of how most developers behave.  Typically, a developer will create as few discrete entities as possible.  [...]]]></description>
		<link>http://www.wrong.net/2009/01/29/occams-razor/</link>
			</item>
</channel>
</rss>
